diff options
Diffstat (limited to 'debian/rules.defs')
-rw-r--r-- | debian/rules.defs | 748 |
1 files changed, 408 insertions, 340 deletions
diff --git a/debian/rules.defs b/debian/rules.defs index fb2f456..dba8141 100644 --- a/debian/rules.defs +++ b/debian/rules.defs @@ -1,18 +1,12 @@ # -*- makefile -*- # definitions used in more than one Makefile / rules file -NJOBS := -USE_CPUS := 1 -ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) - USE_CPUS := $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) - NJOBS := -j $(USE_CPUS) -endif - # common vars SHELL = /bin/bash -e # brace expansion used in rules file srcdir = $(CURDIR)/src builddir = $(CURDIR)/build builddir_jit = $(CURDIR)/build-jit +builddir_nvptx = $(CURDIR)/build-nvptx builddir_hppa64 = $(CURDIR)/build-hppa64 stampdir = stamps @@ -99,12 +93,20 @@ PKGSOURCE := $(call vafilt,$(CHANGELOG_VARS),Source) # those are required here too SOURCE_VERSION := $(call vafilt,$(CHANGELOG_VARS),Version) DEB_VERSION := $(strip $(shell echo $(SOURCE_VERSION) | \ - sed -e 's/.*://' -e 's/ds[0-9]*//')) + sed -e 's/.*://' -e 's/ds[0-9][0-9]*//')) # epoch used for gcc versions up to 3.3.x, now used for some remaining # libraries: libgcc1, libobjc1 EPOCH := 1 DEB_EVERSION := $(EPOCH):$(DEB_VERSION) -BASE_VERSION := $(shell echo $(DEB_VERSION) | sed -e 's/\([1-9]\).*-.*/\1/') +BASE_VERSION := $(shell echo $(DEB_VERSION) | sed -e 's/\([0-9][0-9]*\).*-.*/\1/') + +NJOBS := +USE_CPUS := 1 +ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) + USE_CPUS := $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) + NJOBS := -j $(USE_CPUS) + NJOBS_TESTS := -j $(USE_CPUS) +endif ifneq (,$(findstring gcc-snapshot, $(PKGSOURCE))) single_package = yes @@ -160,6 +162,14 @@ DEB_TARGET_GNU_CPU := $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_CPU) DEB_TARGET_GNU_TYPE := $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_TYPE) DEB_TARGET_GNU_SYSTEM := $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_SYSTEM) DEB_TARGET_MULTIARCH := $(call vafilt,$(TARGET_VARS),DEB_HOST_MULTIARCH) +DEB_TARGET_ARCH_ABI := $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_ABI) +DEB_TARGET_ARCH_BITS := $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_BITS) +DEB_TARGET_ARCH_ENDIAN := $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_ENDIAN) +DEB_TARGET_ARCH_LIBC := $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_LIBC) +export DEB_TARGET_ARCH DEB_TARGET_ARCH_ABI DEB_TARGET_ARCH_BITS \ + DEB_TARGET_ARCH_CPU DEB_TARGET_ARCH_OS DEB_TARGET_ARCH_ENDIAN \ + DEB_TARGET_ARCH_LIBC DEB_TARGET_GNU_CPU DEB_TARGET_GNU_TYPE \ + DEB_TARGET_GNU_SYSTEM DEB_TARGET_MULTIARCH ifeq ($(derivative),Ubuntu) ifeq (,$(filter $(distrelease),dapper lucid)) @@ -168,7 +178,7 @@ ifeq ($(derivative),Ubuntu) endif endif else - ifneq (,$(filter $(distrelease),stretch sid)) + ifneq (,$(filter $(distrelease),stretch)) DEB_TARGET_GNU_TYPE := $(subst i586,i686,$(DEB_TARGET_GNU_TYPE)) i586_symlinks = $(if $(findstring i686,$(DEB_TARGET_GNU_TYPE)),yes) endif @@ -193,9 +203,6 @@ ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) build_type = cross-build-cross else # cross building the native compiler - ifeq (,$(filter $(distrelease),lenny etch squeeze dapper hardy jaunty karmic lucid)) - with_sysroot = / - endif build_type = cross-build-native endif else @@ -203,12 +210,12 @@ else # cross compiler, sets WITH_SYSROOT on it's own DEB_CROSS = yes build_type = build-cross + else ifeq ($(FORCE_CROSS_LAYOUT),yes) + # a native build with a cross layout + DEB_CROSS = yes + build_type = build-cross else # native build - # first ones are wheezy and maverick - ifeq (,$(filter $(distrelease),lenny etch squeeze dapper hardy jaunty karmic lucid)) - with_sysroot = / - endif build_type = build-native endif endif @@ -275,6 +282,8 @@ else cross_shlibdeps := cross_gencontrol := cross_makeshlibs := + # FIXME: Ignore missing symbols for a first build ... + #cross_makeshlibs := - cross_clean := endif @@ -300,12 +309,57 @@ ifdef WITH_BOOTSTRAP # longer needed. with_bootstrap = $(WITH_BOOTSTRAP) endif -ifneq ($(findstring nostrap, $(DEB_BUILD_OPTIONS)),) - with_bootstrap := off + +ifneq ($(trunk_build),yes) + ifeq ($(build_type),build-native) + ifeq (,$(DEB_STAGE)) + ifeq (,$(filter $(distrelease),wheezy jessie stretch precise trusty xenial bionic)) + ifneq (,$(filter $(DEB_HOST_ARCH), amd64 i386 armhf arm64 powerpc ppc64 ppc64el s390x sparc64)) + with_bootstrap := profiled + endif + endif + endif + endif + + ifneq ($(findstring nostrap, $(DEB_BUILD_OPTIONS)),) + with_bootstrap := off + endif + + # Enable LTO only for 64bit builds + ifeq ($(DEB_BUILD_ARCH_BITS)-$(DEB_HOST_ARCH_BITS),64-64) + with_lto_build := yes + endif + with_lto_build := yes + + # FIXME: hppa has issues with parsing the jobs output. + # FIXME: m68k, riscv64 and sh4 running on simulators, don't care ... + # FIXME: buildds not powerful ebough: mips* + # FIXME: just let it build, takes too long: hurd-i386 + # FIXME: not yet tried to build: alpha + ifneq (,$(filter $(DEB_HOST_ARCH), alpha hppa m68k mips mipsel mips64el riscv64 sh4 sparc64 hurd-i386)) + with_lto_build := + endif + + # FIXME: newer binutils needed? + ifneq (,$(filter $(distrelease),stretch precise trusty xenial bionic)) + with_bootstrap := + with_lto_build := + endif +endif + +ifneq ($(findstring nolto, $(DEB_BUILD_OPTIONS)),) + with_lto_build := +endif + +ifneq ($(findstring nopgo, $(DEB_BUILD_OPTIONS)),) + ifeq ($(with_bootstrap),profiled) + with_bootstrap := + endif endif ifneq ($(findstring gccdebug, $(DEB_BUILD_OPTIONS)),) with_bootstrap := off + with_lto_build := DEB_BUILD_OPTIONS := $(DEB_BUILD_OPTIONS) nostrip export DEB_BUILD_OPTIONS endif @@ -373,20 +427,33 @@ envfilt = $(strip $(or $(call lfilt,$(1),$(2)),$(call nlfilt,$(1),$(3)),$(call w # ------------------------------------------------------------------- # architecture specific config -# FIXME: libjava is not ported for thumb, this hack only works for -# separate gcj builds -ifeq (,$(findstring gcj,$(PKGSOURCE))) - ifeq ($(DEB_TARGET_ARCH),armhf) - ifeq ($(distribution),Raspbian) - with_arm_thumb := no - else - with_arm_thumb := yes +ifneq (,$(filter $(DEB_TARGET_ARCH), amd64 arm64 i386 ppc64 ppc64el s390x x32)) + with_async_unwind = yes +endif + +ifeq ($(derivative),Ubuntu) + ifeq (,$(filter $(distrelease),precise trusty xenial bionic cosmic disco)) + ifneq (,$(filter $(DEB_TARGET_ARCH), amd64 arm64 i386 ppc64 ppc64el s390x x32)) + with_stack_clash := yes endif + endif + ifeq (,$(filter $(distrelease),precise trusty xenial bionic cosmic disco)) + ifneq (,$(filter $(DEB_TARGET_ARCH), amd64 i386 x32)) + with_cf_protection := yes + endif + endif +endif + +ifeq ($(DEB_TARGET_ARCH),armhf) + ifeq ($(distribution),Raspbian) + with_arm_thumb := no else - ifeq ($(derivative)-$(DEB_TARGET_ARCH),Ubuntu-armel) - ifneq (,$(filter $(distrelease),lucid maverick natty oneiric precise)) - with_arm_thumb := yes - endif + with_arm_thumb := yes + endif +else + ifeq ($(derivative)-$(DEB_TARGET_ARCH),Ubuntu-armel) + ifneq (,$(filter $(distrelease),lucid maverick natty oneiric precise)) + with_arm_thumb := yes endif endif endif @@ -397,6 +464,7 @@ ifeq ($(distribution),Ubuntu) with_linaro_branch = yes endif endif +with_linaro_branch = # build using fsf or the ibm branch ifeq ($(distribution),Ubuntu) @@ -433,7 +501,7 @@ endif # common things --------------- # build common packages, where package names don't differ in different -# gcc versions (fixincludes, libgcj-common) ... +# gcc versions (fixincludes, ...) with_common_pkgs := yes # ... and some libraries, which do not change (libgcc1, libssp0). with_common_libs := yes @@ -457,6 +525,11 @@ ifeq (,$(filter $(distrelease),lenny etch squeeze dapper hardy jaunty karmic luc multiarch_stage1 := yes endif +MIPS_R6_ENABLED = no +ifeq (,$(filter $(distrelease),lenny etch squeeze wheezy jessie dapper hardy jaunty karmic lucid maverick natty oneiric precise quantal raring saucy trusty utopic vivid wily xenial yakkety zesty artful)) + MIPS_R6_ENABLED = yes +endif + # mapping for the non-default biarch multilib / multiarch names multiarch_xarch_map = \ amd64=i386-linux-gnu,x86_64-linux-gnux32 \ @@ -475,6 +548,12 @@ multiarch_xarch_map = \ mipsn32el=mipsel-linux-gnu,mips64el-linux-gnuabi64 \ mips64=mips-linux-gnu,mips64-linux-gnuabin32 \ mips64el=mipsel-linux-gnu,mips64el-linux-gnuabin32 \ + mipsr6=mipsisa64r6-linux-gnuabin32,mipsisa64r6-linux-gnuabi64 \ + mipsr6el=mipsisa64r6el-linux-gnuabin32,mipsisa64r6el-linux-gnuabi64 \ + mipsn32r6=mipsisa32r6-linux-gnu,mipsisa64r6-linux-gnuabi64 \ + mipsn32r6el=mipsisa32r6el-linux-gnu,mipsisa64r6el-linux-gnuabi64 \ + mips64r6=mipsisa32r6-linux-gnu,mipsisa64r6-linux-gnuabin32 \ + mips64r6el=mipsisa32r6el-linux-gnu,mipsisa64r6el-linux-gnuabin32 \ x32=x86_64-linux-gnu,i386-linux-gnu \ kfreebsd-amd64=i386-kfreebsd-gnu xarch_multiarch_names = $(subst $(COMMA),$(SPACE),$(patsubst $(DEB_TARGET_ARCH)=%,%, \ @@ -506,6 +585,18 @@ multilib_multiarch_map = \ mips64/n32=mips64-linux-gnuabin32 \ mips64el/32=mipsel-linux-gnu \ mips64el/n32=mips64el-linux-gnuabin32 \ + mipsr6/n32=mipsisa64r6-linux-gnuabin32 \ + mipsr6/64=mipsisa64r6-linux-gnuabi64 \ + mipsr6el/n32=mipsisa64r6el-linux-gnuabin32 \ + mipsr6el/64=mipsisa64r6el-linux-gnuabi64 \ + mipsn32r6/32=mipsisa32r6-linux-gnu \ + mipsn32r6/64=mipsisa64r6-linux-gnuabi64 \ + mipsn32r6el/32=mipsisa32r6el-linux-gnu \ + mipsn32r6el/64=mipsisa64r6el-linux-gnuabi64 \ + mips64r6/32=mipsisa32r6-linux-gnu \ + mips64r6/n32=mipsisa64r6-linux-gnuabin32 \ + mips64r6el/32=mipsisa32r6el-linux-gnu \ + mips64r6el/n32=mipsisa64r6el-linux-gnuabin32 \ x32/32=i386-linux-gnu \ x32/64=x86_64-linux-gnu \ kfreebsd-amd64/32=i386-kfreebsd-gnu @@ -539,6 +630,18 @@ multilib_arch_map = \ mips64/n32=mipsn32 \ mips64el/32=mipsel \ mips64el/n32=mipsn32el \ + mipsr6/n32=mipsn32r6 \ + mipsr6/64=mips64r6 \ + mipsr6el/n32=mipsn32r6el \ + mipsr6el/64=mips64r6el \ + mipsn32r6/32=mipsr6 \ + mipsn32r6/64=mips64r6 \ + mipsn32r6el/32=mipsr6el \ + mipsn32r6el/64=mips64r6el \ + mips64r6/32=mipsr6 \ + mips64r6/n32=mipsn32r6 \ + mips64r6el/32=mipsr6el \ + mips64r6el/n32=mipsn32r6el \ x32/32=i386 \ x32/64=amd64 \ kfreebsd-amd64/32=kfreebsd-i386 @@ -598,6 +701,9 @@ endif ifneq (,$(with_rtlibs)) with_jit := disabled for rtlibs stage endif +ifneq ($(findstring nojit, $(DEB_BUILD_OPTIONS)),) + with_jit := disabled by DEB_BUILD_OPTIONS +endif with_jit := $(call envfilt, jit, , , $(with_jit)) ifeq (,$(findstring gcc-,$(PKGSOURCE))) @@ -614,6 +720,45 @@ ifeq ($(with_jit),yes) endif endif +nvptx_archs := amd64 ppc64el +ifneq (,$(filter $(DEB_TARGET_ARCH),$(nvptx_archs))) + offload_targets += nvptx-none + with_offload_nvptx := yes +endif +ifneq (,$(filter $(distrelease),lucid precise)) + offload_targets := + with_offload_nvptx := +endif +ifneq (,$(findstring build-cross, $(build_type))) + with_offload_nvptx := disabled for cross builds +endif + +ifeq ($(single_package),yes) + with_offload_nvptx := disabled for snapshot builds +endif +ifneq ($(findstring nonvptx, $(DEB_BUILD_OPTIONS)),) + with_offload_nvptx := disabled by DEB_BUILD_OPTIONS +endif +with_offload_nvptx := $(call envfilt, nvptx, , , $(with_offload_nvptx)) + +#with_offload_nvptx := not yet built for GCC 9 + +hsa_archs := amd64 +ifneq (,$(filter $(DEB_TARGET_ARCH),$(hsa_archs))) + offload_targets += hsa + with_offload_hsa := yes +endif +ifneq (,$(findstring build-cross, $(build_type))) + with_offload_hsa := disabled for cross builds +endif + +ifeq ($(single_package),yes) + with_offload_hsa := disabled for snapshot builds +endif +with_offload_hsa := $(call envfilt, hsa, , , $(with_offload_hsa)) + +#with_offload_hsa := not yet built for GCC 9 + with_cc1 := yes with_cc1 := $(call envfilt, cc1, , , $(with_cc1)) @@ -643,18 +788,15 @@ ifeq (,$(filter $(DEB_STAGE),stage1 stage2)) # Ada -------------------- ada_no_cpus := m32r sh3 sh3eb sh4eb # no Debian builds ... some of these should exist -ada_no_cpus += powerpcspe -ada_no_cpus += m68k # see https://bugs.debian.org/814221 -ada_no_cpus += mips64 # see https://gcc.gnu.org/PR65337 -ada_no_cpus += x32 # see https://gcc.gnu.org/PR61954 +# ... cross-build-native cross-builds a non-working compiler ... +ifneq (,$(filter $(build_type), build-native)) + ada_no_cpus += m68k # see https://bugs.debian.org/868365 +endif ada_no_systems := ada_no_cross := no ada_no_snap := no ifeq ($(single_package),yes) - ada_no_cpus += powerpcspe - ifneq (,$(filter $(DEB_TARGET_ARCH),mips mipsel powerpcspe kfreebsd-i386 kfreebsd-amd64)) - #ada_no_cpus += mips mipsel - ada_no_cpus += kfreebsd-i386 kfreebsd-amd64 + ifneq (,$(filter $(DEB_TARGET_ARCH),alpha)) ada_no_snap := yes endif endif @@ -667,14 +809,6 @@ endif ifneq (,$(filter $(DEB_TARGET_ARCH_CPU),$(ada_no_cpus))) with_ada := disabled for cpu $(DEB_TARGET_ARCH_CPU) endif -ifneq (,$(filter $(DEB_TARGET_ARCH),powerpcspe x32)) - with_ada := disabled for architecture $(DEB_TARGET_ARCH) -endif -ifneq (,$(findstring cross,$(build_type))) - ifneq (,$(filter $(DEB_BUILD_ARCH),powerpcspe x32)) - with_ada := no gnat host compiler on $(DEB_BUILD_ARCH) - endif -endif ifneq (,$(findstring $(DEB_TARGET_GNU_SYSTEM),$(ada_no_systems))) with_ada := disabled for system $(DEB_TARGET_GNU_SYSTEM) endif @@ -687,24 +821,15 @@ endif ifneq (,$(findstring gccgo,$(PKGSOURCE))) with_ada := endif -ifneq (,$(filter $(distrelease),lucid)) +ifneq (,$(filter $(distrelease),lucid precise)) with_ada := endif -# disable building gnat cross compilers on 32bit archs targeting 64bit archs -ifneq (,$(filter $(build_type), build-cross cross-build-cross)) - ifneq (,$(filter $(DEB_HOST_ARCH), armhf armel i386 mips mipsel powerpc)) - ifneq (,$(filter $(DEB_TARGET_ARCH), alpha amd64 arm64 mips64 mips64el ppc64 ppc64el s390x sparc64)) - with_ada := disabled on 32bit archs targeting 64bit archs - endif - endif -endif with_ada := $(call envfilt, ada, , , $(with_ada)) -#with_ada := disabled for GCC 6 - ifeq ($(DEB_STAGE)-$(filter libgnat, $(with_rtlibs)),rtlibs-) with_ada := disabled for rtlibs stage endif +#with_ada := disabled for GCC 9 #ifneq ($(single_package),yes) # with_separate_gnat := yes @@ -712,7 +837,7 @@ endif ifneq ($(with_separate_gnat),yes) ifeq ($(with_ada),yes) - ifneq (,$(filter $(distrelease),squeeze lucid)) + ifneq (,$(filter $(distrelease),squeeze lucid precise)) with_ada := endif endif @@ -737,7 +862,7 @@ endif ifeq ($(with_ada),yes) enabled_languages += ada with_libgnat := yes - with_gnatsjlj := yes + #with_gnatsjlj := yes endif # C++ ------------------------- @@ -750,7 +875,7 @@ endif ifneq (,$(findstring $(DEB_TARGET_ARCH_CPU),$(cxx_no_cpus))) with_cxx := disabled for cpu $(DEB_TARGET_ARCH_CPU) endif -with_cxx := $(call envfilt, c++, obj-c++ java, , $(with_cxx)) +with_cxx := $(call envfilt, c++, obj-c++, , $(with_cxx)) # Set the default libstdc++ ABI. libstdc++ provides both ABI's. # Existing code still runs with the new c++11 ABI, however link @@ -791,131 +916,6 @@ ifeq ($(with_cxx),yes) enabled_languages += c++ endif -# Java -------------------- -# - To build a standalone gcj package (with no corresponding gcc -# package): with_separate_libgcj=yes, with_standalone_gcj=yes -# - To build the java packages from the gcc source package: -# with_separate_libgcj=no, with_standalone_gcj=no -# - To build gcc and java from separate sources: -# with_separate_libgcj=yes, with_standalone_gcj=no - -java_no_cpus := # arm64 mips mipsel -java_no_systems := - -ifneq ($(single_package),yes) - with_separate_libgcj := yes -endif -with_separate_libgcj := no -with_standalone_gcj := no - -ifneq ($(separate_lang),yes) - with_java := yes -endif - -# java converted for V3 C++ ABI for some archs -ifeq ($(with_base_only),yes) - with_java := no -endif -ifneq (,$(filter $(DEB_TARGET_ARCH_CPU),$(java_no_cpus))) - with_java := disabled for cpu $(DEB_TARGET_ARCH_CPU) -endif -ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM),$(java_no_systems))) - with_java := disabled for system $(DEB_TARGET_GNU_SYSTEM) -endif -ifeq ($(java_no_cross)-$(DEB_CROSS),yes-yes) - with_java := disabled for cross compiler package -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 - -ifeq ($(with_java)-$(with_separate_libgcj),yes-yes) - ifneq (,$(findstring gcj, $(PKGSOURCE))) - languages := c c++ - separate_lang := yes - else - debian_extra_langs += java - with_java := built from separate source - with_gcj := built from separate source - with_libgcj := buit from separate source - endif -endif - -with_java_plugin := no - -ifeq ($(with_java),yes) - # use the same names as OpenJDK - java_cpu_map = armel=arm armhf=arm arm64=aarch64 hppa=parisc \ - i686=i386 i586=i386 i486=i386 x32=x32 \ - mipsel=mips mips64=mips mips64el=mips mipsn32=mips mipsn32el=mips \ - powerpc=ppc ppc64el=ppc64le sh4=sh x32=x32 - java_cpu = $(patsubst $(DEB_TARGET_ARCH_CPU)=%,%, \ - $(filter $(DEB_TARGET_ARCH_CPU)=%,$(java_cpu_map))) - ifeq (,$(java_cpu)) - java_cpu = $(DEB_TARGET_ARCH_CPU) - endif - java_priority = 10$(subst .,,$(BASE_VERSION))0 - - with_libgcj := yes - with_libgcjbc := no - - ifneq (,$(findstring gcj-4,$(PKGSOURCE))) - ifneq (,$(filter $(DEB_TARGET_ARCH), arm)) - with_gcj_base_only := yes - endif - endif - - ifeq ($(single_package),yes) - with_ecj := yes - endif - - #ifneq (,$(filter $(DEB_TARGET_ARCH),hppa)) - # with_native_ecj := yes - #endif - - ifneq (,$(filter $(DEB_TARGET_ARCH),arm armel)) - with_external_ecj1 := yes - endif - ifeq (,$(filter $(distrelease),squeeze wheezy jessie lucid precise trusty xenial)) - # not yet built ... - ifeq (,$(filter $(DEB_TARGET_ARCH),powerpcspe sh4)) - with_external_ecj1 := yes - endif - with_external_ecj1 := yes - endif - - with_java_maintainer_mode := no - - # used as well in debian/rules.conf to determine the build deps - java_awt_peers = gtk # qt # xlib - - with_libgcj_doc := yes - - # Build all packages needed for Java development (gcj, libgcj-dev) - ifeq ($(with_dev),yes) - with_javadev := yes - with_gcj := yes - endif - - with_java_alsa := yes - ifeq (,$(filter $(DEB_TARGET_GNU_SYSTEM),linux-gnu)) - with_java_alsa := no - endif - - # Just build the cross compiler to be able to cross build a native build. - ifeq ($(DEB_CROSS),yes) - with_libgcj := - endif - - enabled_languages += java -endif - # Go ------------------- # - To build a standalone gccgo package (with no corresponding gcc # package): with_separate_libgo=yes, with_standalone_go=yes @@ -934,11 +934,15 @@ ifneq (,$(findstring gccgo, $(PKGSOURCE))) with_libcc1 := endif -go_no_cpus := avr arm hppa sh4 +go_no_cpus := avr arm hppa +go_no_cpus += m68k # See PR 79281 / PR 83314 ifeq (,$(filter $(distrelease),lenny etch squeeze dapper hardy jaunty karmic lucid maverick natty oneiric)) go_no_cpus := $(filter-out arm, $(go_no_cpus)) endif go_no_systems := kfreebsd +ifneq (,$(filter $(distrelease),precise)) + go_no_archs = armhf +endif ifneq ($(with_base_only),yes) ifneq ($(separate_lang),yes) @@ -951,6 +955,9 @@ endif ifneq (,$(findstring $(DEB_TARGET_ARCH_OS),$(go_no_systems))) with_go := disabled for system $(DEB_TARGET_GNU_SYSTEM) endif +ifneq (,$(filter $(DEB_TARGET_ARCH),$(go_no_archs))) + with_go := disabled for architecture $(DEB_TARGET_ARCH) +endif ifeq ($(go_no_cross)-$(DEB_CROSS),yes-yes) with_go := disabled for cross compiler package endif @@ -962,6 +969,9 @@ with_go := $(call envfilt, go, , , $(with_go)) # Build all packages needed for Go development ifneq (,$(findstring gcc, $(PKGSOURCE))) ifeq ($(with_go),yes) + ifeq ($(with_dev),yes) + with_godev := yes + endif with_libgo := yes enabled_languages += go endif @@ -980,9 +990,25 @@ ifeq ($(with_go)-$(with_separate_libgo),yes-yes) endif endif +# BRIG --------------------------- + +with_brig := no +ifneq (,$(filter $(DEB_TARGET_ARCH),amd64 i386 x32)) + with_brig := yes +endif +with_brig := $(call envfilt, brig, , , $(with_brig)) + +ifeq ($(with_brig),yes) + with_brigdev := yes + ifeq ($(with_common_libs),yes) + with_libhsailrt := yes + endif + enabled_languages += brig +endif + # D --------------------------- d_no_cross := yes -d_no_snap := yes +d_no_snap := d_no_cpus := s390 ifneq ($(single_package),yes) @@ -1003,9 +1029,11 @@ endif ifeq ($(DEB_STAGE)-$(filter libphobos, $(with_rtlibs)),rtlibs-) with_d := disabled for rtlibs stage endif +ifeq ($(GENERATE_DFSG_TARBALL),yes) + with_d := disabled while generating the dfsg tarball +endif with_d := $(call envfilt, d, , , $(with_d)) - -#with_d := not yet built for GCC 6 +#with_d := not yet built for GCC 9 ifeq ($(with_base_only),yes) with_d := no @@ -1025,22 +1053,26 @@ ifeq ($(with_d)-$(with_separate_gdc),yes-yes) endif ifeq ($(with_d),yes) - libphobos_archs = amd64 armel armhf i386 x32 kfreebsd-amd64 kfreebsd-i386 - ifneq (,$(filter $(DEB_TARGET_ARCH), $(libphobos_archs))) - with_libphobos := yes + phobos_archs = amd64 arm64 armel armhf i386 x32 kfreebsd-amd64 kfreebsd-i386 + phobos_archs += hppa + phobos_archs += mips mips64 mipsel mips64el + phobos_archs += mipsn32 mipsn32el + phobos_archs += mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el + phobos_archs += riscv64 s390x + ifneq (,$(filter $(DEB_TARGET_ARCH), $(phobos_archs))) + with_phobos := yes endif - libphobos_no_cpus := alpha avr arm64 hppa ia64 m68k \ - mips mipsel mips64 mips64el mipsn32 mipsn32el \ - powerpc powerpcspe ppc64 s390 s390x sh4 sparc sparc64 - libphobos_no_systems := gnu kfreebsd-gnu - ifneq (,$(filter $(DEB_TARGET_ARCH_CPU),$(libphobos_no_cpus))) - with_libphobos := disabled for cpu $(DEB_TARGET_ARCH_CPU) + phobos_no_cpus := alpha avr hppa ia64 m68k \ + powerpc ppc64 s390 sh4 sparc sparc64 + phobos_no_systems := gnu kfreebsd-gnu + ifneq (,$(filter $(DEB_TARGET_ARCH_CPU),$(phobos_no_cpus))) + with_phobos := disabled for cpu $(DEB_TARGET_ARCH_CPU) endif - ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM),$(libphobos_no_systems))) - with_libphobos := disabled for system $(DEB_TARGET_GNU_SYSTEM) + ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM),$(phobos_no_systems))) + with_phobos := disabled for system $(DEB_TARGET_GNU_SYSTEM) endif - with_libphobosdev := $(with_libphobos) + with_libphobosdev := $(with_phobos) enabled_languages += d endif @@ -1070,17 +1102,23 @@ ifeq ($(with_fortran),yes) with_fdev := yes endif endif - with_libgfortran := yes + ifeq ($(with_common_libs),yes) + with_libgfortran := yes + endif enabled_languages += fortran endif # libquadmath ------------------- -ifneq (,$(findstring $(DEB_TARGET_ARCH_CPU), ia64 i386 i486 i586 i686 amd64)) +quadmath_targets = amd64 ia64 i386 x32 \ + hurd-i386 kfreebsd-i386 kfreebsd-amd64 \ + ppc64el +# powerpc and ppc64 don't have power7 CPU defaults ... +ifneq (,$(filter $(DEB_TARGET_ARCH), $(quadmath_targets))) # FIXME: upstream build tied to gfortran build ifeq ($(with_fortran),yes) with_qmath := yes - ifneq (,$(findstring gcc-6,$(PKGSOURCE))) + ifneq (,$(findstring gcc-9,$(PKGSOURCE))) ifeq ($(with_common_libs),yes) with_libqmath := yes endif @@ -1121,7 +1159,9 @@ ifeq ($(with_objc),yes) ifneq (,$(findstring $(DEB_TARGET_GNU_SYSTEM),$(libgc_no_systems))) with_objc_gc := disabled for system $(DEB_TARGET_GNU_SYSTEM) endif - + ifneq (,$(findstring build-cross, $(build_type))) + with_objc_gc := disabled for cross builds + endif # Build all packages needed for Objective-C development ifeq ($(with_dev),yes) with_objcdev := yes @@ -1152,6 +1192,45 @@ ifeq ($(with_objcxx),yes) enabled_languages += obj-c++ endif +# Modula-2 ------------------- +m2_no_cross := yes +m2_no_cross := no + +ifneq ($(with_base_only),yes) + ifneq ($(separate_lang),yes) + with_m2 := yes + endif +endif +m2_no_archs = powerpc ppc64 sh4 kfreebsd-amd64 kfreebsd-i386 hurd-i386 +ifneq (,$(filter $(DEB_TARGET_ARCH),$(m2_no_archs))) + with_m2 := disabled for cpu $(DEB_TARGET_ARCH) +endif +ifeq ($(m2_no_cross)-$(DEB_CROSS),yes-yes) + with_m2 := disabled for cross compiler package +endif +ifeq ($(DEB_STAGE)-$(filter libgm2, $(with_rtlibs)),rtlibs-) + with_m2 := disabled for rtlibs stage +endif +ifneq (,$(filter $(distrelease),precise)) + with_m2 := disabled for $(distrelease) backport +endif + +with_m2 := $(call envfilt, m2, , , $(with_m2)) +#with_m2 := disabled, not working with lto builds. + +# Build all packages needed for Modula-2 development +ifeq ($(with_m2),yes) + # FIXME: lto doesn't work yet with gm2 + with_lto_build := + ifeq ($(with_dev),yes) + with_m2dev := yes + endif + ifeq ($(with_common_libs),yes) + with_libgm2 := yes + endif + enabled_languages += gm2 +endif + # ------------------------------------------------------------------- # other config @@ -1169,7 +1248,7 @@ with_nls := $(call envfilt, nls, , , $(with_nls)) # powerpc nof libraries ----- with_libnof := no -ifneq (,$(findstring gcc-6,$(PKGSOURCE))) +ifneq (,$(findstring gcc-9,$(PKGSOURCE))) ifeq (,$(with_rtlibs)) with_source := yes endif @@ -1188,7 +1267,7 @@ with_ssp := $(call envfilt, ssp, , , $(with_ssp)) ifeq ($(with_ssp),yes) ifneq ($(derivative),Debian) - ifneq (,$(findstring gcc-6, $(PKGSOURCE))) + ifneq (,$(findstring gcc-9, $(PKGSOURCE))) with_ssp_default := yes endif endif @@ -1226,7 +1305,8 @@ endif # asan / sanitizer -------------------- with_asan := with_asan := $(call envfilt, asan, , , $(with_asan)) -asan_archs = amd64 armel armhf arm64 i386 powerpc ppc64 ppc64el x32 sparc sparc64 +asan_archs = amd64 armel armhf arm64 i386 powerpc ppc64 ppc64el x32 \ + s390x sparc sparc64 ifneq (,$(filter $(DEB_TARGET_ARCH),$(asan_archs))) with_asan := yes endif @@ -1234,7 +1314,7 @@ endif # lsan / sanitizer -------------------- with_lsan := with_lsan := $(call envfilt, lsan, , , $(with_lsan)) -lsan_archs = amd64 +lsan_archs = arm64 amd64 ppc64 ppc64el ifneq (,$(filter $(DEB_TARGET_ARCH),$(lsan_archs))) with_lsan := yes endif @@ -1242,7 +1322,7 @@ endif # tsan / sanitizer -------------------- with_tsan := with_tsan := $(call envfilt, tsan, , , $(with_tsan)) -tsan_archs = amd64 +tsan_archs = arm64 amd64 ppc64 ppc64el ifneq (,$(filter $(DEB_TARGET_ARCH),$(tsan_archs))) with_tsan := yes endif @@ -1252,7 +1332,8 @@ endif # with_cdev # ubsan / sanitizer -------------------- with_ubsan := with_ubsan := $(call envfilt, ubsan, , , $(with_ubsan)) -ubsan_archs = amd64 armel armhf arm64 i386 powerpc ppc64 ppc64el x32 sparc sparc64 +ubsan_archs = amd64 armel armhf arm64 i386 powerpc ppc64 ppc64el x32 \ + s390x sparc sparc64 ifneq (,$(filter $(DEB_TARGET_ARCH),$(ubsan_archs))) with_ubsan := yes endif @@ -1269,36 +1350,18 @@ endif with_vtv := with_libvtv := -# libcilkrts -------------------- -with_cilkrts := -with_cilkrts := $(call envfilt, cilkrts, , , $(with_cilkrts)) -cilkrts_archs = amd64 i386 x32 -ifneq (,$(filter $(DEB_TARGET_ARCH),$(cilkrts_archs))) - with_cilkrts := yes -endif - -# libmpx -------------------- -with_mpx := -with_mpx := $(call envfilt, mpx, , , $(with_mpx)) -mpx_archs = amd64 i386 -ifneq (,$(filter $(DEB_TARGET_ARCH),$(mpx_archs))) - # requires newer binutils, or else libmpxwrappers isn't built - ifeq (,$(filter $(distrelease),squeeze lucid precise)) - with_mpx := yes - ifeq ($(with_common_libs),yes) - ifneq (,$(findstring gcc-, $(PKGSOURCE))) - with_libmpx := yes - endif - endif - endif -endif - # pie by default -------------------- with_pie := ifeq ($(distribution),Debian) ifeq (,$(filter $(distrelease),wheezy squeeze jessie)) - pie_archs = amd64 arm64 armel armhf i386 mips mipsel mips64el \ - ppc64el s390x sparc sparc64 kfreebsd-amd64 kfreebsd-i386 + pie_archs = amd64 arm64 armel armhf i386 \ + mips mipsel mips64 mips64el mipsn32 mipsn32el \ + mipsr6 mipsr6el mips64r6 mips64r6el mipsn32r6 mipsn32r6el \ + ppc64el s390x sparc sparc64 kfreebsd-amd64 kfreebsd-i386 \ + hurd-i386 riscv64 + endif + ifeq (,$(filter $(distrelease),wheezy squeeze jessie stretch)) + pie_archs += powerpc ppc64 endif else ifeq ($(distribution),Ubuntu) ifeq (,$(filter $(distrelease),lucid precise trusty utopic vivid wily)) @@ -1307,14 +1370,20 @@ else ifeq ($(distribution),Ubuntu) ifeq (,$(filter $(distrelease),lucid precise trusty utopic vivid wily xenial)) pie_archs += amd64 ppc64el endif + ifeq (,$(filter $(distrelease),lucid precise trusty utopic vivid wily xenial yakkety zesty)) + pie_archs += armhf arm64 i386 + endif endif ifneq (,$(filter $(DEB_TARGET_ARCH),$(pie_archs))) with_pie := yes endif +ifeq ($(trunk_build),yes) + with_pie := disabled for trunk builds +endif # gold -------------------- # armel with binutils 2.20.51 only -gold_archs = amd64 armel armhf i386 powerpc powerpcspe ppc64 ppc64el sparc sparc64 x32 hurd-i386 +gold_archs = amd64 armel armhf i386 powerpc ppc64 ppc64el s390x sparc sparc64 x32 hurd-i386 ifneq (,$(filter $(DEB_TARGET_ARCH),$(gold_archs))) with_gold := yes endif @@ -1336,19 +1405,6 @@ endif # ------------------------------------------------------------------- # non-extra config ifeq ($(extra_package),yes) - ifeq ($(with_separate_libgcj)-$(with_standalone_gcj),yes-no) - # package stuff - with_gccbase := no - with_cdev := no - with_cxx := no - with_cxxdev := no - - ifneq ($(DEB_CROSS),yes) - with_gcjbase := yes - else - with_gcjxbase := yes - endif - endif ifeq ($(with_separate_libgo),yes) # package stuff with_gccbase := yes @@ -1387,12 +1443,11 @@ else endif # libasan ----------------- - # asan changes soname in GCC 6 - #ifeq ($(with_asan)-$(with_common_libs),yes-yes) + ifeq ($(with_asan)-$(with_common_libs),yes-yes) ifeq ($(with_asan),yes) with_libasan := yes endif - #endif + endif # liblsan ----------------- ifeq ($(with_lsan)-$(with_common_libs),yes-yes) @@ -1408,7 +1463,9 @@ else # libubsan ----------------- ifeq ($(with_ubsan)-$(with_common_libs),yes-yes) + ifeq ($(with_ubsan),yes) with_libubsan := yes + endif endif # libvtv ----------------- @@ -1416,25 +1473,18 @@ else with_libvtv := yes endif - # libmpx ----------------- - ifeq ($(with_mpx)-$(with_common_libs),yes-yes) - with_libmpx := yes - endif - - # libcilkrts ----------------- - ifeq ($(with_cilkrts)-$(with_common_libs),yes-yes) - with_libcilkrts := yes - endif - # libquadmath ----------------- ifeq ($(with_qmath)-$(with_common_libs),yes-yes) with_libqmath := yes endif - # fixincludes ------- - ifneq ($(DEB_CROSS),yes) - ifeq ($(with_common_pkgs),yes) - with_fixincl := yes + # libunwind ----------------- + with_internal_libunwind = + ifeq ($(DEB_HOST_ARCH),ia64) + ifeq ($(DEB_STAGE),stage1) + ifeq ($(DEB_CROSS),yes) + with_internal_libunwind = yes + endif endif endif @@ -1446,6 +1496,13 @@ else endif endif + # libphobos ----------------- + ifeq ($(with_phobos)-$(with_common_libs),yes-yes) + ifeq ($(with_common_libs),yes) + with_libphobos := yes + endif + endif + # libgcc-math -------------------- with_libgmath := no ifneq (,$(findstring i486,$(DEB_TARGET_ARCH))) @@ -1463,8 +1520,13 @@ else hppa64_no_snap := no hppa64_archs := hppa ifneq (,$(filter $(build_type), build-native cross-build-native)) - ifeq (,$(filter $(distrelease),wheezy squeeze jessie lucid precise trusty utopic vivid wily)) - hppa64_archs += amd64 i386 x32 + ifneq (,$(filter $(distrelease),wheezy squeeze jessie lucid precise trusty utopic vivid wily)) + binutils_hppa64 := binutils-hppa64 + else + ifneq ($(single_package),yes) + hppa64_archs += amd64 i386 x32 + endif + binutils_hppa64 := binutils-hppa64-linux-gnu endif ifneq (,$(filter $(DEB_TARGET_ARCH),$(hppa64_archs))) with_hppa64 := yes @@ -1473,6 +1535,9 @@ else ifeq ($(hppa64_no_snap)-$(trunk_build),yes-yes) with_hppa64 := disabled for snapshot build endif + ifneq ($(findstring nohppa64, $(DEB_BUILD_OPTIONS)),) + with_hppa64 := disabled by DEB_BUILD_OPTIONS + endif with_hppa64 := $(call envfilt, hppa64, , , $(with_hppa64)) ifeq ($(DEB_STAGE),rtlibs) @@ -1481,14 +1546,12 @@ else 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-6, $(PKGSOURCE))) + ifneq (,$(findstring gcc-9, $(PKGSOURCE))) ifeq ($(derivative),Ubuntu) # neon_archs = armel armhf # ifneq (, $(filter $(DEB_TARGET_ARCH),$(neon_archs))) @@ -1519,14 +1582,9 @@ check_no_systems := # gnu kfreebsd-gnu ifneq (,$(filter $(DEB_TARGET_ARCH_CPU),$(check_no_cpus))) with_check := disabled for cpu $(DEB_TARGET_ARCH_CPU) endif -ifneq (,$(findstring $(DEB_TARGET_GNU_SYSTEM),$(check_no_systems))) - with_check := disabled for system $(DEB_TARGET_GNU_SYSTEM) -endif -ifeq ($(derivative)-$(DEB_HOST_ARCH),Ubuntu-hppa) - ifneq ($(single_package),yes) - with_check := disabled, testsuite timeouts with expect - endif -endif +#ifneq (,$(findstring $(DEB_TARGET_GNU_SYSTEM),$(check_no_systems))) +# with_check := disabled for system $(DEB_TARGET_GNU_SYSTEM) +#endif ifneq (,$(findstring gdc,$(PKGSOURCE))) with_check := disabled for D endif @@ -1537,17 +1595,19 @@ endif ifneq ($(findstring nocheck, $(DEB_BUILD_OPTIONS)),) with_check := disabled by DEB_BUILD_OPTIONS endif -ifneq (,$(filter $(DEB_HOST_ARCH), hppa mips)) - ifneq ($(single_package),yes) - with_check := disabled for $(DEB_HOST_ARCH), testsuite timeouts with expect - endif -endif +#ifneq (,$(filter $(DEB_HOST_ARCH), hppa mips)) +# ifneq ($(single_package),yes) +# with_check := disabled for $(DEB_HOST_ARCH), testsuite timeouts with expect +# endif +#endif #with_check := disabled for this upload # not a dependency on all archs, but if available, use it for the testsuite ifneq (,$(wildcard /usr/bin/localedef)) locale_data = generate endif +# try to b-d on locales-all +locale_data = ifneq (,$(filter $(build_type), build-cross cross-build-cross)) ldconfig_arg = --noscripts @@ -1562,7 +1622,9 @@ export debian_extra_langs # multilib biarch_map := i686=x86_64 powerpc=powerpc64 sparc=sparc64 sparc64=sparc s390=s390x s390x=s390 \ x86_64=i686 powerpc64=powerpc mips=mips64 mipsel=mips64el \ - mips64=mips mips64el=mipsel mipsn32=mips mipsn32el=mipsel + mips64=mips mips64el=mipsel mipsn32=mips mipsn32el=mipsel \ + mipsr6=mips64r6 mipsr6el=mips64r6el mips64r6=mipsr6 mips64r6el=mipsr6el \ + mipsn32r6=mipsr6 mipsn32r6el=mipsr6el ifneq (,$(filter $(derivative),Ubuntu)) ifeq (,$(filter $(distrelease),dapper hardy jaunty karmic lucid)) biarch_map := $(subst i686=,i486=,$(biarch_map)) @@ -1660,32 +1722,28 @@ define gen_biarch ifeq ($$(with_libvtv),yes) with_lib$1vtv := yes endif - ifeq ($$(with_libcilkrts),yes) - with_lib$1cilkrts := yes - endif - ifeq ($$(with_libmpx),yes) - ifneq (,$(filter $1, 32 64)) - with_lib$1mpx := yes - endif - endif ifeq ($$(with_libqmath),yes) with_lib$1qmath := yes endif ifeq ($$(with_libgo),yes) with_lib$1go := yes endif + ifeq ($$(with_godev),yes) + with_lib$1godev := yes + endif + ifeq ($$(with_libhsailrt),yes) + with_lib$1hsailrt := yes + endif biarch_multidir_names = libiberty libgcc libbacktrace libatomic libgomp ifneq (,$$(findstring gcc-, $$(PKGSOURCE))) biarch_multidir_names += libstdc++-v3 libobjc libgfortran libssp \ - zlib libitm libmpx \ - libsanitizer \ - libcilkrts libvtv + zlib libitm libsanitizer ifeq ($$(with_objc_gc),yes) biarch_multidir_names += boehm-gc endif endif - ifneq (,$(findstring yes, $(with_java) $(with_go))) + ifneq (,$(findstring yes, $(with_go))) biarch_multidir_names += libffi endif ifeq ($(with_fortran),yes) @@ -1694,11 +1752,18 @@ define gen_biarch ifeq ($(with_go),yes) biarch_multidir_names += libgo endif - ifeq ($(with_libphobos),yes) + ifeq ($(with_brig),yes) + biarch_multidir_names += libhsail-rt + endif + ifeq ($(with_phobos),yes) ifeq (,$(filter $1, hf)) biarch_multidir_names += libphobos endif endif + # FIXME: it now builds, but installs everything into the same $libdir + #ifeq ($(with_m2),yes) + # biarch_multidir_names += libgm2 + #endif ifneq (,$$(findstring 32,$1)) TARGET64_MACHINE := $$(strip $$(subst $$(DEB_TARGET_GNU_CPU),$$(biarch_cpu), \ $$(TARGET_ALIAS))) @@ -1713,10 +1778,16 @@ define gen_biarch endif endef biarch32archs := /amd64/ppc64/kfreebsd-amd64/s390x/sparc64/x32/mipsn32/mipsn32el/mips64/mips64el/ -biarch64archs := /i386/powerpc/sparc/s390/mips/mipsel/mipsn32/mipsn32el/x32/ +biarch64archs := /i386/powerpc/sparc/s390/mips/mipsel/mipsn32/mipsn32el/ biarchn32archs := /mips/mipsel/mips64/mips64el/ +ifeq (yes,$(MIPS_R6_ENABLED)) + biarch32archs += /mipsn32r6/mipsn32r6el/mips64r6/mips64r6el/ + biarch64archs += /mipsr6/mipsr6el/mipsn32r6/mipsn32r6el/x32/ + biarchn32archs += /mipsr6/mipsr6el/mips64r6/mips64r6el/ +endif + ifeq ($(derivative),Ubuntu) - ifeq (,$(filter $(distrelease),dapper hardy jaunty karmic lucid maverick natty)) + ifeq (,$(filter $(distrelease),dapper hardy jaunty karmic lucid maverick natty artful)) biarchhfarchs := /armel/ biarchsfarchs := /armhf/ endif @@ -1747,7 +1818,6 @@ ifeq ($(no_biarch_libs),yes) with_lib64cxxdbg := no with_lib64objc := no with_lib64ffi := no - with_lib64gcj := no with_lib64gfortran := no with_lib64ssp := no with_lib64go := no @@ -1761,20 +1831,18 @@ ifeq ($(no_biarch_libs),yes) with_lib64tsan := no with_lib64ubsan := no with_lib64vtv := no - with_lib64cilkrts := no - with_lib64mpx := no with_lib64gccdev := no with_lib64cxxdev := no with_lib64objcdev := no with_lib64gfortrandev := no with_lib64phobosdev := no + with_lib64hsailrtdev := no with_lib32gcc := no with_lib32cxx := no with_lib32cxxdbg := no with_lib32objc := no with_lib32ffi := no - with_lib32gcj := no with_lib32gfortran := no with_lib32ssp := no with_lib32go := no @@ -1788,20 +1856,18 @@ ifeq ($(no_biarch_libs),yes) with_lib32tsan := no with_lib32ubsan := no with_lib32vtv := no - with_lib32cilkrts := no - with_lib32mpx := no with_lib32gccdev := no with_lib32cxxdev := no with_lib32objcdev := no with_lib32gfortrandev := no with_lib32phobosdev := no + with_lib32hsailrtdev := no with_libn32gcc := no with_libn32cxx := no with_libn32cxxdbg := no with_libn32objc := no with_libn32ffi := no - with_libn32gcj := no with_libn32gfortran := no with_libn32ssp := no with_libn32go := no @@ -1819,13 +1885,13 @@ ifeq ($(no_biarch_libs),yes) with_libn32objcdev := no with_libn32gfortrandev:= no with_libn32phobosdev := no + with_libn32hsailrtdev := no with_libx32gcc := no with_libx32cxx := no with_libx32cxxdbg := no with_libx32objc := no with_libx32ffi := no - with_libx32gcj := no with_libx32gfortran := no with_libx32ssp := no with_libx32go := no @@ -1839,19 +1905,18 @@ ifeq ($(no_biarch_libs),yes) with_libx32tsan := no with_libx32ubsan := no with_libx32vtv := no - with_libx32cilkrts := no with_libx32gccdev := no with_libx32cxxdev := no with_libx32objcdev := no with_libx32gfortrandev:= no with_libx32phobosdev := no + with_libx32hsailrtdev := no with_libhfgcc := no with_libhfcxx := no with_libhfcxxdbg := no with_libhfobjc := no with_libhfffi := no - with_libhfgcj := no with_libhfgfortran := no with_libhfssp := no with_libhfgo := no @@ -1869,13 +1934,13 @@ ifeq ($(no_biarch_libs),yes) with_libhfobjcdev := no with_libhfgfortrandev := no with_libhfphobosdev := no + with_libhfhsailrtdev := no with_libsfgcc := no with_libsfcxx := no with_libsfcxxdbg := no with_libsfobjc := no with_libsfffi := no - with_libsfgcj := no with_libsfgfortran := no with_libsfssp := no with_libsfgo := no @@ -1893,8 +1958,7 @@ ifeq ($(no_biarch_libs),yes) with_libsfobjcdev := no with_libsfgfortrandev := no with_libsfphobosdev := no - - with_java_plugin := no + with_libsfhsailrtdev := no ifeq ($(with_ada)-$(with_separate_gnat),yes-yes) biarchhf := disabled for Ada @@ -1926,17 +1990,23 @@ ifneq (,$(findstring $(DEB_TARGET_GNU_SYSTEM),$(locale_no_systems))) force_gnu_locales := disabled for system $(DEB_TARGET_GNU_SYSTEM) endif -gcc_tarpath := $(firstword $(wildcard gcc-*.tar.* /usr/src/gcc-6/gcc-*.tar.*)) +gcc_tarpath := $(firstword $(wildcard gcc-*.tar.* /usr/src/gcc-9/gcc-*.tar.*)) gcc_tarball := $(notdir $(gcc_tarpath)) gcc_srcdir := $(subst -dfsg,,$(patsubst %.tar.xz,%,$(patsubst %.tar.lzma,%,$(patsubst %.tar.gz,%,$(gcc_tarball:.tar.bz2=))))) -ifeq ($(with_d),yes) - gdc_tarpath := $(firstword $(wildcard gdc-*.tar.* /usr/src/gcc-$(BASE_VERSION)/gdc-*.tar.*)) - gdc_tarball := $(notdir $(gdc_tarpath)) - gdc_srcdir := $(patsubst %.tar.xz,%,$(patsubst %.tar.lzma,%,$(patsubst %.tar.gz,%,$(gdc_tarball:.tar.bz2=)))) +ifeq ($(with_offload_nvptx),yes) + nl_nvptx_tarpath := $(firstword $(wildcard newlib-*.tar.* /usr/src/gcc-$(BASE_VERSION)/newlib-*.tar.*)) + nl_nvptx_tarball := $(notdir $(nl_nvptx_tarpath)) + nl_nvptx_srcdir := $(patsubst %.tar.xz,%,$(patsubst %.tar.lzma,%,$(patsubst %.tar.gz,%,$(nl_nvptx_tarball:.tar.bz2=)))) endif -# NOTE: This is not yet used. when building gcj, gdc or gnat using the +#ifeq ($(with_m2),yes) + m2_tarpath := $(firstword $(wildcard gm2-*.tar.* /usr/src/gcc-$(BASE_VERSION)/gm2-*.tar.*)) + m2_tarball := $(notdir $(m2_tarpath)) + m2_srcdir := $(patsubst %.tar.xz,%,$(patsubst %.tar.lzma,%,$(patsubst %.tar.gz,%,$(m2_tarball:.tar.bz2=)))) +#endif + +# NOTE: This is not yet used. when building gdc or gnat using the # gcc-source package, we don't require an exact binary dependency. ifneq ($(dir $(gcc_tarpath)),./) built_using_external_source := yes @@ -1950,8 +2020,6 @@ ifeq ($(with_ada)-$(with_separate_gnat),yes-yes) add_built_using = yes endif -ecj_jar := $(firstword $(wildcard ecj.jar /usr/share/java/eclipse-ecj.jar /usr/share/java/ecj.jar)) - unpack_stamp := $(stampdir)/01-unpack-stamp pre_patch_stamp := $(stampdir)/02-pre-patch-stamp patch_stamp := $(stampdir)/02-patch-stamp @@ -1963,8 +2031,6 @@ build_indep_stamp := $(stampdir)/05-build-indep-stamp build_html_stamp := $(stampdir)/05-build-html-stamp build_locale_stamp := $(stampdir)/05-build-locale-stamp build_doxygen_stamp := $(stampdir)/05-build-doxygen-stamp -build_javasrc_stamp := $(stampdir)/05-build-javasrc-stamp -build_javadoc_stamp := $(stampdir)/05-build-javadoc-stamp build_gnatdoc_stamp := $(stampdir)/05-build-gnatdoc-stamp check_stamp := $(stampdir)/06-check-stamp check_inst_stamp := $(stampdir)/06-check-inst-stamp @@ -1980,6 +2046,10 @@ configure_jit_stamp := $(stampdir)/04-configure-jit-stamp build_jit_stamp := $(stampdir)/05-build-jit-stamp install_jit_stamp := $(stampdir)/07-install-jit-stamp +configure_nvptx_stamp := $(stampdir)/04-configure-nvptx-stamp +build_nvptx_stamp := $(stampdir)/05-build-nvptx-stamp +install_nvptx_stamp := $(stampdir)/07-install-nvptx-stamp + configure_hppa64_stamp := $(stampdir)/04-configure-hppa64-stamp build_hppa64_stamp := $(stampdir)/05-build-hppa64-stamp install_hppa64_stamp := $(stampdir)/07-install-hppa64-stamp @@ -2012,19 +2082,16 @@ else endif endif -ifneq (,$(findstring gcj-, $(PKGSOURCE))) - ifeq ($(with_gcj_base_only),yes) - configure_dependencies = $(configure_dummy_stamp) - build_dependencies = $(build_dummy_stamp) - install_dependencies = $(install_dummy_stamp) - endif -endif - ifeq ($(with_jit),yes) build_dependencies += $(build_jit_stamp) install_dependencies += $(install_jit_stamp) endif +ifeq ($(with_offload_nvptx),yes) + build_dependencies += $(build_nvptx_stamp) + install_dependencies += $(install_nvptx_stamp) +endif + ifeq ($(with_neon),yes) build_dependencies += $(build_neon_stamp) install_dependencies += $(install_neon_stamp) @@ -2048,11 +2115,6 @@ ifneq (,$(findstring build-native, $(build_type))) ifeq ($(with_cxx),yes) build_indep_dependencies += $(build_doxygen_stamp) endif - ifeq ($(with_java),yes) - build_arch_dependencies += $(build_html_stamp) - build_indep_dependencies += $(build_javasrc_stamp) - build_indep_dependencies += $(build_javadoc_stamp) - endif ifeq ($(with_ada),yes) build_indep_dependencies += $(build_gnatdoc_stamp) endif @@ -2090,6 +2152,8 @@ else ignshld = - endif endif + # FIXME: don't stop at the first shlibdeps failure ... + ignshld = - endif ifeq ($(DEB_STAGE),rtlibs) define cross_mangle_shlibs @@ -2107,6 +2171,10 @@ _shlibdirs = \ $(with_build_sysroot)/usr/lib/$(call mlib_to_march,$(2)) \ $(with_build_sysroot)$(subst /usr,,/$(usr_lib$(2))) \ $(with_build_sysroot)/$(usr_lib$(2)) \ + $(if $(findstring mips64,$(DEB_TARGET_ARCH)), \ + $(with_build_sysroot)/$(usr_lib64)) \ + $(if $(findstring mipsn32,$(DEB_TARGET_ARCH)), \ + $(with_build_sysroot)/$(usr_libn32)) \ $(if $(filter yes,$(biarchsf) $(biarchhf)), \ $(with_build_sysroot)/usr/$(call mlib_to_march,$(2))/lib) \ $(if $(filter yes, $(with_common_libs)),, \ |