Bug#553045: but 4.4.1-1 is to be installed.
Hi,
Attached you can find a patchset that applies clean on svn sid/gcc-4.4
HEAD. It builds BI/TRI-ARCH and NON BIARCH builds.
2010/7/26 Matthias Klose <doko@debian.org>:
> Hector, please contact the emdebian maintainers about fixing this. I doubt
> there is anybody within the GCC maintainers who is going to fix this.
[Al Viro]
>From 5a98a76683b0e381c9b7a886c3ea8fcd218081d6 Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Sun, 29 Aug 2010 13:49:46 -0400
Subject: [PATCH 1/8] beginning of saner directory handling
New variables:
usr_lib{,32,64,n32}
gcc_lib_dir{32,64,n32}
libgcc_dir{,32,64,n32}
We set those to full paths in rules2 and switch to using them in
rules.d/*; as the result, most of the explicit pathnames in there
are gone _and_ we get uniformity across different flavours.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
debian/rules.d/binary-cxx.mk | 18 +++---
debian/rules.d/binary-fortran.mk | 46 +++++++-------
debian/rules.d/binary-gcc.mk | 115 +++++++++++++++++------------------
debian/rules.d/binary-libgcc.mk | 20 +++---
debian/rules.d/binary-libgomp.mk | 14 ++--
debian/rules.d/binary-libmudflap.mk | 34 ++++++-----
debian/rules.d/binary-libobjc.mk | 16 +++---
debian/rules.d/binary-libstdcxx.mk | 86 +++++++++++++-------------
debian/rules.d/binary-nof.mk | 14 ++--
debian/rules.d/binary-objc.mk | 38 ++++++------
debian/rules2 | 14 ++++
11 files changed, 215 insertions(+), 200 deletions(-)
diff --git a/debian/rules.d/binary-cxx.mk b/debian/rules.d/binary-cxx.mk
index 4ed673b..718f117 100644
--- a/debian/rules.d/binary-cxx.mk
+++ b/debian/rules.d/binary-cxx.mk
@@ -107,13 +107,13 @@ $(binary_stamp)-cxx-multi: $(install_stamp)
$(gcc_lib_dir)/$(biarchsubdirs)
ifeq ($(biarch64),yes)
- mv $(d)/$(PFL)/lib64/lib*c++*.{a,so} $(d)/$(gcc_lib_dir)/$(biarch64subdir)/.
+ mv $(d)/$(usr_lib64)/lib*c++*.{a,so} $(d)/$(gcc_lib_dir64)/.
endif
ifeq ($(biarch32),yes)
- mv $(d)/$(PFL)/lib32/lib*c++*.{a,so} $(d)/$(gcc_lib_dir)/$(biarch32subdir)/.
+ mv $(d)/$(usr_lib32)/lib*c++*.{a,so} $(d)/$(gcc_lib_dir32)/.
endif
ifeq ($(biarchn32),yes)
- mv $(d)/$(PFL)/$(libn32)/lib*c++*.{a,so}
$(d)/$(gcc_lib_dir)/$(biarchn32subdir)/.
+ mv $(d)/$(usr_libn32)/lib*c++*.{a,so} $(d)/$(gcc_lib_dirn32)/.
endif
DH_COMPAT=2 dh_movefiles -p$(p_cxx_m) \
@@ -123,18 +123,18 @@ endif
ifeq ($(biarch64),yes)
dh_link -p$(p_cxx_m) \
- /$(PFL)/lib64/libstdc++.so.$(CXX_SONAME) \
- /$(gcc_lib_dir)/$(biarch64subdir)/libstdc++.so
+ /$(usr_lib64)/libstdc++.so.$(CXX_SONAME) \
+ /$(gcc_lib_dir64)/libstdc++.so
endif
ifeq ($(biarch32),yes)
dh_link -p$(p_cxx_m) \
- /$(PFL)/lib32/libstdc++.so.$(CXX_SONAME) \
- /$(gcc_lib_dir)/$(biarch32subdir)/libstdc++.so
+ /$(usr_lib32)/libstdc++.so.$(CXX_SONAME) \
+ /$(gcc_lib_dir32)/libstdc++.so
endif
ifeq ($(biarchn32),yes)
dh_link -p$(p_cxx_m) \
- /$(PFL)/$(libn32)/libstdc++.so.$(CXX_SONAME) \
- /$(gcc_lib_dir)/$(biarchn32subdir)/libstdc++.so
+ /$(usr_libn32)/libstdc++.so.$(CXX_SONAME) \
+ /$(gcc_lib_dirn32)/libstdc++.so
endif
debian/dh_doclink -p$(p_cxx_m) $(p_base)
diff --git a/debian/rules.d/binary-fortran.mk b/debian/rules.d/binary-fortran.mk
index 7e3b51c..17f4ead 100644
--- a/debian/rules.d/binary-fortran.mk
+++ b/debian/rules.d/binary-fortran.mk
@@ -67,10 +67,10 @@ endif
dirs_flib = \
$(docdir) \
- $(PFL)/$(libdir) \
+ $(usr_lib) \
files_flib = \
- $(PFL)/$(libdir)/libgfortran.so.*
+ $(usr_lib)/libgfortran.so.*
# ----------------------------------------------------------------------
$(binary_stamp)-libgfortran: $(install_stamp)
@@ -107,9 +107,9 @@ $(binary_stamp)-lib64fortran: $(install_stamp)
rm -rf $(d_f64lib) $(d_f64libdbg)
dh_installdirs -p$(p_f64lib) \
- $(PFL)/lib64
+ $(usr_lib64)
DH_COMPAT=2 dh_movefiles -p$(p_f64lib) \
- $(PFL)/lib64/libgfortran.so.*
+ $(usr_lib64)/libgfortran.so.*
debian/dh_doclink -p$(p_f64lib) $(p_base)
debian/dh_doclink -p$(p_f64libdbg) $(p_base)
@@ -138,9 +138,9 @@ $(binary_stamp)-lib32fortran: $(install_stamp)
rm -rf $(d_f32lib) $(d_f32libdbg)
dh_installdirs -p$(p_f32lib) \
- $(PFL)/lib32
+ $(usr_lib32)
DH_COMPAT=2 dh_movefiles -p$(p_f32lib) \
- $(PFL)/lib32/libgfortran.so.*
+ $(usr_lib32)/libgfortran.so.*
debian/dh_doclink -p$(p_f32lib) $(p_base)
debian/dh_doclink -p$(p_f32libdbg) $(p_base)
@@ -167,9 +167,9 @@ $(binary_stamp)-libn32fortran: $(install_stamp)
rm -rf $(d_fn32lib) $(d_fn32libdbg)
dh_installdirs -p$(p_fn32lib) \
- $(PFL)/$(libn32)
+ $(usr_libn32)
DH_COMPAT=2 dh_movefiles -p$(p_fn32lib) \
- $(PFL)/$(libn32)/libgfortran.so.*
+ $(usr_libn32)/libgfortran.so.*
debian/dh_doclink -p$(p_fn32lib) $(p_base)
debian/dh_doclink -p$(p_fn32libdbg) $(p_base)
@@ -201,10 +201,10 @@ $(binary_stamp)-fdev: $(install_stamp)
DH_COMPAT=2 dh_movefiles -p$(p_g95) $(files_g95)
- rm -f $(d)/$(PFL)/$(libdir)/libgfortran*.so
- mv $(d)/$(PFL)/$(libdir)/libgfortran*.a $(d_g95)/$(gcc_lib_dir)/
+ rm -f $(d)/$(usr_lib)/libgfortran*.so
+ mv $(d)/$(usr_lib)/libgfortran*.a $(d_g95)/$(gcc_lib_dir)/
dh_link -p$(p_g95) \
- /$(PFL)/$(libdir)/libgfortran.so.$(FORTRAN_SONAME) \
+ /$(usr_lib)/libgfortran.so.$(FORTRAN_SONAME) \
/$(gcc_lib_dir)/libgfortran.so
ifneq ($(DEB_CROSS),yes)
@@ -251,25 +251,25 @@ $(binary_stamp)-fdev-multi: $(install_stamp)
$(gcc_lib_dir)/$(biarchsubdirs)/libgfortranbegin.a
ifeq ($(biarch64),yes)
- rm -f $(d)/$(PFL)/lib64/libgfortran*.{la,so}
- mkdir -p $(d_g95_m)/$(gcc_lib_dir)/$(biarch64subdir)
- mv $(d)/$(PFL)/lib64/libgfortran*.a
$(d_g95_m)/$(gcc_lib_dir)/$(biarch64subdir)/
+ rm -f $(d)/$(usr_lib64)/libgfortran*.{la,so}
+ mkdir -p $(d_g95_m)/$(gcc_lib_dir64)
+ mv $(d)/$(usr_lib64)/libgfortran*.a $(d_g95_m)/$(gcc_lib_dir64)/
dh_link -p$(p_g95_m) \
- /$(PFL)/lib64/libgfortran.so.$(FORTRAN_SONAME)
/$(gcc_lib_dir)/$(biarch64subdir)/libgfortran.so
+ /$(usr_lib64)/libgfortran.so.$(FORTRAN_SONAME)
/$(gcc_lib_dir64)/libgfortran.so
endif
ifeq ($(biarch32),yes)
- rm -f $(d)/$(PFL)/lib32/libgfortran*.{la,so}
- mkdir -p $(d_g95_m)/$(gcc_lib_dir)/$(biarch32subdir)
- mv $(d)/$(PFL)/lib32/libgfortran*.a
$(d_g95_m)/$(gcc_lib_dir)/$(biarch32subdir)/
+ rm -f $(d)/$(usr_lib32)/libgfortran*.{la,so}
+ mkdir -p $(d_g95_m)/$(gcc_lib_dir32)
+ mv $(d)/$(usr_lib32)/libgfortran*.a $(d_g95_m)/$(gcc_lib_dir32)/
dh_link -p$(p_g95_m) \
- /$(PFL)/lib32/libgfortran.so.$(FORTRAN_SONAME)
/$(gcc_lib_dir)/$(biarch32subdir)/libgfortran.so
+ /$(usr_lib32)/libgfortran.so.$(FORTRAN_SONAME)
/$(gcc_lib_dir32)/libgfortran.so
endif
ifeq ($(biarchn32),yes)
- rm -f $(d)/$(PFL)/$(libn32)/libgfortran*.{la,so}
- mkdir -p $(d_g95_m)/$(gcc_lib_dir)/$(biarchn32subdir)
- mv $(d)/$(PFL)/$(libn32)/libgfortran*.a
$(d_g95_m)/$(gcc_lib_dir)/$(biarchn32subdir)/
+ rm -f $(d)/$(usr_libn32)/libgfortran*.{la,so}
+ mkdir -p $(d_g95_m)/$(gcc_lib_dirn32)
+ mv $(d)/$(usr_libn32)/libgfortran*.a $(d_g95_m)/$(gcc_lib_dirn32)/
dh_link -p$(p_g95_m) \
- /$(PFL)/$(libn32)/libgfortran.so.$(FORTRAN_SONAME)
/$(gcc_lib_dir)/$(biarchn32subdir)/libgfortran.so
+ /$(usr_libn32)/libgfortran.so.$(FORTRAN_SONAME)
/$(gcc_lib_dirn32)/libgfortran.so
endif
debian/dh_doclink -p$(p_g95_m) $(p_base)
diff --git a/debian/rules.d/binary-gcc.mk b/debian/rules.d/binary-gcc.mk
index 89fb627..ea7c400 100644
--- a/debian/rules.d/binary-gcc.mk
+++ b/debian/rules.d/binary-gcc.mk
@@ -109,39 +109,39 @@ $(binary_stamp)-gcc: $(install_dependencies)
ifneq ($(DEB_STAGE),stage1) # stage1 builds static libgcc only
: # libgcc_s.so may be a linker script on some architectures
set -e; \
- if [ -h $(d)/$(PFL)/$(libdir)/libgcc_s.so ]; then \
- rm -f $(d)/$(PFL)/$(libdir)/libgcc_s.so; \
- dh_link -p$(p_gcc) /$(RPF)/$(libdir)/libgcc_s.so.$(GCC_SONAME) \
+ if [ -h $(d)/$(usr_lib)/libgcc_s.so ]; then \
+ rm -f $(d)/$(usr_lib)/libgcc_s.so; \
+ dh_link -p$(p_gcc) /$(libgcc_dir)/libgcc_s.so.$(GCC_SONAME) \
$(gcc_lib_dir)/libgcc_s.so; \
else \
- mv $(d)/$(PFL)/$(libdir)/libgcc_s.so $(d)/$(gcc_lib_dir)/libgcc_s.so; \
- dh_link -p$(p_gcc) /$(RPF)/$(libdir)/libgcc_s.so.$(GCC_SONAME) \
+ mv $(d)/$(usr_lib)/libgcc_s.so $(d)/$(gcc_lib_dir)/libgcc_s.so; \
+ dh_link -p$(p_gcc) /$(libgcc_dir)/libgcc_s.so.$(GCC_SONAME) \
$(gcc_lib_dir)/libgcc_s.so.$(GCC_SONAME); \
fi
endif
ifeq ($(with_libgmath),yes)
- rm -f $(d)/$(PFL)/$(libdir)/libgcc-math.{la,so}
+ rm -f $(d)/$(usr_lib)/libgcc-math.{la,so}
dh_link -p$(p_gcc) \
- /$(PFL)/$(libdir)/libgcc-math.so.$(GCC_SONAME)
/$(gcc_lib_dir)/libgcc-math.so
- mv $(d)/$(PFL)/$(libdir)/libgcc-math.a $(d)/$(gcc_lib_dir)/
+ /$(usr_lib)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc-math.so
+ mv $(d)/$(usr_lib)/libgcc-math.a $(d)/$(gcc_lib_dir)/
endif
ifeq ($(with_ssp),yes)
- mv $(d)/$(PFL)/$(libdir)/libssp_nonshared.a $(d)/$(gcc_lib_dir)/
+ mv $(d)/$(usr_lib)/libssp_nonshared.a $(d)/$(gcc_lib_dir)/
endif
ifeq ($(with_libssp),yes)
- mv $(d)/$(PFL)/$(libdir)/libssp*.a $(d_gcc)/$(gcc_lib_dir)/
- rm -f $(d)/$(PFL)/$(libdir)/libssp*.{la,so}
+ mv $(d)/$(usr_lib)/libssp*.a $(d_gcc)/$(gcc_lib_dir)/
+ rm -f $(d)/$(usr_lib)/libssp*.{la,so}
dh_link -p$(p_gcc) \
- /$(PFL)/$(libdir)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir)/libssp.so
+ /$(usr_lib)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir)/libssp.so
cp -p $(srcdir)/libssp/ChangeLog \
$(d_gcc)/$(docdir)/$(p_base)/libssp/changelog
endif
ifeq ($(with_gomp),yes)
- mv $(d)/$(PFL)/$(libdir)/libgomp*.{a,spec} $(d_gcc)/$(gcc_lib_dir)/
- rm -f $(d)/$(PFL)/$(libdir)/libgomp*.{la,so}
+ mv $(d)/$(usr_lib)/libgomp*.{a,spec} $(d_gcc)/$(gcc_lib_dir)/
+ rm -f $(d)/$(usr_lib)/libgomp*.{la,so}
dh_link -p$(p_gcc) \
- /$(PFL)/$(libdir)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir)/libgomp.so
+ /$(usr_lib)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir)/libgomp.so
cp -p $(srcdir)/libgomp/ChangeLog \
$(d_gcc)/$(docdir)/$(p_base)/gomp/changelog
endif
@@ -216,98 +216,97 @@ $(binary_stamp)-gcc-multi: $(install_dependencies)
ifeq ($(biarch64),yes)
DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
- $(gcc_lib_dir)/$(biarch64subdir)/{libgcc*,libgcov.a,*.o}
- rm -f $(d)/$(PFL)/$(lib64)/libgcc_s.so
+ $(gcc_lib_dir64)/{libgcc*,libgcov.a,*.o}
+ rm -f $(d)/$(usr_lib64)/libgcc_s.so
dh_link -p$(p_gcc_m) \
- $(RPF)/$(lib64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_64.so \
- $(RPF)/$(lib64)/libgcc_s.so.$(GCC_SONAME)
/$(gcc_lib_dir)/$(biarch64subdir)/libgcc_s.so
+ $(libgcc_dir64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_64.so \
+ $(libgcc_dir64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir64)/libgcc_s.so
ifeq ($(with_lib64gmath),yes)
- rm -f $(d)/$(PFL)/$(lib64)/libgcc-math.{la,so}
+ rm -f $(d)/$(usr_lib64)/libgcc-math.{la,so}
dh_link -p$(p_gcc_m) \
- /$(PFL)/$(lib64)/libgcc-math.so.$(GCC_SONAME)
/$(gcc_lib_dir)/$(biarch64subdir)/libgcc-math.so
- mv $(d)/$(PFL)/$(lib64)/libgcc-math.a $(d)/$(gcc_lib_dir)/$(biarch64subdir)/
+ /$(usr_lib64)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir64)/libgcc-math.so
+ mv $(d)/$(usr_lib64)/libgcc-math.a $(d)/$(gcc_lib_dir64)/
endif
endif
ifeq ($(biarch32),yes)
DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
- $(gcc_lib_dir)/$(biarch32subdir)/{libgcc*,libgcov.a,*.o}
- rm -f $(d)/$(PFL)/lib32/libgcc_s.so
- # sic - lib64gcc and libn32gcc go to root, but this one - to usr
+ $(gcc_lib_dir32)/{libgcc*,libgcov.a,*.o}
+ rm -f $(d)/$(libgcc_dir32)/libgcc_s.so
dh_link -p$(p_gcc_m) \
- $(PFL)/lib32/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_32.so \
- $(PFL)/lib32/libgcc_s.so.$(GCC_SONAME)
/$(gcc_lib_dir)/$(biarch32subdir)/libgcc_s.so
+ $(libgcc_dir32)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_32.so \
+ $(libgcc_dir32)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir32)/libgcc_s.so
ifeq ($(with_lib32gmath),yes)
- rm -f $(d)/$(PFL)/lib32/libgcc-math.{la,so}
+ rm -f $(d)/$(usr_lib32)/libgcc-math.{la,so}
dh_link -p$(p_gcc_m) \
- $(PFL)/lib32/libgcc-math.so.$(GCC_SONAME)
/$(gcc_lib_dir)/$(biarch32subdir)/libgcc-math.so
- mv $(d)/$(PFL)/lib32/libgcc-math.a $(d)/$(gcc_lib_dir)/$(biarch32subdir)/
+ $(usr_lib32)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir32)/libgcc-math.so
+ mv $(d)/$(usr_lib32)/libgcc-math.a $(d)/$(gcc_lib_dir32)/
endif
endif
ifeq ($(biarchn32),yes)
DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
- $(gcc_lib_dir)/$(biarchn32subdir)/{libgcc*,libgcov.a,*.o}
- rm -f $(d)/$(PFL)/$(libn32)/libgcc_s.so
+ $(gcc_lib_dirn32)/{libgcc*,libgcov.a,*.o}
+ rm -f $(d)/$(usr_libn32)/libgcc_s.so
dh_link -p$(p_gcc_m) \
- $(RPF)/$(libn32)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_n32.so \
- $(RPF)/$(libn32)/libgcc_s.so.$(GCC_SONAME)
/$(gcc_lib_dir)/$(biarchn32subdir)/libgcc_s.so
+ $(libgcc_dirn32)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_n32.so \
+ $(libgcc_dirn32)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dirn32)/libgcc_s.so
ifeq ($(with_libn32gmath),yes)
- rm -f $(d)/$(PFL)/$(libn32)/libgcc-math.{la,so}
+ rm -f $(d)/$(usr_libn32)/libgcc-math.{la,so}
dh_link -p$(p_gcc_m) \
- /$(PFL)/$(libn32)/libgcc-math.so.$(GCC_SONAME)
/$(gcc_lib_dir)/$(biarchn32subdir)/libgcc-math.so
- mv $(d)/$(PFL)/$(libn32)/libgcc-math.a $(d)/$(gcc_lib_dir)/$(biarchn32subdir)/
+ /$(usr_libn32)/libgcc-math.so.$(GCC_SONAME)
/$(gcc_lib_dirn32)/libgcc-math.so
+ mv $(d)/$(usr_libn32)/libgcc-math.a $(d)/$(gcc_lib_dirn32)/
endif
endif
ifeq ($(with_libssp),yes)
ifeq ($(biarch64),yes)
- mv $(d)/$(PFL)/$(lib64)/libssp*.a $(d_gcc_m)/$(gcc_lib_dir)/$(biarch64subdir)/
- rm -f $(d)/$(PFL)/$(lib64)/$(biarch64subdir)/libssp*.{la,so}
+ mv $(d)/$(usr_lib64)/libssp*.a $(d_gcc_m)/$(gcc_lib_dir64)/
+ rm -f $(d)/$(usr_lib64)/$(biarch64subdir)/libssp*.{la,so}
dh_link -p$(p_gcc_m) \
- /$(PFL)/$(lib64)/libssp.so.$(SSP_SONAME)
/$(gcc_lib_dir)/$(biarch64subdir)/libssp.so
+ /$(usr_lib64)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir64)/libssp.so
endif
ifeq ($(biarch32),yes)
- mv $(d)/$(PFL)/lib32/libssp*.a $(d_gcc_m)/$(gcc_lib_dir)/$(biarch32subdir)/
- rm -f $(d)/$(PFL)/lib32/$(biarch32subdir)/libssp*.{la,so}
+ mv $(d)/$(usr_lib32)/libssp*.a $(d_gcc_m)/$(gcc_lib_dir32)/
+ rm -f $(d)/$(usr_lib32)/$(biarch32subdir)/libssp*.{la,so}
dh_link -p$(p_gcc_m) \
- /$(PFL)/lib32/libssp.so.$(SSP_SONAME)
/$(gcc_lib_dir)/$(biarch32subdir)/libssp.so
+ /$(usr_lib32)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir32)/libssp.so
endif
ifeq ($(biarchn32),yes)
- mv $(d)/$(PFL)/$(libn32)/libssp*.a
$(d_gcc_m)/$(gcc_lib_dir)/$(biarchn32subdir)/
- rm -f $(d)/$(PFL)/$(libn32)/$(biarchn32subdir)/libssp*.{la,so}
+ mv $(d)/$(usr_libn32)/libssp*.a $(d_gcc_m)/$(gcc_lib_dirn32)/
+ rm -f $(d)/$(usr_libn32)/$(biarchn32subdir)/libssp*.{la,so}
dh_link -p$(p_gcc_m) \
- /$(PFL)/$(libn32)/libssp.so.$(SSP_SONAME)
/$(gcc_lib_dir)/$(biarchn32subdir)/libssp.so
+ /$(usr_libn32)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dirn32)/libssp.so
endif
endif
ifeq ($(with_ssp),yes)
ifeq ($(biarch64),yes)
- mv $(d)/$(PFL)/$(lib64)/libssp_nonshared.a
$(d_gcc_m)/$(gcc_lib_dir)/$(biarch64subdir)/
+ mv $(d)/$(usr_lib64)/libssp_nonshared.a $(d_gcc_m)/$(gcc_lib_dir64)/
endif
ifeq ($(biarch32),yes)
- mv $(d)/$(PFL)/lib32/libssp_nonshared.a
$(d_gcc_m)/$(gcc_lib_dir)/$(biarch32subdir)/
+ mv $(d)/$(usr_lib32)/libssp_nonshared.a $(d_gcc_m)/$(gcc_lib_dir32)/
endif
ifeq ($(biarchn32),yes)
- mv $(d)/$(PFL)/$(libn32)/libssp_nonshared.a
$(d_gcc_m)/$(gcc_lib_dir)/$(biarchn32subdir)/
+ mv $(d)/$(usr_libn32)/libssp_nonshared.a $(d_gcc_m)/$(gcc_lib_dirn32)/
endif
endif
ifeq ($(with_gomp),yes)
ifeq ($(biarch64),yes)
- mv $(d)/$(PFL)/$(lib64)/libgomp*.a
$(d_gcc_m)/$(gcc_lib_dir)/$(biarch64subdir)/
- rm -f $(d)/$(PFL)/$(lib64)/$(biarch64subdir)/libgomp*.{la,so}
+ mv $(d)/$(usr_lib64)/libgomp*.a $(d_gcc_m)/$(gcc_lib_dir64)/
+ rm -f $(d)/$(usr_lib64)/$(biarch64subdir)/libgomp*.{la,so}
dh_link -p$(p_gcc_m) \
- /$(PFL)/$(lib64)/libgomp.so.$(GOMP_SONAME)
/$(gcc_lib_dir)/$(biarch64subdir)/libgomp.so
+ /$(usr_lib64)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir64)/libgomp.so
endif
ifeq ($(biarch32),yes)
- mv $(d)/$(PFL)/lib32/libgomp*.a $(d_gcc_m)/$(gcc_lib_dir)/$(biarch32subdir)/
- rm -f $(d)/$(PFL)/lib32/$(biarch32subdir)/libgomp*.{la,so}
+ mv $(d)/$(usr_lib32)/libgomp*.a $(d_gcc_m)/$(gcc_lib_dir32)/
+ rm -f $(d)/$(usr_lib32)/$(biarch32subdir)/libgomp*.{la,so}
dh_link -p$(p_gcc_m) \
- /$(PFL)/lib32/libgomp.so.$(GOMP_SONAME)
/$(gcc_lib_dir)/$(biarch32subdir)/libgomp.so
+ /$(usr_lib32)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir32)/libgomp.so
endif
ifeq ($(biarchn32),yes)
- mv $(d)/$(PFL)/$(libn32)/libgomp*.a
$(d_gcc_m)/$(gcc_lib_dir)/$(biarchn32subdir)/
- rm -f $(d)/$(PFL)/$(libn32)/$(biarchn32subdir)/libgomp*.{la,so}
+ mv $(d)/$(usr_libn32)/libgomp*.a $(d_gcc_m)/$(gcc_lib_dirn32)/
+ rm -f $(d)/$(usr_libn32)/$(biarchn32subdir)/libgomp*.{la,so}
dh_link -p$(p_gcc_m) \
- /$(PFL)/$(libn32)/libgomp.so.$(GOMP_SONAME)
/$(gcc_lib_dir)/$(biarchn32subdir)/libgomp.so
+ /$(usr_libn32)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dirn32)/libgomp.so
endif
endif
diff --git a/debian/rules.d/binary-libgcc.mk b/debian/rules.d/binary-libgcc.mk
index ab7dde3..c18ec11 100644
--- a/debian/rules.d/binary-libgcc.mk
+++ b/debian/rules.d/binary-libgcc.mk
@@ -41,10 +41,10 @@ $(binary_stamp)-libgcc: $(install_dependencies)
rm -rf $(d_lgcc) $(d_lgccdbg)
dh_installdirs -p$(p_lgcc) \
$(docdir)/$(p_lgcc) \
- $(RPF)/$(libdir)
+ $(libgcc_dir)
ifeq ($(with_shared_libgcc),yes)
- mv $(d)/$(PFL)/$(libdir)/libgcc_s.so.$(GCC_SONAME)
$(d_lgcc)/$(RPF)/$(libdir)/.
+ mv $(d)/$(usr_lib)/libgcc_s.so.$(GCC_SONAME) $(d_lgcc)/$(libgcc_dir)/.
endif
ifeq ($(with_standalone_gcj),yes)
@@ -92,10 +92,10 @@ $(binary_stamp)-lib64gcc: $(install_dependencies)
rm -rf $(d_l64gcc) $(d_l64gccdbg)
dh_installdirs -p$(p_l64gcc) \
$(docdir)/$(p_l64gcc) \
- $(RPF)/lib64
+ $(libgcc_dir64)
ifeq ($(with_shared_libgcc),yes)
- mv $(d)/$(PFL)/lib64/libgcc_s.so.$(GCC_SONAME) $(d_l64gcc)/$(RPF)/lib64/.
+ mv $(d)/$(usr_lib64)/libgcc_s.so.$(GCC_SONAME) $(d_l64gcc)/$(libgcc_dir64)/.
endif
debian/dh_doclink -p$(p_l64gcc) $(p_base)
@@ -134,9 +134,9 @@ $(binary_stamp)-lib32gcc: $(install_dependencies)
dh_installdirs -p$(p_l32gcc) \
$(docdir)/$(p_l32gcc) \
- $(RPF)$(lib32)
- mv $(d)/$(lib32)/libgcc_s.so.$(GCC_SONAME) \
- $(d_l32gcc)/$(RPF)$(lib32)/.
+ $(libgcc_dir32)
+ mv $(d)/$(usr_lib32)/libgcc_s.so.$(GCC_SONAME) \
+ $(d_l32gcc)/$(libgcc_dir32)/.
debian/dh_doclink -p$(p_l32gcc) $(p_base)
debian/dh_doclink -p$(p_l32gccdbg) $(p_base)
@@ -172,9 +172,9 @@ $(binary_stamp)-libn32gcc: $(install_dependencies)
dh_installdirs -p$(p_ln32gcc) \
$(docdir)/$(p_ln32gcc) \
- $(RPF)/$(libn32)
- mv $(d)/$(PFL)/$(libn32)/libgcc_s.so.$(GCC_SONAME) \
- $(d_ln32gcc)/$(RPF)/$(libn32)/.
+ $(libgcc_dirn32)
+ mv $(d)/$(usr_libn32)/libgcc_s.so.$(GCC_SONAME) \
+ $(d_ln32gcc)/$(libgcc_dirn32)/.
debian/dh_doclink -p$(p_ln32gcc) $(p_base)
debian/dh_doclink -p$(p_ln32gccdbg) $(p_base)
diff --git a/debian/rules.d/binary-libgomp.mk b/debian/rules.d/binary-libgomp.mk
index 4e2cd57..736b681 100644
--- a/debian/rules.d/binary-libgomp.mk
+++ b/debian/rules.d/binary-libgomp.mk
@@ -15,8 +15,8 @@ define __do_gomp
mv $(install_stamp) $(install_stamp)-tmp
rm -rf $(d_l) $(d_d)
- dh_installdirs -p$(p_l) $(PFL)/$(2)
- DH_COMPAT=2 dh_movefiles -p$(p_l) $(PFL)/$(2)/libgomp.so.*
+ dh_installdirs -p$(p_l) $(2)
+ DH_COMPAT=2 dh_movefiles -p$(p_l) $(2)/libgomp.so.*
debian/dh_doclink -p$(p_l) $(p_base)
debian/dh_doclink -p$(p_d) $(p_base)
@@ -40,16 +40,16 @@ endef
# ----------------------------------------------------------------------
-do_gomp = $(call __do_gomp,$(1)gomp$(GOMP_SONAME),$(2))
+do_gomp = $(call __do_gomp,lib$(1)gomp$(GOMP_SONAME),$(usr_lib$(1)))
$(binary_stamp)-libgomp: $(install_stamp)
- $(call do_gomp,lib,$(libdir))
+ $(call do_gomp,)
$(binary_stamp)-lib64gomp: $(install_stamp)
- $(call do_gomp,lib64,lib64)
+ $(call do_gomp,64)
$(binary_stamp)-lib32gomp: $(install_stamp)
- $(call do_gomp,lib32,lib32)
+ $(call do_gomp,32)
$(binary_stamp)-libn32gomp: $(install_stamp)
- $(call do_gomp,libn32,lib32)
+ $(call do_gomp,n32)
diff --git a/debian/rules.d/binary-libmudflap.mk
b/debian/rules.d/binary-libmudflap.mk
index 5efb25e..3a079ea 100644
--- a/debian/rules.d/binary-libmudflap.mk
+++ b/debian/rules.d/binary-libmudflap.mk
@@ -24,9 +24,9 @@ define __do_mudflap
mv $(install_stamp) $(install_stamp)-tmp
rm -rf $(d_l) $(d_d)
- dh_installdirs -p$(p_l) $(PFL)/$(2)
+ dh_installdirs -p$(p_l) $(2)
DH_COMPAT=2 dh_movefiles -p$(p_l) \
- $(PFL)/$(2)/libmudflap*.so.*
+ $(2)/libmudflap*.so.*
debian/dh_doclink -p$(p_l) $(p_base)
debian/dh_doclink -p$(p_d) $(p_base)
@@ -50,31 +50,33 @@ define __do_mudflap
trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
endef
-do_mudflap = $(call __do_mudflap,$(1)mudflap$(MUDFLAP_SONAME),$(2))
+do_mudflap = $(call
__do_mudflap,lib$(1)mudflap$(MUDFLAP_SONAME),$(usr_lib$(1)))
-define do_mudflap_dev
+define __do_mudflap_dev
dh_installdirs -p$(p_mfd) $(1)
DH_COMPAT=2 dh_movefiles -p$(p_mfd) $(1)/libmudflap*.a
- rm -f $(d)/$(PFL)/$(2)/libmudflap*.so
- mv $(d)/$(PFL)/$(2)/libmudflap*.a $(d_mfd)/$(1)/
+ rm -f $(d)/$(2)/libmudflap*.so
+ mv $(d)/$(2)/libmudflap*.a $(d_mfd)/$(1)/
dh_link -p$(p_mfd) \
- /$(PFL)/$(2)/libmudflap.so.$(MUDLFLAP_SONAME) /$(1)/libmudflap.so \
- /$(PFL)/$(2)/libmudflapth.so.$(MUDFLAP_SONAME) /$(1)/libmudflapth.so
+ /$(2)/libmudflap.so.$(MUDLFLAP_SONAME) /$(1)/libmudflap.so \
+ /$(2)/libmudflapth.so.$(MUDFLAP_SONAME) /$(1)/libmudflapth.so
endef
+do_mudflap_dev = $(call __do_mudflap_dev,$(gcc_lib_dir$(1)),$(usr_lib$(1)))
+
# ----------------------------------------------------------------------
$(binary_stamp)-libmudflap: $(install_stamp)
- $(call do_mudflap,lib,$(libdir))
+ $(call do_mudflap,)
$(binary_stamp)-lib64mudflap: $(install_stamp)
- $(call do_mudflap,lib64,lib64)
+ $(call do_mudflap,64)
$(binary_stamp)-lib32mudflap: $(install_stamp)
- $(call do_mudflap,lib32,lib32)
+ $(call do_mudflap,32)
$(binary_stamp)-libn32mudflap: $(install_stamp)
- $(call do_mudflap,libn32,lib32)
+ $(call do_mudflap,n32)
$(binary_stamp)-libmudflapdev: $(install_stamp)
dh_testdir
@@ -86,15 +88,15 @@ $(binary_stamp)-libmudflapdev: $(install_stamp)
DH_COMPAT=2 dh_movefiles -p$(p_mfd) $(gcc_lib_dir)/include/mf-runtime.h
- $(call do_mudflap_dev,$(gcc_lib_dir),$(libdir))
+ $(call do_mudflap_dev,)
ifeq ($(with_lib32mudflap),yes)
- $(call do_mudflap_dev,$(gcc_lib_dir)/$(biarch32subdir),lib32)
+ $(call do_mudflap_dev,32)
endif
ifeq ($(with_lib64mudflap),yes)
- $(call do_mudflap_dev,$(gcc_lib_dir)/$(biarch64subdir),lib64)
+ $(call do_mudflap_dev,64)
endif
ifeq ($(with_libn32mudflap),yes)
- $(call do_mudflap_dev,$(gcc_lib_dir)/$(biarchn32subdir),lib32)
+ $(call do_mudflap_dev,n32)
endif
cp -p $(srcdir)/libmudflap/ChangeLog \
diff --git a/debian/rules.d/binary-libobjc.mk b/debian/rules.d/binary-libobjc.mk
index af4fe05..ed0e196 100644
--- a/debian/rules.d/binary-libobjc.mk
+++ b/debian/rules.d/binary-libobjc.mk
@@ -12,10 +12,10 @@ ifeq ($(with_libn32objc),yes)
endif
files_lobjc = \
- $(PFL)/$(2)/libobjc.so.*
+ $(2)/libobjc.so.*
ifeq ($(with_objc_gc),yes)
files_lobjc += \
- $(PFL)/$(2)/libobjc_gc.so.*
+ $(2)/libobjc_gc.so.*
endif
define __do_libobjc
@@ -25,7 +25,7 @@ define __do_libobjc
rm -rf $(d_l) $(d_d)
dh_installdirs -p$(p_l) \
- $(PFL)/$(2)
+ $(2)
DH_COMPAT=2 dh_movefiles -p$(p_l) \
$(files_lobjc)
@@ -51,16 +51,16 @@ endef
# ----------------------------------------------------------------------
-do_libobjc = $(call __do_libobjc,$(1)objc$(OBJC_SONAME),$(2))
+do_libobjc = $(call __do_libobjc,lib$(1)objc$(OBJC_SONAME),$(usr_lib$(1)))
$(binary_stamp)-libobjc: $(install_stamp)
- $(call do_libobjc,lib,$(libdir))
+ $(call do_libobjc,)
$(binary_stamp)-lib64objc: $(install_stamp)
- $(call do_libobjc,lib64,lib64)
+ $(call do_libobjc,64)
$(binary_stamp)-lib32objc: $(install_stamp)
- $(call do_libobjc,lib32,lib32)
+ $(call do_libobjc,32)
$(binary_stamp)-libn32objc: $(install_stamp)
- $(call do_libobjc,libn32,lib32)
+ $(call do_libobjc,n32)
diff --git a/debian/rules.d/binary-libstdcxx.mk
b/debian/rules.d/binary-libstdcxx.mk
index b661af5..809a312 100644
--- a/debian/rules.d/binary-libstdcxx.mk
+++ b/debian/rules.d/binary-libstdcxx.mk
@@ -56,7 +56,7 @@ d_libd = debian/$(p_libd)
dirs_dev = \
$(docdir)/$(p_base)/C++ \
- $(PFL)/$(libdir) \
+ $(usr_lib) \
$(gcc_lib_dir)/include \
$(cxx_inc_dir)
@@ -67,10 +67,10 @@ files_dev = \
dirs_dbg = \
$(docdir) \
- $(PFL)/$(libdir)/debug \
+ $(usr_lib)/debug \
$(gcc_lib_dir)
files_dbg = \
- $(PFL)/$(libdir)/debug/libstdc++.{a,so*}
+ $(usr_lib)/debug/libstdc++.{a,so*}
dirs_pic = \
$(docdir) \
@@ -124,10 +124,10 @@ $(binary_stamp)-libstdcxx: $(install_stamp)
rm -rf $(d_lib)
dh_installdirs -p$(p_lib) \
$(docdir) \
- $(PFL)/$(libdir)
+ $(usr_lib)
- cp -a $(d)/$(PFL)/$(libdir)/libstdc++.so.* \
- $(d_lib)/$(PFL)/$(libdir)/
+ cp -a $(d)/$(usr_lib)/libstdc++.so.* \
+ $(d_lib)/$(usr_lib)/
debian/dh_doclink -p$(p_lib) $(p_base)
debian/dh_rmemptydirs -p$(p_lib)
@@ -139,7 +139,7 @@ $(binary_stamp)-libstdcxx: $(install_stamp)
dh_makeshlibs -p$(p_lib)
$(call cross_mangle_shlibs,$(p_lib))
$(cross_shlibdeps) dh_shlibdeps \
- -L$(p_lgcc) -l:$(d)/$(PFL)/$(libdir):$(d_lgcc)/$(libdir):\
+ -L$(p_lgcc) -l:$(d)/$(usr_lib):$(d_lgcc)/$(libdir):\
-p$(p_lib)
$(call cross_mangle_substvars,$(p_lib))
@@ -165,10 +165,10 @@ $(binary_stamp)-lib64stdcxx: $(install_stamp)
rm -rf $(d_lib64)
dh_installdirs -p$(p_lib64) \
$(docdir) \
- $(PFL)/lib64
+ $(usr_lib64)
- cp -a $(d)/$(PFL)/lib64/libstdc++.so.* \
- $(d_lib64)/$(PFL)/lib64/.
+ cp -a $(d)/$(usr_lib64)/libstdc++.so.* \
+ $(d_lib64)/$(usr_lib64)/.
dh_strip -p$(p_lib64)
@@ -200,12 +200,12 @@ $(binary_stamp)-lib64stdcxxdbg: $(install_stamp)
rm -rf $(d_dbg64)
dh_installdirs -p$(p_dbg64) \
- $(PFL)/lib64
+ $(usr_lib64)
ifeq ($(with_lib64cxx),yes)
- cp -a $(d)/$(PFL)/lib64/libstdc++.so.* \
- $(d_dbg64)/$(PFL)/lib64/.
+ cp -a $(d)/$(usr_lib64)/libstdc++.so.* \
+ $(d_dbg64)/$(usr_lib64)/.
dh_strip -p$(p_dbg64) --keep-debug
- rm -f $(d_dbg64)/$(PFL)/lib64/libstdc++.so.*
+ rm -f $(d_dbg64)/$(usr_lib64)/libstdc++.so.*
ifneq ($(with_common_libs),yes)
: # remove the debug symbols for libstdc++ built by a newer version of GCC
rm -rf $(d_dbg64)/usr/lib/debug/$(PF)
@@ -215,8 +215,8 @@ endif
> debian/$(p_dbg64).substvars
ifeq ($(with_debug),yes)
- mv $(d)/$(PFL)/lib64/debug $(d_dbg64)/$(PFL)/lib64/.
- rm -f $(d_dbg64)/$(PFL)/lib64/debug/libstdc++_pic.a
+ mv $(d)/$(usr_lib64)/debug $(d_dbg64)/$(usr_lib64)/.
+ rm -f $(d_dbg64)/$(usr_lib64)/debug/libstdc++_pic.a
endif
$(cross_shlibdeps) dh_shlibdeps -p$(p_dbg64) \
@@ -247,10 +247,10 @@ $(binary_stamp)-lib32stdcxx: $(install_stamp)
dh_installdirs -p$(p_lib32) \
$(docdir) \
- $(lib32)
+ $(usr_lib32)
- cp -a $(d)/$(lib32)/libstdc++.so.* \
- $(d_lib32)/$(lib32)/.
+ cp -a $(d)/$(usr_lib32)/libstdc++.so.* \
+ $(d_lib32)/$(usr_lib32)/.
debian/dh_doclink -p$(p_lib32) $(p_base)
debian/dh_rmemptydirs -p$(p_lib32)
@@ -280,22 +280,22 @@ $(binary_stamp)-lib32stdcxxdbg: $(install_stamp)
rm -rf $(d_dbg32)
dh_installdirs -p$(p_dbg32) \
- $(lib32)
+ $(usr_lib32)
ifeq ($(with_lib32cxx),yes)
- cp -a $(d)/$(lib32)/libstdc++.so.* \
- $(d_dbg32)/$(lib32)/.
+ cp -a $(d)/$(usr_lib32)/libstdc++.so.* \
+ $(d_dbg32)/$(usr_lib32)/.
dh_strip -p$(p_dbg32) --keep-debug
ifneq ($(with_common_libs),yes)
: # remove the debug symbols for libstdc++ built by a newer version of GCC
rm -rf $(d_dbg32)/usr/lib/debug/$(PF)
endif
- rm -f $(d_dbg32)/$(lib32)/libstdc++.so.*
+ rm -f $(d_dbg32)/$(usr_lib32)/libstdc++.so.*
endif
ifeq ($(with_debug),yes)
- mv $(d)/$(lib32)/debug $(d_dbg32)/$(lib32)/.
- rm -f $(d_dbg32)/$(lib32)/debug/libstdc++_pic.a
+ mv $(d)/$(usr_lib32)/debug $(d_dbg32)/$(usr_lib32)/.
+ rm -f $(d_dbg32)/$(usr_lib32)/debug/libstdc++_pic.a
endif
debian/dh_doclink -p$(p_dbg32) $(p_base)
@@ -326,10 +326,10 @@ $(binary_stamp)-libn32stdcxx: $(install_stamp)
dh_installdirs -p$(p_libn32) \
$(docdir) \
- $(PFL)/$(libn32)
+ $(usr_libn32)
- cp -a $(d)/$(PFL)/$(libn32)/libstdc++.so.* \
- $(d_libn32)/$(PFL)/$(libn32)/.
+ cp -a $(d)/$(usr_libn32)/libstdc++.so.* \
+ $(d_libn32)/$(usr_libn32)/.
debian/dh_doclink -p$(p_libn32) $(p_base)
debian/dh_rmemptydirs -p$(p_libn32)
@@ -341,7 +341,7 @@ $(binary_stamp)-libn32stdcxx: $(install_stamp)
dh_makeshlibs -p$(p_libn32)
$(call cross_mangle_shlibs,$(p_libn32))
$(cross_shlibdeps) dh_shlibdeps -p$(p_libn32) \
- -L$(p_ln32gcc) -l:$(d)/$(PF)/$(libn32):$(d_ln32gcc)/$(libn32):
+ -L$(p_ln32gcc) -l:$(d)/$(usr_libn32):$(d_ln32gcc)/$(libn32):
$(call cross_mangle_substvars,$(p_libn32))
dh_gencontrol -p$(p_libn32) -- -v$(DEB_VERSION) $(common_substvars)
@@ -360,21 +360,21 @@ $(binary_stamp)-libn32stdcxxdbg: $(install_stamp)
rm -rf $(d_dbgn32)
dh_installdirs -p$(p_dbgn32) \
- $(PFL)/$(libn32)
+ $(usr_libn32)
ifeq ($(with_libn32cxx),yes)
- cp -a $(d)/$(PFL)/$(libn32)/libstdc++.so.* \
- $(d_dbgn32)/$(PFL)/$(libn32)/.
+ cp -a $(d)/$(usr_libn32)/libstdc++.so.* \
+ $(d_dbgn32)/$(usr_libn32)/.
dh_strip -p$(p_dbgn32) --keep-debug
ifneq ($(with_common_libs),yes)
: # remove the debug symbols for libstdc++ built by a newer version of GCC
rm -rf $(d_dbgn32)/usr/lib/debug/$(PF)
endif
- rm -f $(d_dbgn32)/$(PFL)/$(libn32)/libstdc++.so.*
+ rm -f $(d_dbgn32)/$(usr_libn32)/libstdc++.so.*
endif
ifeq ($(with_debug),yes)
- mv $(d)/$(PFL)/$(libn32)/debug $(d_dbgn32)/$(PFL)/$(libn32)/.
+ mv $(d)/$(usr_libn32)/debug $(d_dbgn32)/$(usr_libn32)/.
rm -f $(d_dbgn32)/$(libn32)/debug/libstdc++_pic.a
endif
@@ -415,14 +415,14 @@ $(binary_stamp)-libstdcxx-dev: $(libcxxdev_deps)
dh_installdirs -p$(p_dbg) $(dirs_dbg)
: # - correct libstdc++-v3 file locations
- mv $(d)/$(PFL)/$(libdir)/libsupc++.a $(d)/$(gcc_lib_dir)/
- mv $(d)/$(PFL)/$(libdir)/libstdc++.{a,so} $(d)/$(gcc_lib_dir)/
+ mv $(d)/$(usr_lib)/libsupc++.a $(d)/$(gcc_lib_dir)/
+ mv $(d)/$(usr_lib)/libstdc++.{a,so} $(d)/$(gcc_lib_dir)/
ln -sf ../../../$(DEB_TARGET_GNU_TYPE)/libstdc++.so.$(CXX_SONAME) \
$(d)/$(gcc_lib_dir)/libstdc++.so
- mv $(d)/$(PFL)/$(libdir)/libstdc++_pic.a $(d)/$(gcc_lib_dir)/
+ mv $(d)/$(usr_lib)/libstdc++_pic.a $(d)/$(gcc_lib_dir)/
- rm -f $(d)/$(PFL)/$(libdir)/debug/libstdc++_pic.a
- rm -f $(d)/$(PFL)/lib64/debug/libstdc++_pic.a
+ rm -f $(d)/$(usr_lib)/debug/libstdc++_pic.a
+ rm -f $(d)/$(usr_lib64)/debug/libstdc++_pic.a
: # remove precompiled headers
-find $(d) -type d -name '*.gch' | xargs rm -rf
@@ -438,7 +438,7 @@ ifeq ($(with_debug),yes)
endif
dh_link -p$(p_dev) \
- /$(PFL)/$(libdir)/libstdc++.so.$(CXX_SONAME) \
+ /$(usr_lib)/libstdc++.so.$(CXX_SONAME) \
/$(gcc_lib_dir)/libstdc++.so \
/$(cxx_inc_dir) /$(PFL)/include/c++/$(GCC_VERSION)
@@ -460,10 +460,10 @@ endif
$(d_pic)/$(gcc_lib_dir)/libstdc++_pic.map
ifeq ($(with_libcxx),yes)
- cp -a $(d)/$(PFL)/$(libdir)/libstdc++.so.* \
- $(d_dbg)/$(PFL)/$(libdir)/
+ cp -a $(d)/$(usr_lib)/libstdc++.so.* \
+ $(d_dbg)/$(usr_lib)/
dh_strip -p$(p_dbg) --keep-debug
- rm -f $(d_dbg)/$(PFL)/$(libdir)/libstdc++.so.*
+ rm -f $(d_dbg)/$(usr_lib)/libstdc++.so.*
endif
dh_strip -p$(p_dev) --dbg-package=$(p_dbg)
diff --git a/debian/rules.d/binary-nof.mk b/debian/rules.d/binary-nof.mk
index f4f7549..417dc86 100644
--- a/debian/rules.d/binary-nof.mk
+++ b/debian/rules.d/binary-nof.mk
@@ -5,7 +5,7 @@ d_nof = debian/$(p_nof)
dirs_nof = \
$(docdir) \
- $(PFL)/$(libdir)/nof
+ $(usr_lib)/nof
ifeq ($(with_cdev),yes)
dirs_nof += \
$(gcc_lib_dir)/nof
@@ -13,13 +13,13 @@ endif
ifeq ($(with_cdev),yes)
files_nof = \
- $(RPF)$(libdir)/libgcc_s_nof.so.$(GCC_SONAME) \
+ $(libgcc_dir)/libgcc_s_nof.so.$(GCC_SONAME) \
$(gcc_lib_dir)/libgcc_s_nof.so \
- $(PFL)/$(libdir)/nof \
+ $(usr_lib)/nof \
$(gcc_lib_dir)/nof
else
files_nof = \
- $(libdir)/libgcc_s_nof.so.$(GCC_SONAME)
+ $(usr_lib)/libgcc_s_nof.so.$(GCC_SONAME)
endif
# ----------------------------------------------------------------------
@@ -28,9 +28,9 @@ $(binary_stamp)-nof: $(install_stamp)
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
- mv $(d)/$(PFL)/$(libdir)/libgcc_s_nof.so.$(GCC_SONAME) $(d)/$(libdir)/.
- rm -f $(d)/$(PFL)/$(libdir)/libgcc_s_nof.so
- ln -sf $(RPF)/$(libdir)/libgcc_s_nof.so.$(GCC_SONAME) \
+ mv $(d)/$(usr_lib)/libgcc_s_nof.so.$(GCC_SONAME) $(d)/$(libgcc_dir)/.
+ rm -f $(d)/$(usr_lib)/libgcc_s_nof.so
+ ln -sf $(libgcc_dir)/libgcc_s_nof.so.$(GCC_SONAME) \
$(d)/$(gcc_lib_dir)/libgcc_s_nof.so
rm -rf $(d_nof)
diff --git a/debian/rules.d/binary-objc.mk b/debian/rules.d/binary-objc.mk
index 0fdcda5..520d295 100644
--- a/debian/rules.d/binary-objc.mk
+++ b/debian/rules.d/binary-objc.mk
@@ -24,18 +24,18 @@ $(binary_stamp)-objc: $(install_stamp)
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
- rm -f $(d)/$(PFL)/$(libdir)/libobjc.{la,so}
- mv $(d)/$(PFL)/$(libdir)/libobjc*.a $(d)/$(gcc_lib_dir)/
+ rm -f $(d)/$(usr_lib)/libobjc.{la,so}
+ mv $(d)/$(usr_lib)/libobjc*.a $(d)/$(gcc_lib_dir)/
rm -rf $(d_objc)
dh_installdirs -p$(p_objc) $(dirs_objc)
DH_COMPAT=2 dh_movefiles -p$(p_objc) $(files_objc)
dh_link -p$(p_objc) \
- /$(PFL)/$(libdir)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/libobjc.so
+ /$(usr_lib)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/libobjc.so
ifeq ($(with_objc_gc),yes)
dh_link -p$(p_objc) \
- /$(PFL)/$(libdir)/libobjc_gc.so.$(OBJC_SONAME) \
+ /$(usr_lib)/libobjc_gc.so.$(OBJC_SONAME) \
/$(gcc_lib_dir)/libobjc_gc.so
endif
@@ -72,36 +72,36 @@ $(binary_stamp)-objc-multi: $(install_stamp)
$(gcc_lib_dir)/$(biarchsubdirs)
ifeq ($(biarch64),yes)
- rm -f $(d)/$(PFL)/lib64/libobjc*.{la,so}
- mkdir -p $(d_objc_m)/$(gcc_lib_dir)/$(biarch64subdir)
- mv $(d)/$(PFL)/lib64/libobjc*.a $(d_objc_m)/$(gcc_lib_dir)/$(biarch64subdir)/
+ rm -f $(d)/$(usr_lib64)/libobjc*.{la,so}
+ mkdir -p $(d_objc_m)/$(gcc_lib_dir64)
+ mv $(d)/$(usr_lib64)/libobjc*.a $(d_objc_m)/$(gcc_lib_dir64)/
dh_link -p$(p_objc_m) \
- /$(PFL)/lib64/libobjc.so.$(OBJC_SONAME)
/$(gcc_lib_dir)/$(biarch64subdir)/libobjc.so
+ /$(usr_lib64)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir64)/libobjc.so
ifeq ($(with_objc_gc),yes)
dh_link -p$(p_objc_m) \
- /$(PFL)/lib64/libobjc_gc.so.$(OBJC_SONAME)
/$(gcc_lib_dir)/$(biarch64subdir)/libobjc_gc.so
+ /$(usr_lib64)/libobjc_gc.so.$(OBJC_SONAME) /$(gcc_lib_dir64)/libobjc_gc.so
endif
endif
ifeq ($(biarch32),yes)
- rm -f $(d)/$(PFL)/lib32/libobjc*.{la,so}
- mkdir -p $(d_objc_m)/$(gcc_lib_dir)/$(biarch32subdir)
- mv $(d)/$(PFL)/lib32/libobjc*.a $(d_objc_m)/$(gcc_lib_dir)/$(biarch32subdir)/
+ rm -f $(d)/$(usr_lib32)/libobjc*.{la,so}
+ mkdir -p $(d_objc_m)/$(gcc_lib_dir32)
+ mv $(d)/$(usr_lib32)/libobjc*.a $(d_objc_m)/$(gcc_lib_dir32)/
dh_link -p$(p_objc_m) \
- /$(PFL)/lib32/libobjc.so.$(OBJC_SONAME)
/$(gcc_lib_dir)/$(biarch32subdir)/libobjc.so
+ /$(usr_lib32)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir32)/libobjc.so
ifeq ($(with_objc_gc),yes)
dh_link -p$(p_objc_m) \
- /$(PFL)/lib32/libobjc_gc.so.$(OBJC_SONAME)
/$(gcc_lib_dir)/$(biarch32subdir)/libobjc_gc.so
+ /$(usr_lib32)/libobjc_gc.so.$(OBJC_SONAME) /$(gcc_lib_dir32)/libobjc_gc.so
endif
endif
ifeq ($(biarchn32),yes)
- rm -f $(d)/$(PFL)/$(libn32)/libobjc*.{la,so}
- mkdir -p $(d_objc_m)/$(gcc_lib_dir)/$(biarchn32subdir)
- mv $(d)/$(PFL)/$(libn32)/libobjc*.a
$(d_objc_m)/$(gcc_lib_dir)/$(biarchn32subdir)/
+ rm -f $(d)/$(usr_libn32)/libobjc*.{la,so}
+ mkdir -p $(d_objc_m)/$(gcc_lib_dirn32)
+ mv $(d)/$(usr_libn32)/libobjc*.a $(d_objc_m)/$(gcc_lib_dirn32)/
dh_link -p$(p_objc_m) \
- /$(PFL)/$(libn32)/libobjc.so.$(OBJC_SONAME)
/$(gcc_lib_dir)/$(biarchn32subdir)/libobjc.so
+ /$(usr_libn32)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dirn32)/libobjc.so
ifeq ($(with_objc_gc),yes)
dh_link -p$(p_objc_m) \
- /$(PFL)/$(libn32)/libobjc_gc.so.$(OBJC_SONAME)
/$(gcc_lib_dir)/$(biarchn32subdir)/libobjc_gc.so
+ /$(usr_libn32)/libobjc_gc.so.$(OBJC_SONAME) /$(gcc_lib_dirn32)/libobjc_gc.so
endif
endif
diff --git a/debian/rules2 b/debian/rules2
index 7dd8ae0..a813d60 100644
--- a/debian/rules2
+++ b/debian/rules2
@@ -599,6 +599,20 @@ p_d= $(1)-dbg$(cross_lib_arch)
d_l= debian/$(p_l)
d_d= debian/$(p_d)
+usr_lib = $(PFL)/$(libdir)
+usr_lib32 = $(PFL)/lib32
+usr_libn32 = $(PFL)/lib32
+usr_lib64 = $(PFL)/lib64
+
+gcc_lib_dir32 = $(gcc_lib_dir)/$(biarch32subdir)
+gcc_lib_dirn32 = $(gcc_lib_dir)/$(biarchn32subdir)
+gcc_lib_dir64 = $(gcc_lib_dir)/$(biarch64subdir)
+
+libgcc_dir = $(RPF)/$(libdir)
+libgcc_dir32 = $(PFL)/lib32 # yes, really; lib32gcc_s ends up in usr
+libgcc_dirn32 = $(RPF)/lib32
+libgcc_dir64 = $(RPF)/lib64
+
checkdirs = $(builddir)
ifeq ($(with_separate_libgcj),yes)
ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
--
1.7.1
>From 55514edb17cc168102992ec0ba10b81e82646b32 Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Sun, 29 Aug 2010 15:34:53 -0400
Subject: [PATCH 2/8] merge subarch stuff in gcc.mk
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
debian/rules.d/binary-gcc.mk | 169 ++++++++++++------------------------------
debian/rules.defs | 2 +
2 files changed, 50 insertions(+), 121 deletions(-)
diff --git a/debian/rules.d/binary-gcc.mk b/debian/rules.d/binary-gcc.mk
index ea7c400..2f82774 100644
--- a/debian/rules.d/binary-gcc.mk
+++ b/debian/rules.d/binary-gcc.mk
@@ -24,13 +24,12 @@ dirs_gcc = \
$(PF)/bin \
$(gcc_lexec_dir) \
$(gcc_lib_dir)/{include,include-fixed} \
- $(PF)/share/man/man1 $(libdir)
+ $(PF)/share/man/man1 $(libgcc_dir)
# XXX: what about triarch mapping?
files_gcc = \
$(PF)/bin/$(cmd_prefix){gcc,gcov}$(pkg_ver) \
$(gcc_lexec_dir)/collect2 \
- $(gcc_lib_dir)/{libgcc*,libgcov.a,*.o} \
$(gcc_lib_dir)/include/std*.h \
$(shell for h in \
README features.h arm_neon.h \
@@ -62,9 +61,6 @@ ifneq ($(GFDL_INVARIANT_FREE),yes)
$(PF)/share/man/man1/$(cmd_prefix){gcc,gcov}$(pkg_ver).1
endif
-ifeq ($(with_ssp),yes)
- files_gcc += $(gcc_lib_dir)/libssp_nonshared.a
-endif
ifeq ($(with_libssp),yes)
files_gcc += $(gcc_lib_dir)/include/ssp
endif
@@ -97,6 +93,35 @@ d_gcc_m = debian/$(p_gcc_m)
p_pld = gcc$(pkg_ver)-plugin-dev
d_pld = debian/$(p_pld)
+# install_gcc_lib(lib,soname,flavour,package)
+define install_gcc_lib
+ mv $(d)/$(usr_lib$(3))/$(1)*.a debian/$(4)/$(gcc_lib_dir$(3))/
+ rm -f $(d)/$(usr_lib$(3))/$(1)*.{la,so}
+ dh_link -p$(4) \
+ /$(usr_lib$(3))/$(1).so.$(2) /$(gcc_lib_dir$(3))/$(1).so
+
+endef
+
+# misc_gcc_libs(flavour,package)
+define misc_gcc_libs
+ dh_installdirs -p$(2) $(gcc_lib_dir$(1))
+ DH_COMPAT=2 dh_movefiles -p$(2) \
+ $(gcc_lib_dir$(1))/{libgcc*,libgcov.a,*.o}
+ $(if $(filter yes, $(with_lib$(1)gmath)),
+ $(call install_gcc_lib,libgcc-math,$(GCC_SONAME),$(1),$(2))
+ )
+ $(if $(filter yes, $(with_libssp)),
+ $(call install_gcc_lib,libssp,$(SSP_SONAME),$(1),$(2))
+ )
+ $(if $(filter yes, $(with_ssp)),
+ mv $(d)/$(usr_lib$(1))/libssp_nonshared.a \
+ debian/$(2)/$(gcc_lib_dir$(1))/;
+ )
+ $(if $(filter yes, $(with_gomp)),
+ $(call install_gcc_lib,libgomp,$(GOMP_SONAME),$(1),$(2))
+ )
+endef
+
# ----------------------------------------------------------------------
$(binary_stamp)-gcc: $(install_dependencies)
dh_testdir
@@ -106,6 +131,8 @@ $(binary_stamp)-gcc: $(install_dependencies)
rm -rf $(d_gcc)
dh_installdirs -p$(p_gcc) $(dirs_gcc)
+ $(call misc_gcc_libs,,$(p_gcc))
+
ifneq ($(DEB_STAGE),stage1) # stage1 builds static libgcc only
: # libgcc_s.so may be a linker script on some architectures
set -e; \
@@ -119,29 +146,12 @@ ifneq ($(DEB_STAGE),stage1) # stage1 builds
static libgcc only
$(gcc_lib_dir)/libgcc_s.so.$(GCC_SONAME); \
fi
endif
-ifeq ($(with_libgmath),yes)
- rm -f $(d)/$(usr_lib)/libgcc-math.{la,so}
- dh_link -p$(p_gcc) \
- /$(usr_lib)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc-math.so
- mv $(d)/$(usr_lib)/libgcc-math.a $(d)/$(gcc_lib_dir)/
-endif
-
-ifeq ($(with_ssp),yes)
- mv $(d)/$(usr_lib)/libssp_nonshared.a $(d)/$(gcc_lib_dir)/
-endif
ifeq ($(with_libssp),yes)
- mv $(d)/$(usr_lib)/libssp*.a $(d_gcc)/$(gcc_lib_dir)/
- rm -f $(d)/$(usr_lib)/libssp*.{la,so}
- dh_link -p$(p_gcc) \
- /$(usr_lib)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir)/libssp.so
cp -p $(srcdir)/libssp/ChangeLog \
$(d_gcc)/$(docdir)/$(p_base)/libssp/changelog
endif
ifeq ($(with_gomp),yes)
- mv $(d)/$(usr_lib)/libgomp*.{a,spec} $(d_gcc)/$(gcc_lib_dir)/
- rm -f $(d)/$(usr_lib)/libgomp*.{la,so}
- dh_link -p$(p_gcc) \
- /$(usr_lib)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir)/libgomp.so
+ mv $(d)/$(usr_lib)/libgomp*.spec $(d_gcc)/$(gcc_lib_dir)/
cp -p $(srcdir)/libgomp/ChangeLog \
$(d_gcc)/$(docdir)/$(p_base)/gomp/changelog
endif
@@ -204,111 +214,28 @@ endif
-find $(d) ! -type d
# ----------------------------------------------------------------------
+
+# do_gcc_multi(flavour)
+define do_gcc_multi
+ dh_installdirs -p$(p_gcc_m) $(libgcc_dir$(1))
+ $(call misc_gcc_libs,$(1),$(p_gcc_m))
+ rm -f $(d)/$(usr_lib$(1))/libgcc_s.so
+ dh_link -p$(p_gcc_m) \
+ $(libgcc_dir$(1))/libgcc_s.so.$(GCC_SONAME)
/$(gcc_lib_dir)/libgcc_s_$(1).so \
+ $(libgcc_dir$(1))/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir$(1))/libgcc_s.so
+
+endef
+
$(binary_stamp)-gcc-multi: $(install_dependencies)
dh_testdir
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
rm -rf $(d_gcc_m)
- dh_installdirs -p$(p_gcc_m) \
- $(docdir) \
- $(gcc_lib_dir)/$(biarchsubdirs) \
+ dh_installdirs -p$(p_gcc_m) $(docdir)
-ifeq ($(biarch64),yes)
- DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
- $(gcc_lib_dir64)/{libgcc*,libgcov.a,*.o}
- rm -f $(d)/$(usr_lib64)/libgcc_s.so
- dh_link -p$(p_gcc_m) \
- $(libgcc_dir64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_64.so \
- $(libgcc_dir64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir64)/libgcc_s.so
- ifeq ($(with_lib64gmath),yes)
- rm -f $(d)/$(usr_lib64)/libgcc-math.{la,so}
- dh_link -p$(p_gcc_m) \
- /$(usr_lib64)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir64)/libgcc-math.so
- mv $(d)/$(usr_lib64)/libgcc-math.a $(d)/$(gcc_lib_dir64)/
- endif
-endif
-ifeq ($(biarch32),yes)
- DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
- $(gcc_lib_dir32)/{libgcc*,libgcov.a,*.o}
- rm -f $(d)/$(libgcc_dir32)/libgcc_s.so
- dh_link -p$(p_gcc_m) \
- $(libgcc_dir32)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_32.so \
- $(libgcc_dir32)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir32)/libgcc_s.so
- ifeq ($(with_lib32gmath),yes)
- rm -f $(d)/$(usr_lib32)/libgcc-math.{la,so}
- dh_link -p$(p_gcc_m) \
- $(usr_lib32)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir32)/libgcc-math.so
- mv $(d)/$(usr_lib32)/libgcc-math.a $(d)/$(gcc_lib_dir32)/
- endif
-endif
-ifeq ($(biarchn32),yes)
- DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
- $(gcc_lib_dirn32)/{libgcc*,libgcov.a,*.o}
- rm -f $(d)/$(usr_libn32)/libgcc_s.so
- dh_link -p$(p_gcc_m) \
- $(libgcc_dirn32)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_n32.so \
- $(libgcc_dirn32)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dirn32)/libgcc_s.so
- ifeq ($(with_libn32gmath),yes)
- rm -f $(d)/$(usr_libn32)/libgcc-math.{la,so}
- dh_link -p$(p_gcc_m) \
- /$(usr_libn32)/libgcc-math.so.$(GCC_SONAME)
/$(gcc_lib_dirn32)/libgcc-math.so
- mv $(d)/$(usr_libn32)/libgcc-math.a $(d)/$(gcc_lib_dirn32)/
- endif
-endif
-
-ifeq ($(with_libssp),yes)
- ifeq ($(biarch64),yes)
- mv $(d)/$(usr_lib64)/libssp*.a $(d_gcc_m)/$(gcc_lib_dir64)/
- rm -f $(d)/$(usr_lib64)/$(biarch64subdir)/libssp*.{la,so}
- dh_link -p$(p_gcc_m) \
- /$(usr_lib64)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir64)/libssp.so
- endif
- ifeq ($(biarch32),yes)
- mv $(d)/$(usr_lib32)/libssp*.a $(d_gcc_m)/$(gcc_lib_dir32)/
- rm -f $(d)/$(usr_lib32)/$(biarch32subdir)/libssp*.{la,so}
- dh_link -p$(p_gcc_m) \
- /$(usr_lib32)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir32)/libssp.so
- endif
- ifeq ($(biarchn32),yes)
- mv $(d)/$(usr_libn32)/libssp*.a $(d_gcc_m)/$(gcc_lib_dirn32)/
- rm -f $(d)/$(usr_libn32)/$(biarchn32subdir)/libssp*.{la,so}
- dh_link -p$(p_gcc_m) \
- /$(usr_libn32)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dirn32)/libssp.so
- endif
-endif
-ifeq ($(with_ssp),yes)
- ifeq ($(biarch64),yes)
- mv $(d)/$(usr_lib64)/libssp_nonshared.a $(d_gcc_m)/$(gcc_lib_dir64)/
- endif
- ifeq ($(biarch32),yes)
- mv $(d)/$(usr_lib32)/libssp_nonshared.a $(d_gcc_m)/$(gcc_lib_dir32)/
- endif
- ifeq ($(biarchn32),yes)
- mv $(d)/$(usr_libn32)/libssp_nonshared.a $(d_gcc_m)/$(gcc_lib_dirn32)/
- endif
-endif
-
-ifeq ($(with_gomp),yes)
- ifeq ($(biarch64),yes)
- mv $(d)/$(usr_lib64)/libgomp*.a $(d_gcc_m)/$(gcc_lib_dir64)/
- rm -f $(d)/$(usr_lib64)/$(biarch64subdir)/libgomp*.{la,so}
- dh_link -p$(p_gcc_m) \
- /$(usr_lib64)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir64)/libgomp.so
- endif
- ifeq ($(biarch32),yes)
- mv $(d)/$(usr_lib32)/libgomp*.a $(d_gcc_m)/$(gcc_lib_dir32)/
- rm -f $(d)/$(usr_lib32)/$(biarch32subdir)/libgomp*.{la,so}
- dh_link -p$(p_gcc_m) \
- /$(usr_lib32)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir32)/libgomp.so
- endif
- ifeq ($(biarchn32),yes)
- mv $(d)/$(usr_libn32)/libgomp*.a $(d_gcc_m)/$(gcc_lib_dirn32)/
- rm -f $(d)/$(usr_libn32)/$(biarchn32subdir)/libgomp*.{la,so}
- dh_link -p$(p_gcc_m) \
- /$(usr_libn32)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dirn32)/libgomp.so
- endif
-endif
+ $(foreach flavour,$(flavours), \
+ $(call do_gcc_multi,$(flavour)))
debian/dh_doclink -p$(p_gcc_m) $(p_base)
debian/dh_rmemptydirs -p$(p_gcc_m)
diff --git a/debian/rules.defs b/debian/rules.defs
index 30d3dcd..2a0bb9d 100644
--- a/debian/rules.defs
+++ b/debian/rules.defs
@@ -956,12 +956,14 @@ biarch_cpu := $(strip $(patsubst
$(DEB_TARGET_GNU_CPU)=%,%, \
biarch64 := no
biarch32 := no
biarchn32 := no
+flavours :=
define gen_biarch
ifneq (yes,$$(call envfilt, biarch, , ,yes))
biarch$1archs :=
endif
ifneq (,$$(findstring /$$(DEB_TARGET_ARCH)/,$$(biarch$1archs)))
biarch$1 := yes
+ flavours += $1
#biarch$1subdir = $$(biarch_cpu)-$$(DEB_TARGET_GNU_SYSTEM)
biarch$1subdir = $1
ifeq ($$(with_libgcc),yes)
--
1.7.1
>From 46b539c3cb378a975f0b3b144ec6d09b111259d7 Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Sun, 29 Aug 2010 16:34:28 -0400
Subject: [PATCH 3/8] merge rules for libgcc biarch variants
note that d_lgcc et.al. are still needed for libstdcxx.mk
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
debian/rules.d/binary-libgcc.mk | 202 +++++++++++----------------------------
1 files changed, 54 insertions(+), 148 deletions(-)
diff --git a/debian/rules.d/binary-libgcc.mk b/debian/rules.d/binary-libgcc.mk
index c18ec11..b45a4b4 100644
--- a/debian/rules.d/binary-libgcc.mk
+++ b/debian/rules.d/binary-libgcc.mk
@@ -32,169 +32,75 @@ p_ln32gccdbg = libn32gcc$(GCC_SONAME)-dbg$(cross_lib_arch)
d_ln32gcc = debian/$(p_ln32gcc)
d_ln32gccdbg = debian/$(p_ln32gccdbg)
-# ----------------------------------------------------------------------
-$(binary_stamp)-libgcc: $(install_dependencies)
+define __do_libgcc
dh_testdir
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
- rm -rf $(d_lgcc) $(d_lgccdbg)
- dh_installdirs -p$(p_lgcc) \
- $(docdir)/$(p_lgcc) \
- $(libgcc_dir)
-
-ifeq ($(with_shared_libgcc),yes)
- mv $(d)/$(usr_lib)/libgcc_s.so.$(GCC_SONAME) $(d_lgcc)/$(libgcc_dir)/.
-endif
-
-ifeq ($(with_standalone_gcj),yes)
- debian/dh_doclink -p$(p_lgcc) $(p_jbase)
- debian/dh_doclink -p$(p_lgccdbg) $(p_jbase)
-else
- debian/dh_doclink -p$(p_lgcc) $(p_base)
- debian/dh_doclink -p$(p_lgccdbg) $(p_base)
-endif
- debian/dh_rmemptydirs -p$(p_lgcc)
- debian/dh_rmemptydirs -p$(p_lgccdbg)
- dh_strip -v -p$(p_lgcc) --dbg-package=$(p_lgccdbg)
- dh_compress -p$(p_lgcc) -p$(p_lgccdbg)
- dh_fixperms -p$(p_lgcc) -p$(p_lgccdbg)
-ifeq ($(with_shared_libgcc),yes)
- dh_makeshlibs -p$(p_lgcc) \
- -- -v$(DEB_LIBGCC_VERSION)
- $(call cross_mangle_shlibs,$(p_lgcc))
- ifeq ($(DEB_TARGET_ARCH),armel)
- grep -q '^ __aeabi' $(d_lgcc)/DEBIAN/symbols \
- || cat debian/libgcc1.symbols.aeabi >> $(d_lgcc)/DEBIAN/symbols
- endif
-endif
- $(cross_shlibdeps) dh_shlibdeps -p$(p_lgcc)
- $(call cross_mangle_substvars,$(p_lgcc))
- dh_gencontrol -p$(p_lgcc) -p$(p_lgccdbg) \
+ rm -rf $(d_l) $(d_d)
+
+ dh_installdirs -p$(p_l) \
+ $(docdir)/$(p_l) \
+ $(libgcc_dir$(2))
+ $(if $(filter yes,$(with_shared_libgcc)),
+ mv $(d)/$(usr_lib$(2))/libgcc_s.so.$(GCC_SONAME) \
+ $(d_l)/$(libgcc_dir$(2))/.
+ )
+
+ debian/dh_doclink -p$(p_l) $(if $(3),$(3),$(p_base))
+ debian/dh_doclink -p$(p_d) $(if $(3),$(3),$(p_base))
+ debian/dh_rmemptydirs -p$(p_l)
+ debian/dh_rmemptydirs -p$(p_d)
+ dh_strip -p$(p_l) --dbg-package=$(p_d)
+
+ $(if $(filter yes,$(with_shared_libgcc)),
+ dh_makeshlibs -p$(p_l) -p$(p_d) \
+ -- -v$(DEB_LIBGCC_VERSION)
+ $(call cross_mangle_shlibs,$(p_l))
+ $(if $(filter $(DEB_TARGET_ARCH),armel),
+ grep -q '^ __aeabi' $(d_l)/DEBIAN/symbols \
+ || cat debian/libgcc1.symbols.aeabi \
+ >> $(d_l)/DEBIAN/symbols
+ )
+ )
+
+ $(cross_shlibdeps) dh_shlibdeps -p$(p_l)
+ $(call cross_mangle_substvars,$(p_l))
+
+ dh_compress -p$(p_l) -p$(p_d)
+ dh_fixperms -p$(p_l) -p$(p_d)
+ dh_gencontrol -p$(p_l) -p$(p_d) \
-- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
+ $(call cross_mangle_control,$(p_l))
- mkdir -p $(d_lgcc)/usr/share/lintian/overrides
- echo '$(p_lgcc): package-name-doesnt-match-sonames' \
- > $(d_lgcc)/usr/share/lintian/overrides/$(p_lgcc)
+ $(if $(2),, # only for native
+ mkdir -p $(d_l)/usr/share/lintian/overrides
+ echo '$(p_l): package-name-doesnt-match-sonames' \
+ > $(d_l)/usr/share/lintian/overrides/$(p_l)
+ )
- dh_installdeb -p$(p_lgcc) -p$(p_lgccdbg)
- dh_md5sums -p$(p_lgcc) -p$(p_lgccdbg)
- dh_builddeb -p$(p_lgcc) -p$(p_lgccdbg)
+ dh_installdeb -p$(p_l) -p$(p_d)
+ dh_md5sums -p$(p_l) -p$(p_d)
+ dh_builddeb -p$(p_l) -p$(p_d)
trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+endef
+do_libgcc = $(call __do_libgcc,lib$(1)gcc$(GCC_SONAME),$(1),$(2))
# ----------------------------------------------------------------------
-$(binary_stamp)-lib64gcc: $(install_dependencies)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_l64gcc) $(d_l64gccdbg)
- dh_installdirs -p$(p_l64gcc) \
- $(docdir)/$(p_l64gcc) \
- $(libgcc_dir64)
-
-ifeq ($(with_shared_libgcc),yes)
- mv $(d)/$(usr_lib64)/libgcc_s.so.$(GCC_SONAME) $(d_l64gcc)/$(libgcc_dir64)/.
-endif
- debian/dh_doclink -p$(p_l64gcc) $(p_base)
- debian/dh_doclink -p$(p_l64gccdbg) $(p_base)
- debian/dh_rmemptydirs -p$(p_l64gcc)
- debian/dh_rmemptydirs -p$(p_l64gccdbg)
- dh_strip -p$(p_l64gcc) --dbg-package=$(p_l64gccdbg)
- dh_compress -p$(p_l64gcc) -p$(p_l64gccdbg)
- dh_fixperms -p$(p_l64gcc) -p$(p_l64gccdbg)
-
-ifeq ($(with_shared_libgcc),yes)
- dh_makeshlibs -p$(p_l64gcc) \
- -- -v$(DEB_LIBGCC_VERSION)
- $(call cross_mangle_shlibs,$(p_l64gcc))
+$(binary_stamp)-libgcc: $(install_dependencies)
+ifeq ($(with_standalone_gcj),yes)
+ $(call do_libgcc,,$(p_jbase))
+else
+ $(call do_libgcc,,)
endif
- $(cross_shlibdeps) dh_shlibdeps -p$(p_l64gcc)
- $(call cross_mangle_substvars,$(p_l64gcc))
-
- dh_gencontrol -p$(p_l64gcc) -p$(p_l64gccdbg) \
- -- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
- $(call cross_mangle_control,$(p_l64gcc))
- dh_installdeb -p$(p_l64gcc) -p$(p_l64gccdbg)
- dh_md5sums -p$(p_l64gcc) -p$(p_l64gccdbg)
- dh_builddeb -p$(p_l64gcc) -p$(p_l64gccdbg)
-
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
-# ----------------------------------------------------------------------
+$(binary_stamp)-lib64gcc: $(install_dependencies)
+ $(call do_libgcc,64,)
$(binary_stamp)-lib32gcc: $(install_dependencies)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_l32gcc) $(d_l32gccdbg)
-
- dh_installdirs -p$(p_l32gcc) \
- $(docdir)/$(p_l32gcc) \
- $(libgcc_dir32)
- mv $(d)/$(usr_lib32)/libgcc_s.so.$(GCC_SONAME) \
- $(d_l32gcc)/$(libgcc_dir32)/.
-
- debian/dh_doclink -p$(p_l32gcc) $(p_base)
- debian/dh_doclink -p$(p_l32gccdbg) $(p_base)
- debian/dh_rmemptydirs -p$(p_l32gcc)
- debian/dh_rmemptydirs -p$(p_l32gccdbg)
- dh_strip -p$(p_l32gcc) --dbg-package=$(p_l32gccdbg)
-
- dh_makeshlibs -p$(p_l32gcc) -p$(p_l32gccdbg) \
- -- -v$(DEB_LIBGCC_VERSION)
- $(call cross_mangle_shlibs,$(p_l32gcc))
- $(cross_shlibdeps) dh_shlibdeps -p$(p_l32gcc)
- $(call cross_mangle_substvars,$(p_l32gcc))
-
- dh_compress -p$(p_l32gcc) -p$(p_l32gccdbg)
- dh_fixperms -p$(p_l32gcc) -p$(p_l32gccdbg)
- dh_gencontrol -p$(p_l32gcc) -p$(p_l32gccdbg) \
- -- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
- rm -f debian/lib32gcc1.preinst
- dh_installdeb -p$(p_l32gcc) -p$(p_l32gccdbg)
- dh_md5sums -p$(p_l32gcc) -p$(p_l32gccdbg)
- dh_builddeb -p$(p_l32gcc) -p$(p_l32gccdbg)
-
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
-
-# ----------------------------------------------------------------------
+ $(call do_libgcc,32,)
$(binary_stamp)-libn32gcc: $(install_dependencies)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_ln32gcc) $(d_ln32gccdbg)
-
- dh_installdirs -p$(p_ln32gcc) \
- $(docdir)/$(p_ln32gcc) \
- $(libgcc_dirn32)
- mv $(d)/$(usr_libn32)/libgcc_s.so.$(GCC_SONAME) \
- $(d_ln32gcc)/$(libgcc_dirn32)/.
-
- debian/dh_doclink -p$(p_ln32gcc) $(p_base)
- debian/dh_doclink -p$(p_ln32gccdbg) $(p_base)
- debian/dh_rmemptydirs -p$(p_ln32gcc)
- debian/dh_rmemptydirs -p$(p_ln32gccdbg)
- dh_strip -p$(p_ln32gcc) --dbg-package=$(p_ln32gccdbg)
-
- dh_makeshlibs -p$(p_ln32gcc) -p$(p_ln32gccdbg) \
- -- -v$(DEB_LIBGCC_VERSION)
- $(call cross_mangle_shlibs,$(p_ln32gcc))
- $(cross_shlibdeps) dh_shlibdeps -p$(p_ln32gcc)
- $(call cross_mangle_substvars,$(p_ln32gcc))
-
- dh_compress -p$(p_ln32gcc) -p$(p_ln32gccdbg)
- dh_fixperms -p$(p_ln32gcc) -p$(p_ln32gccdbg)
- dh_gencontrol -p$(p_ln32gcc) -p$(p_ln32gccdbg) \
- -- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
- $(call cross_mangle_control,$(p_ln32gcc))
- dh_installdeb -p$(p_ln32gcc) -p$(p_ln32gccdbg)
- dh_md5sums -p$(p_ln32gcc) -p$(p_ln32gccdbg)
- dh_builddeb -p$(p_ln32gcc) -p$(p_ln32gccdbg)
-
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+ $(call do_libgcc,n32,)
--
1.7.1
>From 5bbefba34be979725d80e90e21e414cb89d409eb Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Mon, 30 Aug 2010 18:09:30 -0400
Subject: [PATCH 4/8] fix NO_BIARCH handling of with_lib*
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
debian/rules.defs | 12 +++++++++---
1 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/debian/rules.defs b/debian/rules.defs
index 2a0bb9d..f9ac9f8 100644
--- a/debian/rules.defs
+++ b/debian/rules.defs
@@ -1047,30 +1047,36 @@ endif
ifeq ($(no_biarch_libs),yes)
with_lib64gcc := no
with_lib64cxx := no
+ with_lib64cxxdbg := no
with_lib64objc := no
with_lib64ffi := no
with_lib64gcj := no
- with_lib64fortran := no
+ with_lib64gfortran := no
with_lib64mudflap := no
with_lib64ssp := no
+ with_lib64gomp := no
with_lib32gcc := no
with_lib32cxx := no
+ with_lib32cxxdbg := no
with_lib32objc := no
with_lib32ffi := no
with_lib32gcj := no
- with_lib32fortran := no
+ with_lib32gfortran := no
with_lib32mudflap := no
with_lib32ssp := no
+ with_lib32gomp := no
with_libn32gcc := no
with_libn32cxx := no
+ with_libn32cxxdbg := no
with_libn32objc := no
with_libn32ffi := no
with_libn32gcj := no
- with_libn32fortran := no
+ with_libn32gfortran := no
with_libn32mudflap := no
with_libn32ssp := no
+ with_libn32gomp := no
ifeq ($(PKGSOURCE),gcc-snapshot)
#biarch64 := disabled for snapshot build
--
1.7.1
>From ce0cef3d862a27da6f2911274f03e2ce7589e22e Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Tue, 31 Aug 2010 13:05:39 -0400
Subject: [PATCH 5/8] merge rules for libstdc++, fixes
n32 variant of libstdc++-dbg removed _pic.a from the wrong place
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
debian/rules.d/binary-libstdcxx.mk | 334 +++++++++---------------------------
1 files changed, 80 insertions(+), 254 deletions(-)
diff --git a/debian/rules.d/binary-libstdcxx.mk
b/debian/rules.d/binary-libstdcxx.mk
index 809a312..a245f16 100644
--- a/debian/rules.d/binary-libstdcxx.mk
+++ b/debian/rules.d/binary-libstdcxx.mk
@@ -51,7 +51,6 @@ d_pic = debian/$(p_pic)
d_dbg = debian/$(p_dbg)
d_dbg64 = debian/$(p_dbg64)
d_dbg32 = debian/$(p_dbg32)
-d_dbgn32= debian/$(p_dbgn32)
d_libd = debian/$(p_libd)
dirs_dev = \
@@ -116,285 +115,111 @@ debian/README.libstdc++-baseline:
fi
# ----------------------------------------------------------------------
-$(binary_stamp)-libstdcxx: $(install_stamp)
+define __do_libstdcxx
dh_testdir
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
- rm -rf $(d_lib)
- dh_installdirs -p$(p_lib) \
- $(docdir) \
- $(usr_lib)
-
- cp -a $(d)/$(usr_lib)/libstdc++.so.* \
- $(d_lib)/$(usr_lib)/
-
- debian/dh_doclink -p$(p_lib) $(p_base)
- debian/dh_rmemptydirs -p$(p_lib)
-
- dh_strip -p$(p_lib)
- dh_compress -p$(p_lib)
- dh_fixperms -p$(p_lib)
-
- dh_makeshlibs -p$(p_lib)
- $(call cross_mangle_shlibs,$(p_lib))
- $(cross_shlibdeps) dh_shlibdeps \
- -L$(p_lgcc) -l:$(d)/$(usr_lib):$(d_lgcc)/$(libdir):\
- -p$(p_lib)
- $(call cross_mangle_substvars,$(p_lib))
-
- dh_gencontrol -p$(p_lib) -- -v$(DEB_VERSION) $(common_substvars)
- dh_installdeb -p$(p_lib)
- dh_md5sums -p$(p_lib)
- dh_builddeb -p$(p_lib)
-
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
-
-# ----------------------------------------------------------------------
-
-libc64_map = i386=amd64 sparc=sparc64 powerpc=ppc64 s390=s390x
mips=mips64 mipsel=mips64
-libc64_name = $(patsubst $(DEB_TARGET_ARCH)=%,%, \
- $(filter $(DEB_TARGET_ARCH)=%,$(libc64_map)))
-libc64_dep = $(if $(libc64_name),libc6-$(libc64_name)$(cross_lib_arch))
+ rm -rf $(d_l)
-$(binary_stamp)-lib64stdcxx: $(install_stamp)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_lib64)
- dh_installdirs -p$(p_lib64) \
+ dh_installdirs -p$(p_l) \
$(docdir) \
- $(usr_lib64)
-
- cp -a $(d)/$(usr_lib64)/libstdc++.so.* \
- $(d_lib64)/$(usr_lib64)/.
+ $(usr_lib$(2))
- dh_strip -p$(p_lib64)
+ cp -a $(d)/$(usr_lib$(2))/libstdc++.so.* \
+ $(d_l)/$(usr_lib$(2))/.
- debian/dh_doclink -p$(p_lib64) $(p_base)
- debian/dh_rmemptydirs -p$(p_lib64)
+ debian/dh_doclink -p$(p_l) $(p_base)
+ debian/dh_rmemptydirs -p$(p_l)
- dh_compress -p$(p_lib64)
- dh_fixperms -p$(p_lib64)
+ dh_strip -p$(p_l)
+ dh_compress -p$(p_l)
+ dh_fixperms -p$(p_l)
- dh_makeshlibs -p$(p_lib64)
- $(call cross_mangle_shlibs,$(p_lib64))
- $(cross_shlibdeps) dh_shlibdeps -p$(p_lib64) \
- -L $(p_l64gcc) -l:$(d)/$(PF)/lib64:$(d_l64gcc)/lib64
- $(call cross_mangle_substvars,$(p_lib64))
+ dh_makeshlibs -p$(p_l)
+ $(call cross_mangle_shlibs,$(p_l))
+ $(cross_shlibdeps) dh_shlibdeps -p$(p_l) \
+ -L$(p_l$(2)gcc) -l:$(d)/$(usr_lib$(2)):
+ $(call cross_mangle_substvars,$(p_l))
- dh_gencontrol -p$(p_lib64) -- -v$(DEB_VERSION) $(common_substvars)
- $(call cross_mangle_control,$(p_lib64))
- dh_installdeb -p$(p_lib64)
- dh_md5sums -p$(p_lib64)
- dh_builddeb -p$(p_lib64)
+ dh_gencontrol -p$(p_l) -- -v$(DEB_VERSION) $(common_substvars)
+ $(call cross_mangle_control,$(p_l))
+ dh_installdeb -p$(p_l)
+ dh_md5sums -p$(p_l)
+ dh_builddeb -p$(p_l)
trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+endef
-# ----------------------------------------------------------------------
-$(binary_stamp)-lib64stdcxxdbg: $(install_stamp)
+define __do_libstdcxx_dbg
dh_testdir
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
- rm -rf $(d_dbg64)
- dh_installdirs -p$(p_dbg64) \
- $(usr_lib64)
-ifeq ($(with_lib64cxx),yes)
- cp -a $(d)/$(usr_lib64)/libstdc++.so.* \
- $(d_dbg64)/$(usr_lib64)/.
- dh_strip -p$(p_dbg64) --keep-debug
- rm -f $(d_dbg64)/$(usr_lib64)/libstdc++.so.*
- ifneq ($(with_common_libs),yes)
- : # remove the debug symbols for libstdc++ built by a newer version of GCC
- rm -rf $(d_dbg64)/usr/lib/debug/$(PF)
- endif
-endif
- echo 'shlibs:Depends=$(p_l64gcc) (>= $(DEB_LIBGCC_SOVERSION)),
$(libc64_dep)' \
- > debian/$(p_dbg64).substvars
-
-ifeq ($(with_debug),yes)
- mv $(d)/$(usr_lib64)/debug $(d_dbg64)/$(usr_lib64)/.
- rm -f $(d_dbg64)/$(usr_lib64)/debug/libstdc++_pic.a
-endif
-
- $(cross_shlibdeps) dh_shlibdeps -p$(p_dbg64) \
- -L$(p_l64gcc) -l:$(d)/$(PF)/lib64:$(d_l64gcc)/lib64:
- $(call cross_mangle_substvars,$(p_dbg64))
-
- debian/dh_doclink -p$(p_dbg64) $(p_base)
- debian/dh_rmemptydirs -p$(p_dbg64)
-
- dh_compress -p$(p_dbg64)
- dh_fixperms -p$(p_dbg64)
- dh_gencontrol -p$(p_dbg64) -- -v$(DEB_VERSION) $(common_substvars)
- $(call cross_mangle_control,$(p_dbg64))
-
- dh_installdeb -p$(p_dbg64)
- dh_md5sums -p$(p_dbg64)
- dh_builddeb -p$(p_dbg64)
+ rm -rf $(d_d)
+ dh_installdirs -p$(p_d) \
+ $(usr_lib$(2))
+
+ $(if $(filter yes,$(with_lib$(2)cxx)),
+ cp -a $(d)/$(usr_lib$(2))/libstdc++.so.* \
+ $(d_d)/$(usr_lib$(2))/.;
+ dh_strip -p$(p_d) --keep-debug;
+ $(if $(filter yes,$(with_common_libs)),, # if !with_common_libs
+ # remove the debug symbols for libstdc++
+ # built by a newer version of GCC
+ rm -rf $(d_d)/usr/lib/debug/$(PF);
+ )
+ rm -f $(d_d)/$(usr_lib$(2))/libstdc++.so.*
+ )
+
+ $(if $(filter yes,$(with_debug)),
+ mv $(d)/$(usr_lib$(2))/debug $(d_d)/$(usr_lib$(2))/.;
+ rm -f $(d_d)/$(usr_lib$(2))/debug/libstdc++_pic.a
+ )
+
+ $(cross_shlibdeps) dh_shlibdeps -p$(p_d) \
+ -L$(p_l$(2)gcc) -l:$(d)/$(usr_lib$(2)):
+ $(call cross_mangle_substvars,$(p_d))
+
+ debian/dh_doclink -p$(p_d) $(p_base)
+ debian/dh_rmemptydirs -p$(p_d)
+
+ dh_compress -p$(p_d)
+ dh_fixperms -p$(p_d)
+ dh_gencontrol -p$(p_d) -- -v$(DEB_VERSION) $(common_substvars)
+ $(call cross_mangle_control,$(p_d))
+
+ dh_installdeb -p$(p_d)
+ dh_md5sums -p$(p_d)
+ dh_builddeb -p$(p_d)
trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+endef
-# ----------------------------------------------------------------------
-$(binary_stamp)-lib32stdcxx: $(install_stamp)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_lib32)
-
- dh_installdirs -p$(p_lib32) \
- $(docdir) \
- $(usr_lib32)
-
- cp -a $(d)/$(usr_lib32)/libstdc++.so.* \
- $(d_lib32)/$(usr_lib32)/.
-
- debian/dh_doclink -p$(p_lib32) $(p_base)
- debian/dh_rmemptydirs -p$(p_lib32)
-
- dh_strip -p$(p_lib32)
- dh_compress -p$(p_lib32)
- dh_fixperms -p$(p_lib32)
-
- dh_makeshlibs -p$(p_lib32)
- $(call cross_mangle_shlibs,$(p_lib32))
- $(cross_shlibdeps) dh_shlibdeps -p$(p_lib32) \
- -L$(p_l32gcc) -l:$(d)/$(PF)/lib32:$(d_l32gcc)/lib32:
- $(call cross_mangle_substvars,$(p_lib32))
-
- dh_gencontrol -p$(p_lib32) -- -v$(DEB_VERSION) $(common_substvars)
- dh_installdeb -p$(p_lib32)
- dh_md5sums -p$(p_lib32)
- dh_builddeb -p$(p_lib32)
-
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+do_libstdcxx = $(call __do_libstdcxx,lib$(1)stdc++$(CXX_SONAME),$(1))
+do_libstdcxx_dbg = $(call
__do_libstdcxx_dbg,lib$(1)stdc++$(CXX_SONAME)$(libstdc_ext),$(1))
# ----------------------------------------------------------------------
-$(binary_stamp)-lib32stdcxxdbg: $(install_stamp)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_dbg32)
- dh_installdirs -p$(p_dbg32) \
- $(usr_lib32)
-
-ifeq ($(with_lib32cxx),yes)
- cp -a $(d)/$(usr_lib32)/libstdc++.so.* \
- $(d_dbg32)/$(usr_lib32)/.
- dh_strip -p$(p_dbg32) --keep-debug
- ifneq ($(with_common_libs),yes)
- : # remove the debug symbols for libstdc++ built by a newer version of GCC
- rm -rf $(d_dbg32)/usr/lib/debug/$(PF)
- endif
- rm -f $(d_dbg32)/$(usr_lib32)/libstdc++.so.*
-endif
-
-ifeq ($(with_debug),yes)
- mv $(d)/$(usr_lib32)/debug $(d_dbg32)/$(usr_lib32)/.
- rm -f $(d_dbg32)/$(usr_lib32)/debug/libstdc++_pic.a
-endif
-
- debian/dh_doclink -p$(p_dbg32) $(p_base)
- debian/dh_rmemptydirs -p$(p_dbg32)
-
- dh_compress -p$(p_dbg32)
- dh_fixperms -p$(p_dbg32)
-
- $(cross_shlibdeps) dh_shlibdeps -p$(p_dbg32) \
- -L$(p_l32gcc) -l:$(d)/$(PF)/lib32:$(d_l32gcc)/lib32:
- $(call cross_mangle_substvars,$(p_dbg32))
-
- dh_gencontrol -p$(p_dbg32) -- -v$(DEB_VERSION) $(common_substvars)
+$(binary_stamp)-libstdcxx: $(install_stamp)
+ $(call do_libstdcxx,)
- dh_installdeb -p$(p_dbg32)
- dh_md5sums -p$(p_dbg32)
- dh_builddeb -p$(p_dbg32)
+$(binary_stamp)-lib64stdcxx: $(install_stamp)
+ $(call do_libstdcxx,64)
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+$(binary_stamp)-lib32stdcxx: $(install_stamp)
+ $(call do_libstdcxx,32)
-# ----------------------------------------------------------------------
$(binary_stamp)-libn32stdcxx: $(install_stamp)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_libn32)
-
- dh_installdirs -p$(p_libn32) \
- $(docdir) \
- $(usr_libn32)
-
- cp -a $(d)/$(usr_libn32)/libstdc++.so.* \
- $(d_libn32)/$(usr_libn32)/.
-
- debian/dh_doclink -p$(p_libn32) $(p_base)
- debian/dh_rmemptydirs -p$(p_libn32)
+ $(call do_libstdcxx,n32)
- dh_strip -p$(p_libn32)
- dh_compress -p$(p_libn32)
- dh_fixperms -p$(p_libn32)
-
- dh_makeshlibs -p$(p_libn32)
- $(call cross_mangle_shlibs,$(p_libn32))
- $(cross_shlibdeps) dh_shlibdeps -p$(p_libn32) \
- -L$(p_ln32gcc) -l:$(d)/$(usr_libn32):$(d_ln32gcc)/$(libn32):
- $(call cross_mangle_substvars,$(p_libn32))
-
- dh_gencontrol -p$(p_libn32) -- -v$(DEB_VERSION) $(common_substvars)
- $(call cross_mangle_control,$(p_libn32))
- dh_installdeb -p$(p_libn32)
- dh_md5sums -p$(p_libn32)
- dh_builddeb -p$(p_libn32)
+$(binary_stamp)-lib64stdcxxdbg: $(install_stamp)
+ $(call do_libstdcxx_dbg,64)
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+$(binary_stamp)-lib32stdcxxdbg: $(install_stamp)
+ $(call do_libstdcxx_dbg,32)
-# ----------------------------------------------------------------------
$(binary_stamp)-libn32stdcxxdbg: $(install_stamp)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_dbgn32)
- dh_installdirs -p$(p_dbgn32) \
- $(usr_libn32)
-
-ifeq ($(with_libn32cxx),yes)
- cp -a $(d)/$(usr_libn32)/libstdc++.so.* \
- $(d_dbgn32)/$(usr_libn32)/.
- dh_strip -p$(p_dbgn32) --keep-debug
- ifneq ($(with_common_libs),yes)
- : # remove the debug symbols for libstdc++ built by a newer version of GCC
- rm -rf $(d_dbgn32)/usr/lib/debug/$(PF)
- endif
- rm -f $(d_dbgn32)/$(usr_libn32)/libstdc++.so.*
-endif
-
-ifeq ($(with_debug),yes)
- mv $(d)/$(usr_libn32)/debug $(d_dbgn32)/$(usr_libn32)/.
- rm -f $(d_dbgn32)/$(libn32)/debug/libstdc++_pic.a
-endif
-
- $(cross_shlibdeps) dh_shlibdeps -p$(p_dbgn32) \
- -L$(p_ln32gcc) -l:$(d)/$(PF)/$(libn32):$(d_ln32gcc)/$(libn32):
- $(call cross_mangle_substvars,$(p_dbgn32))
-
- debian/dh_doclink -p$(p_dbgn32) $(p_base)
- debian/dh_rmemptydirs -p$(p_dbgn32)
-
- dh_compress -p$(p_dbgn32)
- dh_fixperms -p$(p_dbgn32)
- dh_gencontrol -p$(p_dbgn32) -- -v$(DEB_VERSION) $(common_substvars)
- $(call cross_mangle_control,$(p_dbgn32))
-
- dh_installdeb -p$(p_dbgn32)
- dh_md5sums -p$(p_dbgn32)
- dh_builddeb -p$(p_dbgn32)
-
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+ $(call do_libstdcxx_dbg,n32)
# ----------------------------------------------------------------------
libcxxdev_deps = $(install_stamp)
@@ -482,11 +307,12 @@ endif
dh_compress -p$(p_dev) -p$(p_pic) -p$(p_dbg) -X.txt
dh_fixperms -p$(p_dev) -p$(p_pic) -p$(p_dbg)
# XXX: what about biarchn32?
-ifeq ($(biarch64),yes)
- $(cross_shlibdeps) dh_shlibdeps -p$(p_dev) -p$(p_pic) -p$(p_dbg) -Xlib64
-else
- $(cross_shlibdeps) dh_shlibdeps -p$(p_dev) -p$(p_pic) -p$(p_dbg) -Xlib32/debug
-endif
+#ifeq ($(biarch64),yes)
+# $(cross_shlibdeps) dh_shlibdeps -p$(p_dev) -p$(p_pic) -p$(p_dbg) -Xlib64
+#else
+# $(cross_shlibdeps) dh_shlibdeps -p$(p_dev) -p$(p_pic) -p$(p_dbg)
-Xlib32/debug
+#endif
+ $(cross_shlibdeps) dh_shlibdeps -p$(p_dev) -p$(p_pic) -p$(p_dbg)
$(call cross_mangle_substvars,$(p_dbg))
dh_gencontrol -p$(p_dev) -p$(p_pic) -p$(p_dbg) \
-- -v$(DEB_VERSION) $(common_substvars)
--
1.7.1
>From ff9116feae81a5022ee8c9577cb3544cf0e1bc79 Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Tue, 31 Aug 2010 13:45:15 -0400
Subject: [PATCH 6/8] merge libgfortran rules
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
debian/rules.d/binary-fortran.mk | 195 ++++++++------------------------------
debian/rules.d/binary-gcc.mk | 9 --
debian/rules2 | 9 ++
3 files changed, 48 insertions(+), 165 deletions(-)
diff --git a/debian/rules.d/binary-fortran.mk b/debian/rules.d/binary-fortran.mk
index 17f4ead..cfed225 100644
--- a/debian/rules.d/binary-fortran.mk
+++ b/debian/rules.d/binary-fortran.mk
@@ -27,25 +27,10 @@ p_g95 = gfortran$(pkg_ver)$(cross_bin_arch)
p_g95_m = gfortran$(pkg_ver)-multilib$(cross_bin_arch)
p_g95d = gfortran$(pkg_ver)-doc
p_flib = libgfortran$(FORTRAN_SONAME)$(cross_lib_arch)
-p_f32lib= lib32gfortran$(FORTRAN_SONAME)$(cross_lib_arch)
-p_f64lib= lib64gfortran$(FORTRAN_SONAME)$(cross_lib_arch)
-p_fn32lib= libn32gfortran$(FORTRAN_SONAME)$(cross_lib_arch)
-p_flibdbg = libgfortran$(FORTRAN_SONAME)-dbg$(cross_lib_arch)
-p_f32libdbg = lib32gfortran$(FORTRAN_SONAME)-dbg$(cross_lib_arch)
-p_f64libdbg = lib64gfortran$(FORTRAN_SONAME)-dbg$(cross_lib_arch)
-p_fn32libdbg = libn32gfortran$(FORTRAN_SONAME)-dbg$(cross_lib_arch)
d_g95 = debian/$(p_g95)
d_g95_m = debian/$(p_g95_m)
d_g95d = debian/$(p_g95d)
-d_flib = debian/$(p_flib)
-d_f32lib= debian/$(p_f32lib)
-d_f64lib= debian/$(p_f64lib)
-d_fn32lib= debian/$(p_fn32lib)
-d_flibdbg = debian/$(p_flibdbg)
-d_f32libdbg = debian/$(p_f32libdbg)
-d_f64libdbg = debian/$(p_f64libdbg)
-d_fn32libdbg = debian/$(p_fn32libdbg)
dirs_g95 = \
$(docdir)/$(p_base)/fortran \
@@ -57,7 +42,6 @@ dirs_g95 = \
files_g95 = \
$(PF)/bin/$(cmd_prefix)gfortran$(pkg_ver) \
$(gcc_lib_dir)/finclude \
- $(gcc_lib_dir)/libgfortranbegin.a \
$(gcc_lexec_dir)/f951
ifneq ($(GFDL_INVARIANT_FREE),yes)
@@ -65,130 +49,56 @@ ifneq ($(GFDL_INVARIANT_FREE),yes)
$(PF)/share/man/man1/$(cmd_prefix)gfortran$(pkg_ver).1
endif
-dirs_flib = \
- $(docdir) \
- $(usr_lib) \
-
-files_flib = \
- $(usr_lib)/libgfortran.so.*
-
# ----------------------------------------------------------------------
-$(binary_stamp)-libgfortran: $(install_stamp)
+define __do_fortran
dh_testdir
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
- rm -rf $(d_flib)$(d_flibdbg)
- dh_installdirs -p$(p_flib) $(dirs_flib)
- DH_COMPAT=2 dh_movefiles -p$(p_flib) $(files_flib)
- debian/dh_doclink -p$(p_flib) $(p_base)
- debian/dh_doclink -p$(p_flibdbg) $(p_base)
-
- dh_strip -p$(p_flib) --dbg-package=$(p_flibdbg)
- dh_compress -p$(p_flib) -p$(p_flibdbg)
- dh_fixperms -p$(p_flib) -p$(p_flibdbg)
- dh_makeshlibs -p$(p_flib)
- $(call cross_mangle_shlibs,$(p_flib))
- $(cross_shlibdeps) dh_shlibdeps -p$(p_flib)
- $(call cross_mangle_substvars,$(p_flib))
- dh_gencontrol -p$(p_flib) -p$(p_flibdbg) \
+ rm -rf $(d_l) $(d_d)
+ dh_installdirs -p$(p_l) $(2)
+ DH_COMPAT=2 dh_movefiles -p$(p_l) $(2)/libgfortran.so.*
+
+ debian/dh_doclink -p$(p_l) $(p_base)
+ debian/dh_doclink -p$(p_d) $(p_base)
+
+ dh_strip -p$(p_l) --dbg-package=$(p_d)
+ dh_compress -p$(p_l) -p$(p_d)
+ dh_fixperms -p$(p_l) -p$(p_d)
+ dh_makeshlibs -p$(p_l)
+ $(call cross_mangle_shlibs,$(p_l))
+ $(cross_shlibdeps) dh_shlibdeps -p$(p_l)
+ $(call cross_mangle_substvars,$(p_l))
+ dh_gencontrol -p$(p_l) -p$(p_d) \
-- -v$(DEB_VERSION) $(common_substvars)
- dh_installdeb -p$(p_flib) -p$(p_flibdbg)
- dh_md5sums -p$(p_flib) -p$(p_flibdbg)
- dh_builddeb -p$(p_flib) -p$(p_flibdbg)
+ $(call cross_mangle_control,$(p_l))
+ dh_installdeb -p$(p_l) -p$(p_d)
+ dh_md5sums -p$(p_l) -p$(p_d)
+ dh_builddeb -p$(p_l) -p$(p_d)
trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+endef
-# ----------------------------------------------------------------------
-$(binary_stamp)-lib64fortran: $(install_stamp)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_f64lib) $(d_f64libdbg)
- dh_installdirs -p$(p_f64lib) \
- $(usr_lib64)
- DH_COMPAT=2 dh_movefiles -p$(p_f64lib) \
- $(usr_lib64)/libgfortran.so.*
-
- debian/dh_doclink -p$(p_f64lib) $(p_base)
- debian/dh_doclink -p$(p_f64libdbg) $(p_base)
-
- dh_strip -p$(p_f64lib) --dbg-package=$(p_f64libdbg)
- dh_compress -p$(p_f64lib) -p$(p_f64libdbg)
- dh_fixperms -p$(p_f64lib) -p$(p_f64libdbg)
- dh_makeshlibs -p$(p_f64lib)
- $(call cross_mangle_shlibs,$(p_f64lib))
- $(cross_shlibdeps) dh_shlibdeps -p$(p_f64lib)
- $(call cross_mangle_substvars,$(p_f64lib))
- dh_gencontrol -p$(p_f64lib) -p$(p_f64libdbg) \
- -- -v$(DEB_VERSION) $(common_substvars)
- $(call cross_mangle_control,$(p_f64lib))
- dh_installdeb -p$(p_f64lib) -p$(p_f64libdbg)
- dh_md5sums -p$(p_f64lib) -p$(p_f64libdbg)
- dh_builddeb -p$(p_f64lib) -p$(p_f64libdbg)
-
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+do_fortran = $(call
__do_fortran,lib$(1)gfortran$(FORTRAN_SONAME),$(usr_lib$(1)))
+define do_fortran_dev
+ dh_installdirs -p$(2) $(gcc_lib_dir$(1))
+ DH_COMPAT=2 dh_movefiles -p$(2) \
+ $(gcc_lib_dir$(1))/libgfortranbegin.a
+ $(call install_gcc_lib,libgfortran,$(FORTRAN_SONAME),$(1),$(2))
+endef
# ----------------------------------------------------------------------
-$(binary_stamp)-lib32fortran: $(install_stamp)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
+$(binary_stamp)-libgfortran: $(install_stamp)
+ $(call do_fortran,)
- rm -rf $(d_f32lib) $(d_f32libdbg)
- dh_installdirs -p$(p_f32lib) \
- $(usr_lib32)
- DH_COMPAT=2 dh_movefiles -p$(p_f32lib) \
- $(usr_lib32)/libgfortran.so.*
-
- debian/dh_doclink -p$(p_f32lib) $(p_base)
- debian/dh_doclink -p$(p_f32libdbg) $(p_base)
-
- dh_strip -p$(p_f32lib) --dbg-package=$(p_f32libdbg)
- dh_compress -p$(p_f32lib) -p$(p_f32libdbg)
- dh_fixperms -p$(p_f32lib) -p$(p_f32libdbg)
- dh_makeshlibs -p$(p_f32lib)
- $(cross_shlibdeps) dh_shlibdeps -p$(p_f32lib)
- $(call cross_mangle_substvars,$(p_f32lib))
- dh_gencontrol -p$(p_f32lib) -p$(p_f32libdbg) \
- -- -v$(DEB_VERSION) $(common_substvars)
- dh_installdeb -p$(p_f32lib) -p$(p_f32libdbg)
- dh_md5sums -p$(p_f32lib) -p$(p_f32libdbg)
- dh_builddeb -p$(p_f32lib) -p$(p_f32libdbg)
+$(binary_stamp)-lib64fortran: $(install_stamp)
+ $(call do_fortran,64)
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+$(binary_stamp)-lib32fortran: $(install_stamp)
+ $(call do_fortran,32)
-# ----------------------------------------------------------------------
$(binary_stamp)-libn32fortran: $(install_stamp)
- dh_testdir
- dh_testroot
- mv $(install_stamp) $(install_stamp)-tmp
-
- rm -rf $(d_fn32lib) $(d_fn32libdbg)
- dh_installdirs -p$(p_fn32lib) \
- $(usr_libn32)
- DH_COMPAT=2 dh_movefiles -p$(p_fn32lib) \
- $(usr_libn32)/libgfortran.so.*
-
- debian/dh_doclink -p$(p_fn32lib) $(p_base)
- debian/dh_doclink -p$(p_fn32libdbg) $(p_base)
-
- dh_strip -p$(p_fn32lib) --dbg-package=$(p_fn32libdbg)
- dh_compress -p$(p_fn32lib) -p$(p_fn32libdbg)
- dh_fixperms -p$(p_fn32lib) -p$(p_fn32libdbg)
- dh_makeshlibs -p$(p_fn32lib)
- $(call cross_mangle_shlibs,$(p_fn32lib))
- $(cross_shlibdeps) dh_shlibdeps -p$(p_fn32lib)
- $(call cross_mangle_substvars,$(p_fn32lib))
- dh_gencontrol -p$(p_fn32lib) -p$(p_fn32libdbg) \
- -- -v$(DEB_VERSION) $(common_substvars)
- $(call cross_mangle_control,$(p_fn32lib))
- dh_installdeb -p$(p_fn32lib) -p$(p_fn32libdbg)
- dh_md5sums -p$(p_fn32lib) -p$(p_fn32libdbg)
- dh_builddeb -p$(p_fn32lib) -p$(p_fn32libdbg)
-
- trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+ $(call do_fortran,n32)
# ----------------------------------------------------------------------
$(binary_stamp)-fdev: $(install_stamp)
@@ -201,11 +111,7 @@ $(binary_stamp)-fdev: $(install_stamp)
DH_COMPAT=2 dh_movefiles -p$(p_g95) $(files_g95)
- rm -f $(d)/$(usr_lib)/libgfortran*.so
- mv $(d)/$(usr_lib)/libgfortran*.a $(d_g95)/$(gcc_lib_dir)/
- dh_link -p$(p_g95) \
- /$(usr_lib)/libgfortran.so.$(FORTRAN_SONAME) \
- /$(gcc_lib_dir)/libgfortran.so
+ $(call do_fortran_dev,,$(p_g95))
ifneq ($(DEB_CROSS),yes)
ln -sf gfortran$(pkg_ver) \
@@ -244,33 +150,10 @@ $(binary_stamp)-fdev-multi: $(install_stamp)
mv $(install_stamp) $(install_stamp)-tmp
rm -rf $(d_g95_m)
- dh_installdirs -p$(p_g95_m) \
- $(docdir) \
- $(gcc_lib_dir)/$(biarchsubdirs)
- DH_COMPAT=2 dh_movefiles -p$(p_g95_m) \
- $(gcc_lib_dir)/$(biarchsubdirs)/libgfortranbegin.a
-
-ifeq ($(biarch64),yes)
- rm -f $(d)/$(usr_lib64)/libgfortran*.{la,so}
- mkdir -p $(d_g95_m)/$(gcc_lib_dir64)
- mv $(d)/$(usr_lib64)/libgfortran*.a $(d_g95_m)/$(gcc_lib_dir64)/
- dh_link -p$(p_g95_m) \
- /$(usr_lib64)/libgfortran.so.$(FORTRAN_SONAME)
/$(gcc_lib_dir64)/libgfortran.so
-endif
-ifeq ($(biarch32),yes)
- rm -f $(d)/$(usr_lib32)/libgfortran*.{la,so}
- mkdir -p $(d_g95_m)/$(gcc_lib_dir32)
- mv $(d)/$(usr_lib32)/libgfortran*.a $(d_g95_m)/$(gcc_lib_dir32)/
- dh_link -p$(p_g95_m) \
- /$(usr_lib32)/libgfortran.so.$(FORTRAN_SONAME)
/$(gcc_lib_dir32)/libgfortran.so
-endif
-ifeq ($(biarchn32),yes)
- rm -f $(d)/$(usr_libn32)/libgfortran*.{la,so}
- mkdir -p $(d_g95_m)/$(gcc_lib_dirn32)
- mv $(d)/$(usr_libn32)/libgfortran*.a $(d_g95_m)/$(gcc_lib_dirn32)/
- dh_link -p$(p_g95_m) \
- /$(usr_libn32)/libgfortran.so.$(FORTRAN_SONAME)
/$(gcc_lib_dirn32)/libgfortran.so
-endif
+ dh_installdirs -p$(p_g95_m) $(docdir)
+
+ $(foreach flavour,$(flavours), \
+ $(call do_fortran_dev,$(flavour),$(p_g95_m)))
debian/dh_doclink -p$(p_g95_m) $(p_base)
debian/dh_rmemptydirs -p$(p_g95_m)
diff --git a/debian/rules.d/binary-gcc.mk b/debian/rules.d/binary-gcc.mk
index 2f82774..46e768f 100644
--- a/debian/rules.d/binary-gcc.mk
+++ b/debian/rules.d/binary-gcc.mk
@@ -93,15 +93,6 @@ d_gcc_m = debian/$(p_gcc_m)
p_pld = gcc$(pkg_ver)-plugin-dev
d_pld = debian/$(p_pld)
-# install_gcc_lib(lib,soname,flavour,package)
-define install_gcc_lib
- mv $(d)/$(usr_lib$(3))/$(1)*.a debian/$(4)/$(gcc_lib_dir$(3))/
- rm -f $(d)/$(usr_lib$(3))/$(1)*.{la,so}
- dh_link -p$(4) \
- /$(usr_lib$(3))/$(1).so.$(2) /$(gcc_lib_dir$(3))/$(1).so
-
-endef
-
# misc_gcc_libs(flavour,package)
define misc_gcc_libs
dh_installdirs -p$(2) $(gcc_lib_dir$(1))
diff --git a/debian/rules2 b/debian/rules2
index a813d60..8a30890 100644
--- a/debian/rules2
+++ b/debian/rules2
@@ -613,6 +613,15 @@ libgcc_dir32 = $(PFL)/lib32 # yes, really;
lib32gcc_s ends up in usr
libgcc_dirn32 = $(RPF)/lib32
libgcc_dir64 = $(RPF)/lib64
+# install_gcc_lib(lib,soname,flavour,package)
+define install_gcc_lib
+ mv $(d)/$(usr_lib$(3))/$(1)*.a debian/$(4)/$(gcc_lib_dir$(3))/
+ rm -f $(d)/$(usr_lib$(3))/$(1)*.{la,so}
+ dh_link -p$(4) \
+ /$(usr_lib$(3))/$(1).so.$(2) /$(gcc_lib_dir$(3))/$(1).so
+
+endef
+
checkdirs = $(builddir)
ifeq ($(with_separate_libgcj),yes)
ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
--
1.7.1
>From 7d963d25bb428640dea95e1d5732111f4aa44718 Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Tue, 31 Aug 2010 14:29:08 -0400
Subject: [PATCH 7/8] merge rules for objc-multi
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
debian/rules.d/binary-cxx.mk | 48 ++++++++++--------------------
debian/rules.d/binary-objc.mk | 66 ++++++++++------------------------------
2 files changed, 33 insertions(+), 81 deletions(-)
diff --git a/debian/rules.d/binary-cxx.mk b/debian/rules.d/binary-cxx.mk
index 718f117..d187087 100644
--- a/debian/rules.d/binary-cxx.mk
+++ b/debian/rules.d/binary-cxx.mk
@@ -96,6 +96,19 @@ endif
trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
# ----------------------------------------------------------------------
+define do_cxx
+ dh_installdirs -p$(p_cxx_m) $(gcc_lib_dir($1))
+ mv $(d)/$(usr_lib$(1))/lib*c++*.{a,so} $(d)/$(gcc_lib_dir$(1))/.
+ DH_COMPAT=2 dh_movefiles -p$(p_cxx_m) \
+ $(gcc_lib_dir$(1))/libstdc++.{a,so} \
+ $(gcc_lib_dir$(1))/libsupc++.a \
+ $(gcc_lib_dir$(1))/libstdc++_pic.a
+ dh_link -p$(p_cxx_m) \
+ /$(usr_lib$(1))/libstdc++.so.$(CXX_SONAME) \
+ /$(gcc_lib_dir$(1))/libstdc++.so
+
+endef
+
$(binary_stamp)-cxx-multi: $(install_stamp)
dh_testdir
dh_testroot
@@ -103,39 +116,10 @@ $(binary_stamp)-cxx-multi: $(install_stamp)
rm -rf $(d_cxx_m)
dh_installdirs -p$(p_cxx_m) \
- $(docdir) \
- $(gcc_lib_dir)/$(biarchsubdirs)
-
-ifeq ($(biarch64),yes)
- mv $(d)/$(usr_lib64)/lib*c++*.{a,so} $(d)/$(gcc_lib_dir64)/.
-endif
-ifeq ($(biarch32),yes)
- mv $(d)/$(usr_lib32)/lib*c++*.{a,so} $(d)/$(gcc_lib_dir32)/.
-endif
-ifeq ($(biarchn32),yes)
- mv $(d)/$(usr_libn32)/lib*c++*.{a,so} $(d)/$(gcc_lib_dirn32)/.
-endif
+ $(docdir)
- DH_COMPAT=2 dh_movefiles -p$(p_cxx_m) \
- $(gcc_lib_dir)/$(biarchsubdirs)/libstdc++.{a,so} \
- $(gcc_lib_dir)/$(biarchsubdirs)/libsupc++.a \
- $(gcc_lib_dir)/$(biarchsubdirs)/libstdc++_pic.a
-
-ifeq ($(biarch64),yes)
- dh_link -p$(p_cxx_m) \
- /$(usr_lib64)/libstdc++.so.$(CXX_SONAME) \
- /$(gcc_lib_dir64)/libstdc++.so
-endif
-ifeq ($(biarch32),yes)
- dh_link -p$(p_cxx_m) \
- /$(usr_lib32)/libstdc++.so.$(CXX_SONAME) \
- /$(gcc_lib_dir32)/libstdc++.so
-endif
-ifeq ($(biarchn32),yes)
- dh_link -p$(p_cxx_m) \
- /$(usr_libn32)/libstdc++.so.$(CXX_SONAME) \
- /$(gcc_lib_dirn32)/libstdc++.so
-endif
+ $(foreach flavour,$(flavours), \
+ $(call do_cxx,$(flavour)))
debian/dh_doclink -p$(p_cxx_m) $(p_base)
debian/dh_rmemptydirs -p$(p_cxx_m)
diff --git a/debian/rules.d/binary-objc.mk b/debian/rules.d/binary-objc.mk
index 520d295..23001a2 100644
--- a/debian/rules.d/binary-objc.mk
+++ b/debian/rules.d/binary-objc.mk
@@ -16,28 +16,29 @@ dirs_objc = \
files_objc = \
$(gcc_lexec_dir)/cc1obj \
- $(gcc_lib_dir)/include/objc \
- $(gcc_lib_dir)/libobjc*.a
+ $(gcc_lib_dir)/include/objc
+
+define do_objc
+ dh_installdirs -p$(2) $(gcc_lib_dir$(1))
+ $(call install_gcc_lib,libobjc,$(OBJC_SONAME),$(1),$(2))
+ $(if $(filter yes,$(with_objc_gc)),
+ dh_link -p$(2) \
+ /$(usr_lib$(1))/libobjc_gc.so.$(OBJC_SONAME) \
+ /$(gcc_lib_dir$(1))/libobjc_gc.so
+ )
+
+endef
$(binary_stamp)-objc: $(install_stamp)
dh_testdir
dh_testroot
mv $(install_stamp) $(install_stamp)-tmp
- rm -f $(d)/$(usr_lib)/libobjc.{la,so}
- mv $(d)/$(usr_lib)/libobjc*.a $(d)/$(gcc_lib_dir)/
-
rm -rf $(d_objc)
dh_installdirs -p$(p_objc) $(dirs_objc)
DH_COMPAT=2 dh_movefiles -p$(p_objc) $(files_objc)
- dh_link -p$(p_objc) \
- /$(usr_lib)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/libobjc.so
-ifeq ($(with_objc_gc),yes)
- dh_link -p$(p_objc) \
- /$(usr_lib)/libobjc_gc.so.$(OBJC_SONAME) \
- /$(gcc_lib_dir)/libobjc_gc.so
-endif
+ $(call do_objc,,$(p_objc))
cp -p $(srcdir)/libobjc/{README*,THREADS*} \
$(d_objc)/$(docdir)/$(p_base)/ObjC/.
@@ -67,43 +68,10 @@ $(binary_stamp)-objc-multi: $(install_stamp)
mv $(install_stamp) $(install_stamp)-tmp
rm -rf $(d_objc_m)
- dh_installdirs -p$(p_objc_m) \
- $(docdir) \
- $(gcc_lib_dir)/$(biarchsubdirs)
-
-ifeq ($(biarch64),yes)
- rm -f $(d)/$(usr_lib64)/libobjc*.{la,so}
- mkdir -p $(d_objc_m)/$(gcc_lib_dir64)
- mv $(d)/$(usr_lib64)/libobjc*.a $(d_objc_m)/$(gcc_lib_dir64)/
- dh_link -p$(p_objc_m) \
- /$(usr_lib64)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir64)/libobjc.so
- ifeq ($(with_objc_gc),yes)
- dh_link -p$(p_objc_m) \
- /$(usr_lib64)/libobjc_gc.so.$(OBJC_SONAME) /$(gcc_lib_dir64)/libobjc_gc.so
- endif
-endif
-ifeq ($(biarch32),yes)
- rm -f $(d)/$(usr_lib32)/libobjc*.{la,so}
- mkdir -p $(d_objc_m)/$(gcc_lib_dir32)
- mv $(d)/$(usr_lib32)/libobjc*.a $(d_objc_m)/$(gcc_lib_dir32)/
- dh_link -p$(p_objc_m) \
- /$(usr_lib32)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir32)/libobjc.so
- ifeq ($(with_objc_gc),yes)
- dh_link -p$(p_objc_m) \
- /$(usr_lib32)/libobjc_gc.so.$(OBJC_SONAME) /$(gcc_lib_dir32)/libobjc_gc.so
- endif
-endif
-ifeq ($(biarchn32),yes)
- rm -f $(d)/$(usr_libn32)/libobjc*.{la,so}
- mkdir -p $(d_objc_m)/$(gcc_lib_dirn32)
- mv $(d)/$(usr_libn32)/libobjc*.a $(d_objc_m)/$(gcc_lib_dirn32)/
- dh_link -p$(p_objc_m) \
- /$(usr_libn32)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dirn32)/libobjc.so
- ifeq ($(with_objc_gc),yes)
- dh_link -p$(p_objc_m) \
- /$(usr_libn32)/libobjc_gc.so.$(OBJC_SONAME) /$(gcc_lib_dirn32)/libobjc_gc.so
- endif
-endif
+ dh_installdirs -p$(p_objc_m) $(docdir)
+
+ $(foreach flavour,$(flavours), \
+ $(call do_objc,$(flavour),$(p_objc_m)))
debian/dh_doclink -p$(p_objc_m) $(p_base)
--
1.7.1
>From beee23ddcf59f775542e86d7de5a4b0a9a1506c0 Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Wed, 1 Sep 2010 17:06:29 -0400
Subject: [PATCH 8/8] gcc-hppa64 in cross-gcc-to-hppa build
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
debian/control.m4 | 4 ++--
debian/rules.defs | 4 +---
debian/rules2 | 14 ++++++++++----
3 files changed, 13 insertions(+), 9 deletions(-)
diff --git a/debian/control.m4 b/debian/control.m4
index d6884f3..037af6c 100644
--- a/debian/control.m4
+++ b/debian/control.m4
@@ -447,9 +447,8 @@ Description: Files for GNU GCC plugin development.
')`'dnl cdev
ifenabled(`cdev',`
-ifdef(`TARGET', `', `
Package: gcc`'PV-hppa64
-Architecture: hppa
+Architecture: ifdef(`TARGET',`any',hppa)
Section: devel
Priority: PRI(optional)
Depends: BASEDEP, ${shlibs:Depends}, ${misc:Depends}
@@ -457,6 +456,7 @@ Conflicts: gcc-3.3-hppa64 (<= 1:3.3.4-5),
gcc-3.4-hppa64 (<= 3.4.1-3)
Description: The GNU C compiler (cross compiler for hppa64)
This is the GNU C compiler, a fairly portable optimizing compiler for C.
+ifdef(`TARGET', `', `
Package: gcc`'PV-spu
Architecture: powerpc ppc64
Section: devel
diff --git a/debian/rules.defs b/debian/rules.defs
index f9ac9f8..0ddbbfb 100644
--- a/debian/rules.defs
+++ b/debian/rules.defs
@@ -841,9 +841,7 @@ else
# hppa64 build ----------------
hppa64_no_snap := no
ifeq ($(DEB_TARGET_ARCH),hppa)
- ifneq ($(DEB_CROSS),yes)
- with_hppa64 := yes
- endif
+ with_hppa64 := yes
endif
ifeq ($(hppa64_no_snap)-$(PKGSOURCE),yes-gcc-snapshot)
with_hppa64 := disabled for snapshot build
diff --git a/debian/rules2 b/debian/rules2
index 8a30890..9d34499 100644
--- a/debian/rules2
+++ b/debian/rules2
@@ -925,6 +925,12 @@ ifeq ($(versioned_packages),yes)
hppa64_configure_flags += --program-suffix=-$(BASE_VERSION)
endif
+ifeq ($(DEB_CROSS),yes)
+ CC_for_hppa64_cross="$(CC)"
+else
+ CC_for_hppa64_cross="$(builddir)/gcc/xgcc -B$(builddir)/gcc/"
+endif
+
$(configure_hppa64_stamp): $(build_stamp)
dh_testdir
rm -f $(configure_hppa64_stamp) $(build_hppa64_stamp)
@@ -934,7 +940,7 @@ $(configure_hppa64_stamp): $(build_stamp)
cd $(builddir_hppa64) && \
$(SET_PATH) \
$(SET_SHELL) \
- CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+ CC="$(CC_for_hppa64_cross)" \
../src/configure \
--enable-languages=c \
--prefix=/$(PF) \
@@ -949,8 +955,8 @@ $(configure_hppa64_stamp): $(build_stamp)
--with-as=/usr/bin/hppa64-linux-gnu-as \
--with-ld=/usr/bin/hppa64-linux-gnu-ld \
--includedir=/usr/hppa64-linux-gnu/include \
- --host=hppa-linux-gnu \
- --build=hppa-linux-gnu \
+ --build=$(DEB_BUILD_GNU_TYPE) \
+ --host=$(DEB_HOST_GNU_TYPE) \
--target=hppa64-linux-gnu
touch $(configure_hppa64_stamp)
@@ -959,7 +965,7 @@ $(build_hppa64_stamp): $(configure_hppa64_stamp)
$(SET_SHELL) \
$(SET_LOCPATH) \
$(MAKE) -C $(builddir_hppa64) $(NJOBS) \
- CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+ CC="$(CC_for_hppa64_cross)" \
$(CFLAGS_TO_PASS) \
$(LDFLAGS_TO_PASS)
touch $(build_hppa64_stamp)
--
1.7.1
--
Héctor Orón
"Our Sun unleashes tremendous flares expelling hot gas into the Solar
System, which one day will disconnect us."
-- Day DVB-T stop working nicely
Video flare: http://antwrp.gsfc.nasa.gov/apod/ap100510.html
Reply to: