X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=Makefile.am;h=de22e0d84021d2aedff6300ab3a1fc9024f5d40f;hb=d6322067aa791234d0d81e1a6b03b445635d5f65;hp=1ab59487cc26af608819e12ee2fe1e3a3a7ca2f6;hpb=93d0f2eaff675059588e958e3de74a1bb7dd4028;p=ust.git diff --git a/Makefile.am b/Makefile.am index 1ab5948..de22e0d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,7 +1,24 @@ ACLOCAL_AMFLAGS = -I m4 -SUBDIRS = libust tests libmallocwrap ustd ustctl libinterfork include -EXTRA_DIST = doc share/kernelcompat.h share/share.h share/usterr.h +# The order here is tricky. SUBDIRS applies both to compilation and +# installation. Programs depending on the libs must be built after +# libust and '.' (that contains the linker script). However, '.' +# must be installed after libust so it can overwrite libust.so with +# the linker script. +SUBDIRS = snprintf libust . tests libmallocwrap ustd ustctl libinterfork include + +EXTRA_DIST = doc libust.ldscript.in libust-initializer.c dist_bin_SCRIPTS = usttrace -include_HEADERS = share/kernelcompat.h share/usterr.h +ldscriptsdir = $(libdir) +ldscripts_DATA = libust.so libust-initializer.o + +CLEANFILES = $(ldscripts_DATA) ./tests/libust-initializer.Po + +libust.so: libust.ldscript.in + $(SED) -e "s@\@FORMAT\@@$(LIBFORMAT)@" < $< > $@ + +# It is very important to compile the initializer with PIC otherwise we +# may get obscure errors when linking to shared libraries. +libust-initializer.o: libust-initializer.c + $(CC) $(CFLAGS) -fPIC -c -I$(top_srcdir)/include -o $@ $<