1 ifeq ($(PLATFORM), MARTE_OS)
10 CFLAGS += -D$(PLATFORM) \
11 -I$(FOSA_PATH)/include
13 # This prevents mgcc from removing the debug information (stripping)
16 ifeq ($(PLATFORM), MARTE_OS)
17 CFLAGS += -I$(FOSA_PATH)/marte_non_local_jump
22 @exec echo -e "\nPlease introduce a target, i.e: 'make test'";
24 %.exe: %.c $(FOSA_PATH)/lib/libfosa_$(PLATFORM).a
25 @exec echo -e "\n>> Building $@: ";
27 $(CC) $(LDFLAGS) -L$(FOSA_PATH)/lib $(patsubst %.c,%.o,$<) -lfosa_$(PLATFORM) -lm -o $@
30 %.o: %.c $(LIBFOSA_SRCS) $(LIBFOSA_HDRS)
33 libfosa: $(FOSA_PATH)/lib/libfosa_$(PLATFORM).a
35 $(FOSA_PATH)/lib/libfosa_$(PLATFORM).a:
36 @exec echo -e "\n>> Compiling FOSA library (lib/libfosa_$(PLATFORM).a):";
37 @make -C $(FOSA_PATH)/src_marte all # Should be src_$(PLATFORM)
38 ar -rc libfosa_$(PLATFORM).a $(FOSA_PATH)/src_marte/*.o
39 @mv libfosa_$(PLATFORM).a $(FOSA_PATH)/lib/
43 $(FOSA_PATH)/marte_non_local_jump/non_local_jump.o:
44 make -C $(FOSA_PATH)/marte_non_local_jump
48 @exec echo -e "\n>> Cleaning... ";
49 @find \( -name '*.[oa]' -or -name '*~*' -or -name 'libfosa.a' \
50 -or -name '*.ali' -or -name 'b~*' \
51 -or -name '*.exe' -or -name 'mprogram' -or -name 'a.out' \) -print -delete
54 .PHONY: none libfosa clean all