Files

46 lines
1.9 KiB
Makefile

CXX:=kos32-g++
CC:=kos32-gcc
LD:=kos32-ld
SDK_DIR:=/home/pt/dev/kolibri/latest/contrib/sdk
CXXFLAGS:=-c -fno-ident -O2 -std=c++14 -fomit-frame-pointer -U__WIN32__ -U_Win32 -U_WIN32 -U__MINGW32__ -UWIN32 -Wno-pointer-arith -Wall
CFLAGS:=-c -fno-ident -O2 -std=c99 -fomit-frame-pointer -U__WIN32__ -U_Win32 -U_WIN32 -U__MINGW32__ -UWIN32 -Wno-pointer-arith
INCLUDE:=-I $(SDK_DIR)/sources/newlib/libc/include -I $(SDK_DIR)/sources/libstdc++-v3/include -I /usr/local/kos32/lib/gcc/mingw32/5.4.0/include/c++/experimental -I.
LDFLAGS:=-static -S -Tapp-dynamic.lds --image-base 0
LIBPATH:=-L $(SDK_DIR)/lib -L /usr/local/kos32/lib
all: compile link make_iso
compile:
$(CXX) $(CXXFLAGS) $(INCLUDE) -o ASBeautifier.o ASBeautifier.cpp
$(CXX) $(CXXFLAGS) $(INCLUDE) -o ASEnhancer.o ASEnhancer.cpp
$(CXX) $(CXXFLAGS) $(INCLUDE) -o ASFormatter.o ASFormatter.cpp
$(CXX) $(CXXFLAGS) $(INCLUDE) -o ASLocalizer.o ASLocalizer.cpp
$(CXX) $(CXXFLAGS) $(INCLUDE) -o ASResource.o ASResource.cpp
$(CXX) $(CXXFLAGS) $(INCLUDE) -o astyle_main.o astyle_main.cpp
$(CXX) $(CXXFLAGS) $(INCLUDE) -o filesystem.o filesystem.cpp
$(CC) $(CFLAGS) $(INCLUDE) -o opendir.o $(SDK_DIR)/sources/newlib/libc/posix/opendir.c
$(CC) $(CFLAGS) $(INCLUDE) -o readdir.o $(SDK_DIR)/sources/newlib/libc/posix/readdir.c
$(CC) $(CFLAGS) $(INCLUDE) -o closedir.o $(SDK_DIR)/sources/newlib/libc/posix/closedir.c
clean:
rm -vf *.o app.iso astyle
link:
$(LD) $(LDFLAGS) $(LIBPATH) \
ASBeautifier.o \
ASEnhancer.o \
ASFormatter.o \
ASLocalizer.o \
ASResource.o \
astyle_main.o \
filesystem.o \
opendir.o \
closedir.o \
readdir.o -o astyle -lstdc++ -lsupc++ -lgcc -lc.dll /usr/local/kos32/sdk/lib/libstdc++.a
kos32-strip -s astyle -o astyle
kos32-objcopy astyle -O binary
make_iso:
mkisofs -appid KolibriTestApp -volid KolibriTestApp -XA -sysid KOLIBRI -publisher pvoid -volset-size 1 -volset-seqno 1 -iso-level 3 -J -o app.iso astyle