mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Remy Bohmer <linux@bohmer.net>
To: ptxdist@pengutronix.de
Subject: [ptxdist] [PATCH 2/8 v3] [x86_64, multilib] Remove all hardcoded paths from glibc.make
Date: Sat, 24 Mar 2012 20:07:02 +0100	[thread overview]
Message-ID: <1332616028-32312-2-git-send-email-linux@bohmer.net> (raw)
In-Reply-To: <1332616028-32312-1-git-send-email-linux@bohmer.net>

These hardcoded paths do not work for a multilib environment where
libraries are typically installed in /lib64 for x86-64 instead of /lib
All correct paths can be found by interrogating the compiler toolchain
for the location of these files.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
---
 v2: no changes since v1
 v3: rebase of v2 (dropped some changes since they are in mainline already)

 rules/glibc.make                  |   23 +++++++++++------------
 rules/post/install.make           |   18 ++++++------------
 scripts/install_copy_toolchain.sh |    2 +-
 3 files changed, 18 insertions(+), 25 deletions(-)

diff --git a/rules/glibc.make b/rules/glibc.make
index 2de7a13..0d110ef 100644
--- a/rules/glibc.make
+++ b/rules/glibc.make
@@ -104,33 +104,32 @@ ifdef PTXCONF_GLIBC_NSL
 endif
 
 ifdef PTXCONF_GLIBC_GCONF_BASE
-	@$(call install_copy, glibc, 0, 0, 0755, /usr/lib/gconv)
-	@$(call install_copy_toolchain_lib, glibc, gconv/gconv-modules, /usr/lib/gconv, n)
+	@$(call install_copy_toolchain_lib, glibc, gconv/gconv-modules, n)
 endif
 
 ifdef PTXCONF_GLIBC_GCONV_DEF
-	@$(call install_copy_toolchain_lib, glibc, gconv/ISO8859-1.so, /usr/lib/gconv)
-	@$(call install_copy_toolchain_lib, glibc, gconv/ISO8859-15.so, /usr/lib/gconv)
+	@$(call install_copy_toolchain_lib, glibc, gconv/ISO8859-1.so)
+	@$(call install_copy_toolchain_lib, glibc, gconv/ISO8859-15.so)
 endif
 
 ifdef PTXCONF_GLIBC_GCONV_UTF
-	@$(call install_copy_toolchain_lib, glibc, gconv/UNICODE.so, /usr/lib/gconv)
-	@$(call install_copy_toolchain_lib, glibc, gconv/UTF-16.so, /usr/lib/gconv)
-	@$(call install_copy_toolchain_lib, glibc, gconv/UTF-32.so, /usr/lib/gconv)
-	@$(call install_copy_toolchain_lib, glibc, gconv/UTF-7.so, /usr/lib/gconv)
+	@$(call install_copy_toolchain_lib, glibc, gconv/UNICODE.so)
+	@$(call install_copy_toolchain_lib, glibc, gconv/UTF-16.so)
+	@$(call install_copy_toolchain_lib, glibc, gconv/UTF-32.so)
+	@$(call install_copy_toolchain_lib, glibc, gconv/UTF-7.so)
 endif
 
 ifdef PTXCONF_GLIBC_GCONV_ZH
-	@$(call install_copy_toolchain_lib, glibc, gconv/GBBIG5.so, /usr/lib/gconv)
-	@$(call install_copy_toolchain_lib, glibc, gconv/GB18030.so, /usr/lib/gconv)
+	@$(call install_copy_toolchain_lib, glibc, gconv/GBBIG5.so)
+	@$(call install_copy_toolchain_lib, glibc, gconv/GB18030.so)
 endif
 
 ifdef PTXCONF_GLIBC_I18N_BIN_LOCALE
-	@$(call install_copy_toolchain_usr, glibc, bin/locale)
+	@$(call install_copy_toolchain_lib, glibc, bin/locale)
 endif
 
 ifdef PTXCONF_GLIBC_I18N_BIN_LOCALEDEF
-	@$(call install_copy_toolchain_usr, glibc, bin/localedef)
+	@$(call install_copy_toolchain_lib, glibc, bin/localedef)
 endif
 
 ifdef PTXCONF_GLIBC_I18N_RAWDATA
diff --git a/rules/post/install.make b/rules/post/install.make
index 190ec28..cfc73a4 100644
--- a/rules/post/install.make
+++ b/rules/post/install.make
@@ -300,18 +300,15 @@ install_script_replace = \
 #
 # $1: xpkg label
 # $2: source
-# $3: destination
-# $4: strip (y|n)	default is to strip
+# $3: strip (y|n)	default is to strip
 #
 install_copy_toolchain_lib =									\
 	XPKG=$(subst _,-,$(strip $(1)));							\
 	LIB="$(strip $2)";									\
