]> rtime.felk.cvut.cz Git - frescor/fosa.git/blobdiff - rules.mk
finishing renaming thread_group to thread_set
[frescor/fosa.git] / rules.mk
index 135fc97837896d3cad99bd4117b88905357841e6..4018569e2fb8a790e7d9ef254e405d72173c2b05 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -6,6 +6,18 @@ else
        LD = ld
 endif
 
+LOWCASE_PLATFORM := $(shell echo $(PLATFORM) | tr "A-Z" "a-z")
+
+CFLAGS += -D$(PLATFORM) \
+        -I$(FOSA_PATH)/include -fno-strict-aliasing
+
+# This prevents mgcc from removing the debug information (stripping)
+LDFLAGS += -g
+
+ifeq ($(PLATFORM), MARTE_OS)
+       CFLAGS += -I$(FOSA_PATH)/marte_non_local_jump
+endif
+
 
 none:
        @exec echo -e "\nPlease introduce a target, i.e: 'make test'";
@@ -13,7 +25,7 @@ none:
 %.exe: %.c $(FOSA_PATH)/lib/libfosa_$(PLATFORM).a
        @exec echo -e "\n>> Building $@: ";
        $(CC) -c $(CFLAGS) $< 
-       $(CC) -L$(FOSA_PATH)/lib $(patsubst %.c,%.o,$<) -lfosa_$(PLATFORM) -lm -o $@
+       $(CC) $(LDFLAGS)  -L$(FOSA_PATH)/lib $(patsubst %.c,%.o,$<) -lfosa_$(PLATFORM) -lm -o $@
        @exec echo ">> [OK]";
 
 %.o: %.c $(LIBFOSA_SRCS) $(LIBFOSA_HDRS)
@@ -23,8 +35,8 @@ libfosa: $(FOSA_PATH)/lib/libfosa_$(PLATFORM).a
 
 $(FOSA_PATH)/lib/libfosa_$(PLATFORM).a:
        @exec echo -e "\n>> Compiling FOSA library (lib/libfosa_$(PLATFORM).a):";
-       @make -C $(FOSA_PATH)/src_marte all # Should be src_$(PLATFORM)
-       ar -rc libfosa_$(PLATFORM).a $(FOSA_PATH)/src_marte/*.o
+       @make -C $(FOSA_PATH)/src_$(LOWCASE_PLATFORM) all # Should be src_$(PLATFORM)
+       ar -rc libfosa_$(PLATFORM).a $(FOSA_PATH)/src_$(LOWCASE_PLATFORM)/*.o
        @mv libfosa_$(PLATFORM).a $(FOSA_PATH)/lib/
        @exec echo ">> [OK]"