diff options
author | doko <doko@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca> | 2015-05-21 14:21:58 +0000 |
---|---|---|
committer | doko <doko@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca> | 2015-05-21 14:21:58 +0000 |
commit | ec77424cac8c82e133bff919a44df974ce9d4916 (patch) | |
tree | 5ec1889c8219d44f03d69ecbaef01ebb5cc6e057 /debian/rules.defs | |
parent | 617cff02a1c5755ff4b6b347a480f170bd9e0357 (diff) | |
download | gcc-5-ec77424cac8c82e133bff919a44df974ce9d4916.tar.gz |
* Provide a rtlibs stage to build a subset of target library packages.
git-svn-id: svn://anonscm.debian.org/gcccvs/branches/sid/gcc-5@8054 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca
Diffstat (limited to 'debian/rules.defs')
-rw-r--r-- | debian/rules.defs | 82 |
1 files changed, 75 insertions, 7 deletions
diff --git a/debian/rules.defs b/debian/rules.defs index 81ab4a4..d7eedf2 100644 --- a/debian/rules.defs +++ b/debian/rules.defs @@ -268,6 +268,7 @@ ifneq ($(findstring nostrap, $(DEB_BUILD_OPTIONS)),) with_bootstrap := off endif +DEB_STAGE=rtlibs # ------------------------------------------------------------------- # stage options ifdef DEB_STAGE @@ -275,6 +276,7 @@ ifdef DEB_STAGE separate_lang := yes # "stage1" is minimal compiler with static libgcc # "stage2" is minimal compiler with shared libgcc + # "rtlibs" is a subset of target libraries, without compilers ifeq ($(DEB_STAGE),stage1) with_shared_libgcc := no endif @@ -282,6 +284,13 @@ ifdef DEB_STAGE with_libgcc := yes with_shared_libgcc := yes endif + ifeq ($(DEB_STAGE),rtlibs) + with_rtlibs := libgcc libgomp libstdc++ libgfortran libquadmath + ifeq ($(DEB_CROSS),yes) + LS := + cross_lib_arch := + endif + endif endif ifeq ($(BACKPORT),true) @@ -450,7 +459,10 @@ multilib_multiarch_map = \ mlib_to_march = $(patsubst $(DEB_TARGET_ARCH)/$(1)=%,%, \ $(filter $(DEB_TARGET_ARCH)/$(1)=%,$(multilib_multiarch_map))) -ifneq ($(DEB_STAGE),stage1) +ifeq ($(DEB_STAGE),rtlibs) + with_gccbase := yes + with_gccxbase := +else ifneq ($(DEB_STAGE),stage1) # build a -base package. ifneq ($(DEB_CROSS),yes) with_gccbase := yes @@ -460,7 +472,9 @@ ifneq ($(DEB_STAGE),stage1) endif # build dev packages. -with_dev := yes +ifneq ($(DEB_STAGE),rtlibs) + with_dev := yes +endif with_cpp := yes @@ -510,7 +524,9 @@ jit_no_cpus := none ifneq (,$(filter $(DEB_TARGET_ARCH_CPU),$(jit_no_cpus))) with_jit := disabled for cpu $(DEB_TARGET_ARCH_CPU) endif - +ifneq (,$(with_rtlibs)) + with_jit := disabled for rtlibs stage +endif with_jit := $(call envfilt, jit, , , $(with_jit)) ifeq (,$(findstring gcc-,$(PKGSOURCE))) @@ -528,6 +544,9 @@ ifeq ($(with_cc1),yes) with_libcc1 := yes endif endif +ifneq (,$(with_rtlibs)) + with_libcc1 := disabled for rtlibs stage +endif # Build all packages needed for C development ifneq ($(with_base_only),yes) @@ -536,7 +555,7 @@ ifneq ($(with_base_only),yes) endif endif -ifndef DEB_STAGE +ifeq (,$(filter $(DEB_STAGE),stage1 stage2)) # Ada -------------------- ada_no_cpus := m32r sh3 sh3eb sh4 sh4eb # no Debian builds ... some of these should exist @@ -586,6 +605,11 @@ ifneq (,$(filter $(distrelease),lucid)) endif with_ada := $(call envfilt, ada, , , $(with_ada)) + +ifeq ($(DEB_STAGE)-$(filter libgnat, $(with_rtlibs)),rtlibs-) + with_ada := disabled for rtlibs stage +endif + #ifneq ($(single_package),yes) # with_separate_gnat := yes #endif @@ -710,6 +734,10 @@ ifeq ($(java_no_cross)-$(DEB_CROSS),yes-yes) endif with_java := $(call envfilt, java, , c++, $(with_java)) +ifeq ($(DEB_STAGE)-$(filter libgcj, $(with_rtlibs)),rtlibs-) + with_java := disabled for rtlibs stage +endif + ifneq (,$(findstring gccgo, $(PKGSOURCE))) with_java := endif @@ -819,6 +847,9 @@ endif ifeq ($(go_no_cross)-$(DEB_CROSS),yes-yes) with_go := disabled for cross compiler package endif +ifeq ($(DEB_STAGE)-$(filter libgo, $(with_rtlibs)),rtlibs-) + with_go := disabled for rtlibs stage +endif with_go := $(call envfilt, go, , , $(with_go)) # Build all packages needed for Go development @@ -864,6 +895,9 @@ endif ifeq ($(d_no_snap)-$(single_package),yes-yes) with_d := disabled for snapshot build endif +ifeq ($(DEB_STAGE)-$(filter libphobos, $(with_rtlibs)),rtlibs-) + with_d := disabled for rtlibs stage +endif with_d := $(call envfilt, d, , , $(with_d)) ifeq ($(with_base_only),yes) @@ -915,12 +949,18 @@ endif ifeq ($(fortran_no_cross)-$(DEB_CROSS),yes-yes) with_fortran := disabled for cross compiler package endif +ifeq ($(DEB_STAGE)-$(filter libgfortran libquadmath, $(with_rtlibs)),rtlibs-) + with_fortran := disabled for rtlibs stage +endif + with_fortran := $(call envfilt, fortran, , , $(with_fortran)) # Build all packages needed for Fortran development ifeq ($(with_fortran),yes) ifeq ($(with_dev),yes) - with_fdev := yes + ifneq ($(DEB_STAGE)-$(filter libgfortran libquadmath, $(with_rtlibs)),rtlibs-) + with_fdev := yes + endif endif ifeq ($(with_common_libs),yes) with_libgfortran := yes @@ -957,6 +997,9 @@ endif ifeq ($(objc_no_cross)-$(DEB_CROSS),yes-yes) with_objc := disabled for cross compiler package endif +ifeq ($(DEB_STAGE)-$(filter libobjc, $(with_rtlibs)),rtlibs-) + with_objc := disabled for rtlibs stage +endif with_objc := $(call envfilt, objc, obj-c++, , $(with_objc)) ifeq ($(with_objc),yes) @@ -1021,7 +1064,9 @@ with_nls := $(call envfilt, nls, , , $(with_nls)) with_libnof := no ifneq (,$(findstring gcc-5,$(PKGSOURCE))) - with_source := yes + ifeq (,$(with_rtlibs)) + with_source := yes + endif endif with_source := $(call envfilt, source, , , $(with_source)) @@ -1149,8 +1194,11 @@ endif # plugins -------------------- with_plugins := yes +ifneq (,$(with_rtlibs)) + with_plugins := disabled for rtlibs stage +endif -endif # ifndef DEB_STAGE +endif # ifeq (,$(filter $(DEB_STAGE),stage1 stage2)) # Don't include docs with GFDL invariant sections GFDL_INVARIANT_FREE := yes @@ -1307,6 +1355,17 @@ else endif with_hppa64 := $(call envfilt, hppa64, , , $(with_hppa64)) + ifeq ($(DEB_STAGE),rtlibs) + with_libatomic := disabled for rtlibs stage + with_libasan := disabled for rtlibs stage + with_liblsan := disabled for rtlibs stage + with_libtsan := disabled for rtlibs stage + with_libubsan := disabled for rtlibs stage + with_libcilkrts := disabled for rtlibs stage + with_fixincl := disabled for rtlibs stage + with_hppa64 := disabled for rtlibs stage + endif + # neon build ------------------- # FIXME: build as a cross compiler to build on armv4 as well ifneq (,$(findstring gcc-5, $(PKGSOURCE))) @@ -1332,6 +1391,9 @@ endif ifneq (,$(findstring cross-build-,$(build_type))) with_check := disabled for cross building the compiler endif +ifneq (,$(with_rtlibs)) + with_check := disabled for rtlibs stage +endif check_no_cpus := m68k check_no_systems := # gnu kfreebsd-gnu ifneq (,$(filter $(DEB_TARGET_ARCH_CPU),$(check_no_cpus))) @@ -1874,6 +1936,12 @@ else endif endif endif +ifeq ($(DEB_STAGE),rtlibs) + define cross_mangle_shlibs + endef + define cross_mangle_substvars + endef +endif # takes a *list* of package names as $1, the multilib dirname as $2 _shlibdirs = \ |