-	DST="$(strip $3)";									\
-	STRIP="$(strip $4)";									\
-	test "$${DST}" != "" && DST="-d $${DST}";						\
+	STRIP="$(strip $3)";									\
 	$(call install_check, install_copy_toolchain_lib);					\
 	${CROSS_ENV_CC} $(CROSS_ENV_STRIP) PKGDIR="$(PKGDIR)"					\
-		$(SCRIPTSDIR)/install_copy_toolchain.sh -p "$${XPKG}" -l "$${LIB}" $${DST} -s "$${STRIP}"
+		$(SCRIPTSDIR)/install_copy_toolchain.sh -p "$${XPKG}" -l "$${LIB}" -s "$${STRIP}"
 
 #
 # install_copy_toolchain_dl
@@ -331,18 +328,15 @@ install_copy_toolchain_dl =									\
 #
 # $1: xpkg label
 # $2: source
-# $3: destination
-# $4: strip (y|n)	default is to strip
+# $3: strip (y|n)	default is to strip
 #
 install_copy_toolchain_usr =									\
 	XPKG=$(subst _,-,$(strip $(1)));							\
 	LIB="$(strip $2)";									\
-	DST="$(strip $3)";									\
-	STRIP="$(strip $4)";									\
-	test "$${DST}" != "" && DST="-d $${DST}";						\
+	STRIP="$(strip $3)";									\
 	$(call install_check, install_copy_toolchain_other);					\
 	${CROSS_ENV_CC} $(CROSS_ENV_STRIP) PKGDIR="$(PKGDIR)"					\
-		$(SCRIPTSDIR)/install_copy_toolchain.sh -p "$${XPKG}" -u "$${LIB}" $${DST} -s "$${STRIP}"
+		$(SCRIPTSDIR)/install_copy_toolchain.sh -p "$${XPKG}" -u "$${LIB}" -s "$${STRIP}"
 
 #
 # install_link
diff --git a/scripts/install_copy_toolchain.sh b/scripts/install_copy_toolchain.sh
index 7b91fc4..44c399a 100755
--- a/scripts/install_copy_toolchain.sh
+++ b/scripts/install_copy_toolchain.sh
@@ -101,7 +101,7 @@ ptxd_split_lib_prefix_sysroot_eval() {
     lib_dir="${lib_path%/${lib}}"		# abs path to that lib
 
     # try to identify sysroot part of that path
-    for prefix in {/usr,}/lib{64,32,}{/tls,} ""; do
+    for prefix in {/usr,}/lib{64,32,}{/tls,/gconv,/bin,} ""; do
 	tmp="${lib_dir%${prefix}}"
 	if test "${lib_dir}" != "${tmp}"; then
 	    break
-- 
1.7.5.4


-- 
ptxdist mailing list
ptxdist@pengutronix.de

  reply	other threads:[~2012-03-24 19:07 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-24 19:07 [ptxdist] [PATCH 1/8 v3] [x86_64] libgcc need to be install in /lib64 instead of /lib Remy Bohmer
2012-03-24 19:07 ` Remy Bohmer [this message]
2012-03-25 11:01   ` [ptxdist] [PATCH 2/8 v3] [x86_64, multilib] Remove all hardcoded paths from glibc.make Michael Olbrich
2012-03-25 17:34     ` Remy Bohmer
2012-03-26  8:44       ` Michael Olbrich
2012-03-26 10:09         ` Remy Bohmer
2012-03-27  6:23           ` Michael Olbrich
2012-03-27  7:18             ` Remy Bohmer
2012-03-24 19:07 ` [ptxdist] [PATCH 3/8 v3] [x86_64, multilib] Make packages install their libraries at the right place Remy Bohmer
2012-03-25 10:25   ` Michael Olbrich
2012-03-25 10:41     ` Remy Bohmer
2012-03-25 17:43       ` Remy Bohmer
2012-03-25 18:11         ` Remy Bohmer
2012-03-27 14:09           ` Michael Olbrich
2012-03-24 19:07 ` [ptxdist] [PATCH 4/8 v3] [x86_64, multilib] Install Zlib " Remy Bohmer
2012-03-24 19:07 ` [ptxdist] [PATCH 5/8 v3] [x86_64, multilib] Install Ncurses " Remy Bohmer
2012-03-24 19:07 ` [ptxdist] [PATCH 6/8 v3] [x86_64, multilib] Install Util-linux-ng " Remy Bohmer
2012-03-25 10:51   ` Michael Olbrich
2012-03-25 10:55     ` Remy Bohmer
2012-03-24 19:07 ` [ptxdist] [PATCH 7/8 v3] [x86_64, multilib] Install Readline " Remy Bohmer
2012-03-24 19:07 ` [ptxdist] [PATCH 8/8 v3] [x86_64, multilib] Install Procps " Remy Bohmer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1332616028-32312-2-git-send-email-linux@bohmer.net \
    --to=linux@bohmer.net \
    --cc=ptxdist@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox