X-Git-Url: https://git.piment-noir.org/?p=TD_C.git;a=blobdiff_plain;f=TP_11%2Fexo1%2FMakefile;h=d287ee24f6754405c474aa6089686fe006cc09ab;hp=6f138af0bfe5368352baf015e4962e56551dea48;hb=bfccd5920e3d878c33165ebac69b9713c2700028;hpb=824b6c414b62598f2fc141d39f3ae95a4730c5da diff --git a/TP_11/exo1/Makefile b/TP_11/exo1/Makefile index 6f138af..d287ee2 100644 --- a/TP_11/exo1/Makefile +++ b/TP_11/exo1/Makefile @@ -20,7 +20,7 @@ BUILD_TYPE=debug # DO NOT CHANGE STUFF BEYOND THIS LINE # ==================================== -all: $(LIBRARY_NAME).a $(BINARY_NAME) +all: $(LIBRARY_NAME).a $(LIBRARY_NAME).so $(BINARY_NAME) CC=gcc LD=gcc @@ -41,7 +41,8 @@ STRIP_FLAG = -s OPTIFLAG = -O3 endif -CFLAGS := $(CFLAGS) $(WARN_FLAGS) $(STD_FLAG) $(OPTI_FLAG) $(DEBUG_FLAG) +#FIXME: Add a way to better control the library build +CFLAGS := -fPIC $(CFLAGS) $(WARN_FLAGS) $(STD_FLAG) $(OPTI_FLAG) $(DEBUG_FLAG) LDFLAGS := $(LDFLAGS) $(STRIP_FLAG) LIBLDFLAGS := -shared $(LDFLAGS) @@ -57,17 +58,17 @@ $(shell mkdir -p $(DEPDIR)) DEPFLAGS = -MT $@ -MMD -MP -MF $(DEPDIR)/$*.Td POSTCOMPILE = mv -f $(DEPDIR)/$*.Td $(DEPDIR)/$*.d -$(BINARY_NAME): $(OBJS) - @echo "[LD ] $@" - @$(LD) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@ +$(LIBRARY_NAME).a: $(OBJSLIB) + @echo "[AR StO] $@" + @$(AR) rcs $@ $^ -$(LIBRARY_NAME).so: $(OBJSLIB) $(BINARY_NAME) +$(LIBRARY_NAME).so: $(OBJSLIB) @echo "[LD ShO] $@" - @$(LD) $(CFLAGS) $(LDLIBFLAGS) $^ $(LDLIBS) -o $@ + @$(LD) $(CFLAGS) $(LIBLDFLAGS) $^ -o $@ -$(LIBRARY_NAME).a: $(OBJS) - @echo "[AR StO] $@" - @$(AR) rcs $@ $^ +$(BINARY_NAME): $(OBJS) + @echo "[LD ] $@" + @$(LD) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@ $(OBJDIR)/%.o: %.c $(DEPDIR)/%.d @echo "[C ] $*"