From 70c3609a8f317ba4db7f8db516f0680d86844bbe Mon Sep 17 00:00:00 2001 From: tchernobog Date: Sat, 16 Sep 2006 00:42:10 +0000 Subject: [PATCH] - Try to make more fine tuned use of rpath, crossing fingers not to break builds for foreign hosts - Calc debian package final size dynamically git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@1183 3ecf2c5c-341e-0410-92b4-d18e462d057c --- Makefile.am | 13 +++++++++++-- config/sgpemv2-uninstalled.pc.in | 2 +- config/sgpemv2.pc.in | 2 +- distro/deb/build.sh | 7 +++++-- distro/deb/control-file-v1.0 | 2 +- distro/ebuild/sgpemv2-1.0.ebuild | 2 ++ distro/rpm/SPECS/sgpemv2-1.0.spec | 1 + 7 files changed, 22 insertions(+), 7 deletions(-) diff --git a/Makefile.am b/Makefile.am index e42bb7d..5d3d11e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -356,8 +356,10 @@ sgpemv2_CPPFLAGS = \ $(GTKMM_CFLAGS) \ $(LIBGLADEMM_CFLAGS) \ $(GTHREAD_CFLAGS) -sgpemv2_CXXFLAGS = $(VISIB_HIDDEN) -sgpemv2_LDFLAGS = $(LT_LDFLAGS) +sgpemv2_CXXFLAGS = \ + $(VISIB_HIDDEN) +sgpemv2_LDFLAGS = \ + -Wl,-rpath -Wl,"$(pkglibdir)" sgpemv2_LDADD = \ src/backend/libbackend.la \ $(CAIRO_LIBS) \ @@ -469,6 +471,7 @@ src_testsuite_test_history_CPPFLAGS = \ -I@top_srcdir@/src/backend \ $(GLIBMM_CFLAGS) src_testsuite_test_history_LDFLAGS = \ + -Wl,-rpath -Wl,"$(pkglibdir)" \ src/backend/libbackend.la \ $(GLIBMM_LIBS) src_testsuite_test_history_SOURCES = \ @@ -493,6 +496,7 @@ src_testsuite_test_history_SOURCES = \ # $(GLIBMM_CFLAGS) #src_testsuite_test_global_preferences_serialization_LDFLAGS = \ # src/backend/libbackend.la \ +# -Wl,-rpath -Wl,"$(pkglibdir)" \ # $(GLIBMM_LIBS) #src_testsuite_test_global_preferences_serialization_SOURCES = \ # src/testsuite/test-global_preferences_serialization.cc @@ -501,6 +505,7 @@ src_testsuite_test_key_file_CPPFLAGS = \ -I@top_srcdir@/src/backend \ $(GLIBMM_CFLAGS) src_testsuite_test_key_file_LDFLAGS = \ + -Wl,-rpath -Wl,"$(pkglibdir)" \ src/backend/libbackend.la \ $(GLIBMM_LIBS) src_testsuite_test_key_file_SOURCES = \ @@ -530,6 +535,7 @@ src_testsuite_test_simulation_widget_CPPFLAGS = \ $(GTHREAD_CFLAGS) src_testsuite_test_simulation_widget_LDFLAGS = \ src/backend/libbackend.la \ + -Wl,-rpath -Wl,"$(pkglibdir)" \ $(CAIRO_LIBS) \ $(GTKMM_LIBS) \ $(GLIBMM_LIBS) \ @@ -549,6 +555,7 @@ src_testsuite_test_holt_widget_CPPFLAGS = \ $(GTHREAD_CFLAGS) src_testsuite_test_holt_widget_LDFLAGS = \ src/backend/libbackend.la \ + -Wl,-rpath -Wl,"$(pkglibdir)" \ $(CAIRO_LIBS) \ $(GTKMM_LIBS) \ $(GLIBMM_LIBS) \ @@ -567,6 +574,7 @@ src_testsuite_test_holt_widget_SOURCES = \ # $(GLIBMM_CFLAGS) #src_testsuite_test_parse_command_LDFLAGS = \ # src/backend/libbackend.la \ +# -Wl,-rpath -Wl,"$(pkglibdir)" \ # $(GLIBMM_LIBS) #src_testsuite_test_parse_command_SOURCES = \ # src/testsuite/test-parse_command.cc @@ -579,6 +587,7 @@ src_testsuite_test_holt_widget_SOURCES = \ # $(GLIBMM_CFLAGS) #src_testsuite_test_stepforward_LDFLAGS = \ # src/backend/libbackend.la \ +# -Wl,-rpath -Wl,"$(pkglibdir)" \ # $(GLIBMM_LIBS) #src_testsuite_test_stepforward_SOURCES = \ # src/testsuite/stubs/history.cc \ diff --git a/config/sgpemv2-uninstalled.pc.in b/config/sgpemv2-uninstalled.pc.in index d1a81e5..6dcc9a0 100644 --- a/config/sgpemv2-uninstalled.pc.in +++ b/config/sgpemv2-uninstalled.pc.in @@ -13,6 +13,6 @@ Description: An educational simulator for process scheduling and management Version: @PACKAGE_VERSION@ URL: http://www.math.unipd.it/ Requires: glibmm-2.4 >= 2.8 gthread-2.0 >= 2.8 -Libs: -L${libdir}/src/backend -lbackend +Libs: -L${libdir}/src/backend -Wl,-rpath -Wl,"@libdir@/@PACKAGE@" -lbackend Libs.private: -lglibmm-2.4 -lgthread-2.0 Cflags: -I${includedir} diff --git a/config/sgpemv2.pc.in b/config/sgpemv2.pc.in index ebf8127..001b6e9 100644 --- a/config/sgpemv2.pc.in +++ b/config/sgpemv2.pc.in @@ -13,6 +13,6 @@ Description: An educational simulator for process scheduling and management Version: @PACKAGE_VERSION@ URL: http://www.math.unipd.it/ Requires: glibmm-2.4 >= 2.8 gthread-2.0 >= 2.8 -Libs: -L${libdir} -lbackend +Libs: -L${libdir} -Wl,-rpath -Wl,"${libdir}" -lbackend Libs.private: -lglibmm-2.4 -lgthread-2.0 Cflags: -I${includedir} diff --git a/distro/deb/build.sh b/distro/deb/build.sh index 7ce8a4d..3a5a17c 100755 --- a/distro/deb/build.sh +++ b/distro/deb/build.sh @@ -25,7 +25,7 @@ cd "${pkgname}-${version}" mkdir =build cd =build -CXXFLAGS="-O3 -pipe" ../configure --disable-tests --disable-debug --prefix=/usr +CXXFLAGS="-O3 -pipe" ../configure --disable-tests --disable-debug --disable-static --prefix=/usr make make pdf @@ -43,8 +43,11 @@ for i in AUTHORS NEWS README COPYING ChangeLog; do done cd ${curdir} + +pkg_size="$( du -sk ${curdir} )" + mkdir -p "${destdir}/DEBIAN" -cp "$1" "${destdir}/DEBIAN/control" +sed "s|@SIZE@|${pkg_size}|g" "$1" > "${destdir}/DEBIAN/control" dpkg -b "${destdir}" . diff --git a/distro/deb/control-file-v1.0 b/distro/deb/control-file-v1.0 index d96f0f1..95fe12c 100644 --- a/distro/deb/control-file-v1.0 +++ b/distro/deb/control-file-v1.0 @@ -5,7 +5,7 @@ Priority: optional Architecture: i386 Pre-Depends: libstdc++6 Depends: libgtkmm-2.4-1c2a, libglademm-2.4-1c2a, libxml2 (>= 2.6.10), libcairo, python (>= 2.3) -Installed-Size: 3049.85 +Installed-Size: @SIZE@ Maintainer: Marco Trevisan Provides: sgpemv2 Description: A graphical process management simulator with educational purposes. diff --git a/distro/ebuild/sgpemv2-1.0.ebuild b/distro/ebuild/sgpemv2-1.0.ebuild index adf5fe1..8a5fbc1 100644 --- a/distro/ebuild/sgpemv2-1.0.ebuild +++ b/distro/ebuild/sgpemv2-1.0.ebuild @@ -35,6 +35,8 @@ src_compile() { conf_opts="--disable-tests" fi + conf_opts="${conf_opts} --disable-static" + mkdir build && cd build ../configure --prefix=/usr \ diff --git a/distro/rpm/SPECS/sgpemv2-1.0.spec b/distro/rpm/SPECS/sgpemv2-1.0.spec index 77ea81e..236f6a5 100644 --- a/distro/rpm/SPECS/sgpemv2-1.0.spec +++ b/distro/rpm/SPECS/sgpemv2-1.0.spec @@ -79,6 +79,7 @@ FFLAGS="${FFLAGS:-%optflags}" ; export FFLAGS ; \ --disable-tests \ --disable-debug \ --disable-rpath \ + --disable-static \ --disable-visibility-support make make pdf