From mboxrd@z Thu Jan 1 00:00:00 1970 From: benjamin.poirier@polymtl.ca (Benjamin Poirier) Date: Mon, 10 Aug 2009 16:38:06 -0400 Subject: [ltt-dev] [PATCH 2/4] lttv: Clean up library handling in the build system Message-ID: <4A80852E.50104@polymtl.ca> Take advantage of some more autoconf macros Use LDADD instead of modifying LIBS through automake Do not link each loadable module against lttvwindow ("Warning: Linking the shared library [...] against the loadable module liblttvwindow.so is not portable!") Signed-off-by: Benjamin Poirier --- configure.in | 18 ++++++++++-------- ltt/Makefile.am | 2 -- lttv/lttv/Makefile.am | 5 +---- lttv/lttv/lttv-gui.sh | 2 +- lttv/modules/gui/common.am | 4 ---- lttv/modules/gui/lttvwindow/lttvwindow/Makefile.am | 2 -- lttv/modules/gui/tracecontrol/Makefile.am | 2 +- lttv/modules/text/Makefile.am | 2 -- runlttv | 12 +++++++++++- 9 files changed, 24 insertions(+), 25 deletions(-) diff --git a/configure.in b/configure.in index 89acdb3..926c014 100644 --- a/configure.in +++ b/configure.in @@ -42,12 +42,11 @@ AC_PROG_CC AC_CHECK_LIB([popt], [poptGetNextOpt], POPT_LIBS="-lpopt",AC_MSG_ERROR([libpopt is required in order to compile LinuxTraceToolkit]) ) #AC_CHECK_LIB([m], [round], M_LIBS="-lm",AC_MSG_ERROR([Mathematical libraries are missing.]) ) -AC_CHECK_LIB([util], [forkpty], UTIL_LIBS="-lutil", AC_MSG_ERROR([libutil is -required in order to compile LinuxTraceToolkit])) +AC_CHECK_LIB([util], [forkpty], UTIL_LIBS="-lutil", AC_MSG_ERROR([libutil is required in order to compile LinuxTraceToolkit])) # pthread for gdb with dlopen(). -AC_CHECK_LIB(pthread, pthread_join,[THREAD_LIBS="-lpthread"], AC_MSG_ERROR([LinuxThreads is required in order to make sure gdb works fine with lttv-gui])) +AC_CHECK_LIB(pthread, pthread_join, [], AC_MSG_ERROR([LinuxThreads is required in order to make sure gdb works fine with lttv-gui])) # Checks for header files. AC_HEADER_STDC @@ -59,9 +58,13 @@ AM_PROG_CC_STDC AC_HEADER_STDC pkg_modules="gtk+-2.0 >= 2.0.0" -PKG_CHECK_MODULES(PACKAGE, [$pkg_modules]) +PKG_CHECK_MODULES(GTK, [$pkg_modules]) -PACKAGE_CFLAGS="$PACKAGE_CFLAGS -Wall -Wformat" +pkg_modules="gobject-2.0 >= 2.0.0" +PKG_CHECK_MODULES(GOBJECT, [$pkg_modules]) + +LIBS="$LIBS $GTK_LIBS $GOBJECT_LIBS" +PACKAGE_CFLAGS="$GTK_CFLAGS $GOBJECT_CFLAGS -Wall -Wformat" MODULE_CFLAGS="$PACKAGE_CFLAGS -fvisibility=hidden" MODULE_LDFLAGS="-module -avoid-version" AC_SUBST([PACKAGE_CFLAGS]) @@ -98,9 +101,8 @@ lttvincludedir="${includedir}/lttv" lttvwindowincludedir="${includedir}/lttvwindow" lttctlincludedir="${includedir}/liblttctl" -AC_SUBST(POPT_LIBS) -AC_SUBST(UTIL_LIBS) -AC_SUBST(THREAD_LIBS) +AC_SUBST([POPT_LIBS]) +AC_SUBST([UTIL_LIBS]) AC_SUBST(lttvlibdir) AC_SUBST(lttvplugindir) #AC_SUBST(lttlibdir) diff --git a/ltt/Makefile.am b/ltt/Makefile.am index aab53f9..2850f4d 100644 --- a/ltt/Makefile.am +++ b/ltt/Makefile.am @@ -7,8 +7,6 @@ #libdir = ${lttlibdir} AM_CFLAGS = $(PACKAGE_CFLAGS) -LIBS += $(GLIB_LIBS) -LIBS += $(THREAD_LIBS) lib_LTLIBRARIES = liblttvtraceread.la liblttvtraceread_la_SOURCES = tracefile.c marker.c event.c diff --git a/lttv/lttv/Makefile.am b/lttv/lttv/Makefile.am index 24caa31..944d598 100644 --- a/lttv/lttv/Makefile.am +++ b/lttv/lttv/Makefile.am @@ -1,8 +1,5 @@ AM_CFLAGS= $(PACKAGE_CFLAGS) - -LIBS += $(THREAD_LIBS) -LIBS += $(POPT_LIBS) $(GLIB_LIBS) -lgobject-2.0 -L${top_builddir}/ltt\ - -llttvtraceread +LDADD = $(POPT_LIBS) ${top_builddir}/ltt/liblttvtraceread.la bin_PROGRAMS = lttv.real diff --git a/lttv/lttv/lttv-gui.sh b/lttv/lttv/lttv-gui.sh index 2de28de..717f15e 100644 --- a/lttv/lttv/lttv-gui.sh +++ b/lttv/lttv/lttv-gui.sh @@ -5,6 +5,6 @@ LTTV_CMD=`echo $0 | sed 's/-gui$//'` -$LTTV_CMD.real -m guievents -m guifilter -m guicontrolflow -m resourceview \ +$LTTV_CMD.real -m lttvwindow -m guievents -m guifilter -m guicontrolflow -m resourceview \ -m guistatistics -m guitracecontrol $* diff --git a/lttv/modules/gui/common.am b/lttv/modules/gui/common.am index a0fda89..ce50113 100644 --- a/lttv/modules/gui/common.am +++ b/lttv/modules/gui/common.am @@ -17,11 +17,7 @@ # MA 02111-1307, USA. AM_CFLAGS = $(MODULE_CFLAGS) -AM_CFLAGS += $(GTK_CFLAGS) AM_LDFLAGS = $(MODULE_LDFLAGS) -LIBS += $(GLIB_LIBS) -LIBS += $(THREAD_LIBS) -LIBS += $(GTK_LIBS) -L${top_builddir}/lttv/modules/gui/lttvwindow/lttvwindow -llttvwindow libdir = ${lttvplugindir} diff --git a/lttv/modules/gui/lttvwindow/lttvwindow/Makefile.am b/lttv/modules/gui/lttvwindow/lttvwindow/Makefile.am index ddccc4c..00e4177 100644 --- a/lttv/modules/gui/lttvwindow/lttvwindow/Makefile.am +++ b/lttv/modules/gui/lttvwindow/lttvwindow/Makefile.am @@ -39,5 +39,3 @@ lttvwindowinclude_HEADERS = \ lttv_plugin_tab.h \ lttv_plugin.h -liblttvwindow_la_LIBADD = $(INTLLIBS) - diff --git a/lttv/modules/gui/tracecontrol/Makefile.am b/lttv/modules/gui/tracecontrol/Makefile.am index 2865e69..27b1fde 100644 --- a/lttv/modules/gui/tracecontrol/Makefile.am +++ b/lttv/modules/gui/tracecontrol/Makefile.am @@ -7,10 +7,10 @@ include ../common.am AM_CFLAGS += -DPACKAGE_DATA_DIR=\""$(datadir)"\" -DPACKAGE_BIN_DIR=\""$(bindir)"\" -LIBS += $(UTIL_LIBS) lib_LTLIBRARIES = libguitracecontrol.la libguitracecontrol_la_SOURCES = tracecontrol.c +libguitracecontrol_la_LIBADD = $(UTIL_LIBS) EXTRA_DIST = \ hTraceControlInsert.xpm TraceControlStart.xpm TraceControlPause.xpm \ diff --git a/lttv/modules/text/Makefile.am b/lttv/modules/text/Makefile.am index 697181a..ee008f2 100644 --- a/lttv/modules/text/Makefile.am +++ b/lttv/modules/text/Makefile.am @@ -1,8 +1,6 @@ AM_CFLAGS = $(MODULE_CFLAGS) AM_LDFLAGS = $(MODULE_LDFLAGS) -LIBS += $(THREAD_LIBS) -LIBS += $(GLIB_LIBS) -lgobject-2.0 -L${top_builddir}/ltt -llttvtraceread libdir = ${lttvplugindir} lib_LTLIBRARIES = libtextDump.la libbatchAnalysis.la libtextFilter.la libprecomputeState.la libdepanalysis.la diff --git a/runlttv b/runlttv index cf3590c..fd774d3 100755 --- a/runlttv +++ b/runlttv @@ -19,7 +19,17 @@ RCFILE=".runlttvrc" -ARGS="-L lttv/modules/gui/controlflow/.libs -m guicontrolflow -L lttv/modules/gui/lttvwindow/lttvwindow/.libs -m lttvwindow -L lttv/modules/gui/detailedevents/.libs -m guievents -L lttv/modules/gui/tracecontrol/.libs -m guitracecontrol -L lttv/modules/gui/statistics/.libs -m guistatistics -L lttv/modules/gui/resourceview/.libs -m resourceview -L lttv/modules/gui/filter/.libs -m guifilter -L lttv/modules/gui/interrupts/.libs -m interrupts -L lttv/modules/gui/histogram/.libs -m guihistogram" +ARGS=\ +"-L lttv/modules/gui/lttvwindow/lttvwindow/.libs -m lttvwindow "\ +"-L lttv/modules/gui/controlflow/.libs -m guicontrolflow "\ +"-L lttv/modules/gui/detailedevents/.libs -m guievents "\ +"-L lttv/modules/gui/tracecontrol/.libs -m guitracecontrol "\ +"-L lttv/modules/gui/statistics/.libs -m guistatistics "\ +"-L lttv/modules/gui/resourceview/.libs -m resourceview "\ +"-L lttv/modules/gui/filter/.libs -m guifilter "\ +"-L lttv/modules/gui/interrupts/.libs -m interrupts "\ +"-L lttv/modules/gui/histogram/.libs -m guihistogram" + LTTV_EXEC="lttv/lttv/.libs/lttv.real" if [ ! -e "$LTTV_EXEC" ]; then -- 1.6.3.3