Fix: Add --no-as-needed to the demo example's Makefile
[lttng-ust.git] / doc / examples / demo / Makefile
index 0c829da965c39a3209237655e4a78476cc14656b..d55a1b19ce6afbb48cea0273325e445a1f36e629 100644 (file)
 CC = gcc
 LIBS = -ldl    # On Linux
 #LIBS = -lc    # On BSD
-CFLAGS += -I.
+LOCAL_CPPFLAGS += -I.
 
 # Only necessary when building from the source tree and lttng-ust is not
 # installed
 ifdef BUILD_EXAMPLES_FROM_TREE
-CFLAGS += -I../../../include/
+LOCAL_CPPFLAGS += -I../../../include/
 LIBLTTNG_UST_PATH = ../../../liblttng-ust/.libs/
-LDFLAGS += -L$(LIBLTTNG_UST_PATH) -Wl,-rpath='$$ORIGIN/$(LIBLTTNG_UST_PATH)'
+override LDFLAGS += -L$(LIBLTTNG_UST_PATH) -Wl,-rpath='$$ORIGIN/$(LIBLTTNG_UST_PATH)'
 
 # Third-party Makefiles have to define these targets to integrate with an
 # automake project
@@ -36,23 +36,26 @@ endif
 
 all: demo lttng-ust-provider-ust-tests-demo.so lttng-ust-provider-ust-tests-demo3.so
 
-lttng-ust-provider-ust-tests-demo.o: tp.c tp2.c ust_tests_demo.h ust_tests_demo2.h
-       $(CC) $(CFLAGS) -fpic -c -o $@ $<
+tp.o: tp.c ust_tests_demo.h
+       $(CC) $(CPPFLAGS) $(LOCAL_CPPFLAGS) $(CFLAGS) -fpic -c -o $@ $<
 
-lttng-ust-provider-ust-tests-demo.so: lttng-ust-provider-ust-tests-demo.o
-       $(CC) -shared -o $@ $(LDFLAGS) -llttng-ust $<
+tp2.o: tp2.c ust_tests_demo2.h
+       $(CC) $(CPPFLAGS) $(LOCAL_CPPFLAGS) $(CFLAGS) -fpic -c -o $@ $<
 
-lttng-ust-provider-ust-tests-demo3.o: tp3.c ust_tests_demo3.h
-       $(CC) $(CFLAGS) -fpic -c -o $@ $<
+lttng-ust-provider-ust-tests-demo.so: tp.o tp2.o
+       $(CC) -shared -Wl,--no-as-needed -o $@ $(LDFLAGS) -llttng-ust $^
 
-lttng-ust-provider-ust-tests-demo3.so: lttng-ust-provider-ust-tests-demo3.o
-       $(CC) -shared -o $@ $(LDFLAGS) -llttng-ust $<
+tp3.o: tp3.c ust_tests_demo3.h
+       $(CC) $(CPPFLAGS) $(LOCAL_CPPFLAGS) $(CFLAGS) -fpic -c -o $@ $<
+
+lttng-ust-provider-ust-tests-demo3.so: tp3.o
+       $(CC) -shared -Wl,--no-as-needed -o $@ $(LDFLAGS) -llttng-ust $^
 
 demo.o: demo.c
-       $(CC) $(CFLAGS) -c -o $@ $<
+       $(CC) $(CPPFLAGS) $(LOCAL_CPPFLAGS) $(CFLAGS) -c -o $@ $<
 
 demo: demo.o
-       $(CC) demo.o -o $@ $(LIBS)
+       $(CC) -o $@ $^ $(LIBS)
 
 .PHONY: clean
 clean:
This page took 0.023989 seconds and 4 git commands to generate.