diff options
author | tschmelcher@google.com <tschmelcher@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-25 18:04:52 +0000 |
---|---|---|
committer | tschmelcher@google.com <tschmelcher@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-25 18:04:52 +0000 |
commit | 151a96f357cdd774c0a890204563e57f83568db1 (patch) | |
tree | ed009f82a54b20df362d0e98480aa46415993428 /o3d/installer | |
parent | cbb1e6b513943fcb284c00b69c8cfdfd3953228d (diff) | |
download | chromium_src-151a96f357cdd774c0a890204563e57f83568db1.zip chromium_src-151a96f357cdd774c0a890204563e57f83568db1.tar.gz chromium_src-151a96f357cdd774c0a890204563e57f83568db1.tar.bz2 |
Linux: fix a couple problems that Lintian reports for the .deb file:
- Eliminate useless call to ldconfig (see Debian bug #364436)
- Eliminate spurious rpath. We were setting the rpath equal to the build output directory for libs, which is wrong. The rpath is the _run-time_ library search path for the resulting binary, i.e. the one used by ld.so at load time. Setting it equal to the path to build output on the build machine is nonsense.
Also:
- Use new-found knowledge of rpath to eliminate the need to symlink into /usr/lib(32) by instead setting rpath to /opt/google/o3d/lib and putting our three dependent libs there.
Review URL: http://codereview.chromium.org/174369
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24250 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'o3d/installer')
-rw-r--r-- | o3d/installer/linux/build.scons | 4 | ||||
-rw-r--r-- | o3d/installer/linux/debian_amd64/google-o3d.install | 6 | ||||
-rw-r--r-- | o3d/installer/linux/debian_amd64/links | 10 | ||||
-rwxr-xr-x | o3d/installer/linux/debian_amd64/rules | 3 | ||||
-rw-r--r-- | o3d/installer/linux/debian_common/links (renamed from o3d/installer/linux/debian_i386/links) | 0 | ||||
-rwxr-xr-x | o3d/installer/linux/generic/setup.sh | 29 |
6 files changed, 12 insertions, 40 deletions
diff --git a/o3d/installer/linux/build.scons b/o3d/installer/linux/build.scons index 50e93a5..f03893b 100644 --- a/o3d/installer/linux/build.scons +++ b/o3d/installer/linux/build.scons @@ -153,7 +153,7 @@ if subprocess.Popen(["which", "dpkg-buildpackage"], BuildDebianPackage(["debian_common/changelog", "debian_amd64/control", "debian_amd64/google-o3d.install", - "debian_amd64/links", + "debian_common/links", "debian_amd64/postinst", "debian_amd64/prerm", "debian_amd64/rules" @@ -171,7 +171,7 @@ if subprocess.Popen(["which", "dpkg-buildpackage"], BuildDebianPackage(["debian_common/changelog", "debian_i386/control", "debian_i386/google-o3d.install", - "debian_i386/links", + "debian_common/links", "debian_i386/rules" ], [("libnpo3dautoplugin.so", diff --git a/o3d/installer/linux/debian_amd64/google-o3d.install b/o3d/installer/linux/debian_amd64/google-o3d.install index 0c00816..5cec3dd 100644 --- a/o3d/installer/linux/debian_amd64/google-o3d.install +++ b/o3d/installer/linux/debian_amd64/google-o3d.install @@ -1,4 +1,4 @@ libnpo3dautoplugin.so opt/google/o3d -libGLEW.so.1.5 opt/google/o3d -libCg.so opt/google/o3d -libCgGL.so opt/google/o3d +libGLEW.so.1.5 opt/google/o3d/lib +libCg.so opt/google/o3d/lib +libCgGL.so opt/google/o3d/lib diff --git a/o3d/installer/linux/debian_amd64/links b/o3d/installer/linux/debian_amd64/links deleted file mode 100644 index 51151e1..0000000 --- a/o3d/installer/linux/debian_amd64/links +++ /dev/null @@ -1,10 +0,0 @@ -/opt/google/o3d/libCgGL.so /usr/lib32/libCgGL.so -/opt/google/o3d/libCg.so /usr/lib32/libCg.so -/opt/google/o3d/libGLEW.so.1.5 /usr/lib32/libGLEW.so.1.5 -/opt/google/o3d/libnpo3dautoplugin.so /usr/lib/iceape/plugins/libnpo3dautoplugin.so -/opt/google/o3d/libnpo3dautoplugin.so /usr/lib/iceweasel/plugins/libnpo3dautoplugin.so -/opt/google/o3d/libnpo3dautoplugin.so /usr/lib/mozilla/plugins/libnpo3dautoplugin.so -/opt/google/o3d/libnpo3dautoplugin.so /usr/lib/firefox/plugins/libnpo3dautoplugin.so -/opt/google/o3d/libnpo3dautoplugin.so /usr/lib/midbrowser/plugins/libnpo3dautoplugin.so -/opt/google/o3d/libnpo3dautoplugin.so /usr/lib/xulrunner/plugins/libnpo3dautoplugin.so -/opt/google/o3d/libnpo3dautoplugin.so /usr/lib/xulrunner-addons/plugins/libnpo3dautoplugin.so diff --git a/o3d/installer/linux/debian_amd64/rules b/o3d/installer/linux/debian_amd64/rules index f99812c..0789635 100755 --- a/o3d/installer/linux/debian_amd64/rules +++ b/o3d/installer/linux/debian_amd64/rules @@ -5,3 +5,6 @@ export LD_LIBRARY_PATH=$(shell echo $$LD_LIBRARY_PATH:$$PWD) include /usr/share/cdbs/1/rules/debhelper.mk + +# Workaround for Debian bug #364436 +DEB_DH_MAKESHLIBS_ARGS=-n diff --git a/o3d/installer/linux/debian_i386/links b/o3d/installer/linux/debian_common/links index 54f1d70..54f1d70 100644 --- a/o3d/installer/linux/debian_i386/links +++ b/o3d/installer/linux/debian_common/links diff --git a/o3d/installer/linux/generic/setup.sh b/o3d/installer/linux/generic/setup.sh index 93d6870..6606e18 100755 --- a/o3d/installer/linux/generic/setup.sh +++ b/o3d/installer/linux/generic/setup.sh @@ -62,6 +62,7 @@ SetRootUser() { SetupO3d() { # Create npapi plugin directories, copy and symlink libs. O3D_DIR="/opt/google/o3d" + LIB_DIR=$O3D_DIR/lib PLUGIN_DIRS="/usr/lib/firefox/plugins /usr/lib/iceape/plugins @@ -78,12 +79,12 @@ SetupO3d() { LIB3D="libnpo3dautoplugin.so" echo -n "Creating plugin directories..." - mkdir -p $PLUGIN_DIRS $O3D_DIR + mkdir -p $PLUGIN_DIRS $O3D_DIR $LIB_DIR echo "ok" echo -n "Installing files to $O3D_DIR..." install --mode=644 ${LIB3D} $O3D_DIR - install --mode=644 ${LIBS} $O3D_DIR + install --mode=644 ${LIBS} $LIB_DIR echo "ok" echo -n "Creating symlinks to plugin..." @@ -92,30 +93,8 @@ SetupO3d() { done echo "ok" - # If 32bit arch, use /usr/lib. If 64bit, use /usr/lib32 - if [ "$ARCH" = "32bit" ]; then - LIBDIR="/usr/lib" - elif [ "$ARCH" = "64bit" ]; then - LIBDIR="/usr/lib32" - NP_WRAP="yes" - else - echo "$ARCH not recognized" - exit 1 - fi - - echo -n "Creating symlinks to libs..." - mkdir -p $LIBDIR - for lib in $LIBS; do - if [ -e "${LIBDIR}/${lib}" ]; then - echo "$lib already exists, not replacing." - else - ln -s ${O3D_DIR}/${lib} ${LIBDIR}/ - fi - done - echo "ok" - # 64bit only: Check for nspluginwrapper, wrap libnpo3dautoplugin.so if found. - if [ "$NP_WRAP" = "yes" ]; then + if [ "$ARCH" = "64bit" ]; then echo -n "Attempting to wrap $LIB3D via nspluginwrapper..." NSPW=$(which nspluginwrapper) if [ -z "$NSPW" ]; then |