CLEAN_HOME?=/opt/clean
CLM:=clm
-CLMFLAGS+=-dynamics -l -no-pie -h 200M -t -nt
+override CLMFLAGS+=-dynamics -h 200M -nt -l -no-pie
CLMLIBS:=\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Patches/Dynamics\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Patches/Generics\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Patches/StdEnv\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Patches/TCPIP\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Server\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Dependencies/clean-platform/src/libraries/OS-Independent\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Dependencies/clean-platform/src/libraries/OS-Independent/Deprecated/StdLib\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Dependencies/clean-platform/src/libraries/OS-Posix\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Dependencies/clean-platform/src/libraries/OS-Linux\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Dependencies/clean-platform/src/libraries/OS-Linux-64\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Dependencies/graph_copy/linux64\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Dependencies/graph_copy/common\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Dependencies/SAPL\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Dependencies/clean-sapl/src\
- -I $(CLEAN_HOME)/lib/iTasks-SDK/Server/lib\
+ -I $(CLEAN_HOME)/lib/Platform\
+ -I $(CLEAN_HOME)/lib/Platform/Deprecated/StdLib\
+ -I $(CLEAN_HOME)/lib/iTasks\
+ -I $(CLEAN_HOME)/lib/GraphCopy\
+ -I $(CLEAN_HOME)/lib/Sapl\
-I $(CLEAN_HOME)/lib/StdEnv\
-I $(CLEAN_HOME)/lib/Generics\
-I $(CLEAN_HOME)/lib/Dynamics\
-I $(CLEAN_HOME)/lib/TCPIP\
-I ./CleanSerial
-all: mTaskExamples
+BINARIES:= miTask #mTaskExamples mTaskInterpret miTask
-%: %.icl
+all: CleanSerial/Clean\ System\ Files/TTY.o $(BINARIES) int/mTaskSymbols.h
+
+CleanSerial/Clean\ System\ Files/TTY.o:
+ make -C CleanSerial
+
+int/mTaskSymbols.h: mTaskMakeSymbols
+ ./$< -nr > $@
+
+%: %.icl $(wildcard *.[id]cl)
$(CLM) $(CLMLIBS) $(CLMFLAGS) $(basename $<) -o $@
+ mkdir -p $(basename $<)-www
+ find $(CLEAN_HOME)/lib -path '*/WebPublic/*' -execdir \
+ cp -nR {} "$$PWD"/$(basename $<)-www/ \;
clean:
- $(RM) -r mTaskExamples Clean\ System\ Files
+ $(RM) -r $(BINARIES) Clean\ System\ Files miTask-data miTask-www
+ make -C CleanSerial clean