Fix a typo in the GCC Makefile flags
[TD_C.git] / TP_11 / exo1 / Makefile
index d287ee24f6754405c474aa6089686fe006cc09ab..9720be926569b89296e9640307879e1cbe4b2fa8 100644 (file)
 BINARY_NAME=exo1
 LIBOBJS=clist.o # object to put in the library
 LIBRARY_NAME=libtpC
+#LDLIBS=-L. -ltpC
 BUILD_TYPE=debug
 
 # ====================================
 # DO NOT CHANGE STUFF BEYOND THIS LINE
 # ====================================
 
-all: $(LIBRARY_NAME).a $(LIBRARY_NAME).so $(BINARY_NAME)
+all: $(BINARY_NAME) $(BINARY_NAME).dynamic $(BINARY_NAME).staticlocal
 
 CC=gcc
 LD=gcc
@@ -38,7 +39,7 @@ else
 BUILDDIR := .build/release
 DEBUG_FLAG =
 STRIP_FLAG = -s
-OPTIFLAG = -O3
+OPTI_FLAG = -O3
 endif
 
 #FIXME: Add a way to better control the library build
@@ -64,12 +65,21 @@ $(LIBRARY_NAME).a: $(OBJSLIB)
 
 $(LIBRARY_NAME).so: $(OBJSLIB)
        @echo "[LD ShO] $@"
-       @$(LD) $(CFLAGS) $(LIBLDFLAGS) $^ -o $@
+       @$(LD) $(CFLAGS) $(LIBLDFLAGS) $^ $(LDLIBS) -o $@
 
 $(BINARY_NAME): $(OBJS)
        @echo "[LD ] $@"
        @$(LD) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@
 
+LOCALLDLIBS=-L. -ltpC
+$(BINARY_NAME).staticlocal: $(OBJDIR)/$(BINARY_NAME).o $(LIBRARY_NAME).a
+       @echo "[LD ] $@"
+       @$(LD) $(CFLAGS) $(LDFLAGS) $^ $(LOCALLDLIBS) $(LDLIBS) -o $@
+
+$(BINARY_NAME).dynamic: $(OBJDIR)/$(BINARY_NAME).o $(LIBRARY_NAME).so
+       @echo "[LD ] $@"
+       @$(LD) $(CFLAGS) $(LDFLAGS) $^ $(LOCALLDLIBS) $(LDLIBS) -o $@
+
 $(OBJDIR)/%.o: %.c $(DEPDIR)/%.d
        @echo "[C  ] $*"
        @$(CC) $(DEPFLAGS) $(CFLAGS) -c $< -o $@
@@ -85,6 +95,8 @@ clean:
        @echo "[CLN]"
        -@rm -r $(BUILDDIR)
        -@rm $(BINARY_NAME)
+       -@rm $(BINARY_NAME).staticlocal
+       -@rm $(BINARY_NAME).dynamic
        -@rm $(LIBRARY_NAME).so
        -@rm $(LIBRARY_NAME).a