diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2019-11-25 14:24:18 +0300 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2019-11-25 14:24:18 +0300 |
commit | 2e162c166c97ef1da3356bb36add95be3e030c1d (patch) | |
tree | c9d61b4a73d958648750c12139a6f8263dad2570 | |
parent | 265b4d936a9a438ba11f19475772f4b8d520ca59 (diff) | |
parent | e06370f27bc2868df91c3a5f29dc7f95e3f9350a (diff) | |
download | gcc-defaults-2e162c166c97ef1da3356bb36add95be3e030c1d.tar.gz |
Merge tag 'debian/1.185.1'
29 files changed, 682 insertions, 2438 deletions
diff --git a/classpath.security b/classpath.security deleted file mode 100644 index d606f4b..0000000 --- a/classpath.security +++ /dev/null @@ -1,51 +0,0 @@ -# classpath.security -# Copyright (C) 2002, 2006 Free Software Foundation, Inc. -# -# This file is part of GNU Classpath. -# -# GNU Classpath is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# GNU Classpath is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Classpath; see the file COPYING. If not, write to the -# Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301 USA. -# -# Linking this library statically or dynamically with other modules is -# making a combined work based on this library. Thus, the terms and -# conditions of the GNU General Public License cover the whole -# combination. -# -# As a special exception, the copyright holders of this library give you -# permission to link this library with independent modules to produce an -# executable, regardless of the license terms of these independent -# modules, and to copy and distribute the resulting executable under -# terms of your choice, provided that you also meet, for each linked -# independent module, the terms and conditions of the license of that -# module. An independent module is a module which is not derived from -# or based on this library. If you modify this library, you may extend -# this exception to your version of the library, but you are not -# obligated to do so. If you do not wish to do so, delete this -# exception statement from your version. - -# The VM-wide default callback handler class name. MUST be a subclass of -# javax.security.auth.callback.CallbackHandler -auth.login.defaultCallbackHandler=gnu.javax.security.auth.callback.DefaultCallbackHandler - -# If this file isn't found we fall back to generating entropy through -# "battling threads". -securerandom.source=file:///dev/urandom - -# Note that the settings and ordering here are mirrored in Security. -security.provider.1=gnu.java.security.provider.Gnu -security.provider.2=gnu.javax.crypto.jce.GnuCrypto -security.provider.3=gnu.javax.crypto.jce.GnuSasl -security.provider.4=gnu.javax.net.ssl.provider.Jessie -security.provider.5=gnu.javax.security.auth.callback.GnuCallbacks diff --git a/debian/README.Debian b/debian/README.Debian index 94d4469..f791cff 100644 --- a/debian/README.Debian +++ b/debian/README.Debian @@ -34,7 +34,7 @@ How are the default compilers selected? --------------------------------------- Starting in Debian 3.0, there is now a gcc-defaults package set. This -creates the actual packages for gcc, gnat, g++, gobjc, chill, gcj, gij, +creates the actual packages for gcc, gnat, g++, gobjc, gdc and gpc. These packages will depend on the corresponding default compiler for that architecture. For Debian 5.0 for example, "gcc" depends on "gcc-5", which means that the "gcc-5" package will @@ -50,16 +50,14 @@ similar. The default compiler versions for Debian GNU/Linux on illumos-amd64 are (minor version numbers omitted): - cpp : cpp-6 - gcc : gcc-6 - g++ : g++-6 - gfortran : gfortran-6 - gcj : gcj-6 - gij : gij-6 - gccgo : gccgo-6 - gobjc : gobjc-6 - gobjc++ : gobjc++-6 - gdc : gdc-6 + cpp : cpp-9 + gcc : gcc-9 + g++ : g++-9 + gfortran : gfortran-9 + gccgo : gccgo-9 + gobjc : gobjc-9 + gobjc++ : gobjc++-9 + gdc : gdc-9 Documentation for the default compilers can be found in diff --git a/debian/README.Debian.m4 b/debian/README.Debian.m4 index e3b1786..4984cd6 100644 --- a/debian/README.Debian.m4 +++ b/debian/README.Debian.m4 @@ -39,7 +39,7 @@ How are the default compilers selected? --------------------------------------- Starting in Debian 3.0, there is now a gcc-defaults package set. This -creates the actual packages for gcc, gnat, g++, gobjc, chill, gcj, gij, +creates the actual packages for gcc, gnat, g++, gobjc, gdc and gpc. These packages will depend on the corresponding default compiler for that architecture. For Debian 5.0 for example, "gcc" depends on "gcc-5", which means that the "gcc-5" package will @@ -59,8 +59,6 @@ The default compiler versions for Debian GNU/OS_NAME on DEB_ARCH are gcc : gcc-PV_GCC ifenabled(`g++',` g++ : g++-PV_GPP') ifenabled(`gfortran',` gfortran : gfortran-PV_GFORT') -ifenabled(`gcj',` gcj : gcj-PV_GCJ') -ifenabled(`gcj',` gij : gij-PV_GIJ') ifenabled(`gccgo',` gccgo : gccgo-PV_GGO') ifenabled(`gobjc',` gobjc : gobjc-PV_GOBJC') ifenabled(`gobjc++',` gobjc++ : gobjc++-PV_GOBJCXX') diff --git a/debian/aot-compile b/debian/aot-compile deleted file mode 100644 index 93e1c60..0000000 --- a/debian/aot-compile +++ /dev/null @@ -1,98 +0,0 @@ -#!/usr/bin/python - -## Copyright (C) 2006, 2008 Red Hat, Inc. -## Written by Gary Benson <gbenson@redhat.com> -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. - -import sys -sys.path.append("/usr/lib/gcc") -import aotcompile -import getopt -import os - -usage = """\ -Usage: %s [OPTION...] SRCDIR DSTDIR -AOT-compile all Java bytecode in SRCDIR into DSTDIR. - -Options: - -M, --make=PATH make executable to use (%s) - -C, --gcj=PATH gcj executable to use (%s) - -D, --dbtool=PATH gcj-dbtool executable to use (%s) - -m, --makeflags=FLAGS flags to pass to make during build - -c, --gcjflags=FLAGS flags to pass to gcj during compilation - in addition to %s - -l, --ldflags=FLAGS flags to pass to gcj during linking - in addition to %s - -e, --exclude=PATH do not compile PATH - -L, --libdir=DIR overwrite destination directory - -Extra flags may also be passed using the AOT_MAKEFLAGS, AOT_GCJFLAGS -and AOT_LDFLAGS environment variables. - -The parallel=<n> option in DEB_BUILD_OPTIONS is passed to make unless --j<n> is passed with -m, --makeflags""" % ( - os.path.basename(sys.argv[0]), - aotcompile.PATHS["make"], - aotcompile.PATHS["gcj"], - aotcompile.PATHS["dbtool"], - repr(" ".join(aotcompile.GCJFLAGS)), - repr(" ".join(aotcompile.LDFLAGS))) - -try: - try: - opts, args = getopt.getopt( - sys.argv[1:], - "M:C:D:m:c:l:e:L:", - ["make=", "gcj=", "dbtool=", - "makeflags=" "gcjflags=", "ldflags=", - "exclude=", "libdir="]) - srcdir, dstdir = args - except: - print >>sys.stderr, usage - sys.exit(1) - - compiler = aotcompile.Compiler(srcdir, dstdir) - for o, a in opts: - if o in ("-M", "--make"): - aotcompile.PATHS["make"] = a - if o in ("-C", "--gcj"): - aotcompile.PATHS["gcj"] = a - if o in ("-D", "--dbtool"): - aotcompile.PATHS["dbtool"] = a - if o in ("-m", "--makeflags"): - compiler.makeflags[0:0] = a.split() - if o in ("-c", "--gcjflags"): - compiler.gcjflags[0:0] = a.split() - if o in ("-l", "--ldflags"): - compiler.ldflags[0:0] = a.split() - if o in ("-e", "--exclude"): - compiler.exclusions.append(a) - if o in ("-L", "--libdir"): - compiler.libdir = a - - compiler.makeflags[0:0] = os.environ.get("AOT_MAKEFLAGS", "").split() - compiler.gcjflags[0:0] = os.environ.get("AOT_GCJFLAGS", "").split() - compiler.ldflags[0:0] = os.environ.get("AOT_LDFLAGS", "").split() - - try: - n = [int(o.replace('parallel=', '')) for o in os.environ.get("DEB_BUILD_OPTIONS", "").replace(',',' ').split() if o.startswith('parallel=')][-1] - except (ValueError, IndexError): - n=1 - if not [o for o in compiler.makeflags if o.startswith('-j')] and n > 1: - compiler.makeflags.append('-j%d' % n) - - compiler.compile() - -except aotcompile.Error, e: - print >>sys.stderr, "%s: error: %s" % ( - os.path.basename(sys.argv[0]), e) - sys.exit(1) diff --git a/debian/aotcompile.py b/debian/aotcompile.py deleted file mode 100644 index 3ef7f1f..0000000 --- a/debian/aotcompile.py +++ /dev/null @@ -1,435 +0,0 @@ - -# -*- python -*- - -## Copyright (C) 2005, 2006, 2008 Red Hat, Inc. -## Written by Gary Benson <gbenson@redhat.com> -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. - -import classfile -import copy -import md5 -import operator -import os -import sys -import cStringIO as StringIO -import zipfile - -PATHS = {"make": "/usr/bin/make", - "gcj": "/usr/bin/gcj", - "dbtool": "/usr/bin/gcj-dbtool"} - -MAKEFLAGS = [] -GCJFLAGS = ["-g", "-O2", "-fPIC", "-findirect-dispatch", "-fjni"] -LDFLAGS = ["-Wl,-Bsymbolic"] - -MAX_CLASSES_PER_JAR = 1024 -MAX_BYTES_PER_JAR = 1048576 - -# Calculate the maximum jar size/maximum classes per jar. -try: - for line in file('/proc/meminfo'): - if line.startswith('MemTotal:'): - memtotal = int(line.split()[1]) - break - if memtotal < 2200000: - MAX_CLASSES_PER_JAR = 512 - MAX_BYTES_PER_JAR = 524288 - if memtotal < 1100000: - MAX_CLASSES_PER_JAR = 256 - MAX_BYTES_PER_JAR = 262144 -except: - pass - -MAKEFILE = "Makefile" - -MAKEFILE_HEADER = '''\ -GCJ = %(gcj)s -DBTOOL = %(dbtool)s -GCJFLAGS = %(gcjflags)s -LDFLAGS = %(ldflags)s - -%%.o: %%.jar - $(GCJ) -c $(GCJFLAGS) $< -o $@ - -TARGETS = \\ -%(targets)s - -all: $(TARGETS)''' - -MAKEFILE_JOB = ''' -%(base)s_SOURCES = \\ -%(jars)s - -%(base)s_OBJECTS = \\ -$(%(base)s_SOURCES:.jar=.o) - -%(dso)s: $(%(base)s_OBJECTS) - $(GCJ) -shared $(GCJFLAGS) $(LDFLAGS) $^ -o $@ - -%(db)s: $(%(base)s_SOURCES) - $(DBTOOL) -n $@ 64 - for jar in $^; do \\ - $(DBTOOL) -f $@ $$jar \\ - %(libdir)s/%(dso)s; \\ - done''' - -ZIPMAGIC, CLASSMAGIC = "PK\x03\x04", "\xca\xfe\xba\xbe" - -class Error(Exception): - pass - -class Compiler: - def __init__(self, srcdir, libdir, prefix = None): - self.srcdir = os.path.abspath(srcdir) - self.libdir = os.path.abspath(libdir) - if prefix is None: - self.dstdir = self.libdir - else: - self.dstdir = os.path.join(prefix, self.libdir.lstrip(os.sep)) - - # Calling code may modify these parameters - self.gcjflags = copy.copy(GCJFLAGS) - self.ldflags = copy.copy(LDFLAGS) - self.makeflags = copy.copy(MAKEFLAGS) - self.exclusions = [] - - def compile(self): - """Search srcdir for classes and jarfiles, then generate - solibs and mappings databases for them all in libdir.""" - if not os.path.isdir(self.dstdir): - os.makedirs(self.dstdir) - oldcwd = os.getcwd() - os.chdir(self.dstdir) - try: - jobs = self.getJobList() - if not jobs: - raise Error, "nothing to do" - self.writeMakefile(MAKEFILE, jobs) - for job in jobs: - job.writeJars() - system([PATHS["make"]] + self.makeflags) - for job in jobs: - job.clean() - os.unlink(MAKEFILE) - finally: - os.chdir(oldcwd) - - def getJobList(self): - """Return all jarfiles and class collections in srcdir.""" - jobs = weed_jobs(find_jobs(self.srcdir, self.exclusions)) - set_basenames(jobs) - return jobs - - def writeMakefile(self, path, jobs): - """Generate a makefile to build the solibs and mappings - databases for the specified list of jobs.""" - fp = open(path, "w") - print >>fp, MAKEFILE_HEADER % { - "gcj": PATHS["gcj"], - "dbtool": PATHS["dbtool"], - "gcjflags": " ".join(self.gcjflags), - "ldflags": " ".join(self.ldflags), - "targets": " \\\n".join(reduce(operator.add, [ - (job.dsoName(), job.dbName()) for job in jobs]))} - for job in jobs: - values = job.ruleArguments() - values["libdir"] = self.libdir - print >>fp, MAKEFILE_JOB % values - fp.close() - -def find_jobs(dir, exclusions = ()): - """Scan a directory and find things to compile: jarfiles (zips, - wars, ears, rars, etc: we go by magic rather than file extension) - and directories of classes.""" - def visit((classes, zips), dir, items): - for item in items: - path = os.path.join(dir, item) - if os.path.islink(path) or not os.path.isfile(path): - continue - magic = open(path, "r").read(4) - if magic == ZIPMAGIC: - zips.append(path) - elif magic == CLASSMAGIC: - classes.append(path) - classes, paths = [], [] - os.path.walk(dir, visit, (classes, paths)) - # Convert the list of classes into a list of directories - while classes: - # XXX this requires the class to be correctly located in its heirachy. - path = classes[0][:-len(os.sep + classname(classes[0]) + ".class")] - paths.append(path) - classes = [cls for cls in classes if not cls.startswith(path)] - # Handle exclusions. We're really strict about them because the - # option is temporary in aot-compile-rpm and dead options left in - # specfiles will hinder its removal. - for path in exclusions: - if path in paths: - paths.remove(path) - else: - raise Error, "%s: path does not exist or is not a job" % path - # Build the list of jobs - jobs = [] - paths.sort() - for path in paths: - if os.path.isfile(path): - job = JarJob(path) - else: - job = DirJob(path) - if len(job.classes): - jobs.append(job) - return jobs - -class Job: - """A collection of classes that will be compiled as a unit.""" - - def __init__(self, path): - self.path, self.classes, self.blocks = path, {}, None - self.classnames = {} - - def addClass(self, bytes, name): - """Subclasses call this from their __init__ method for - every class they find.""" - digest = md5.new(bytes).digest() - self.classes[digest] = bytes - self.classnames[digest] = name - - def __makeBlocks(self): - """Split self.classes into chunks that can be compiled to - native code by gcj. In the majority of cases this is not - necessary -- the job will have come from a jarfile which will - be equivalent to the one we generate -- but this only happens - _if_ the job was a jarfile and _if_ the jarfile isn't too big - and _if_ the jarfile has the correct extension and _if_ all - classes are correctly named and _if_ the jarfile has no - embedded jarfiles. Fitting a special case around all these - conditions is tricky to say the least. - - Note that this could be called at the end of each subclass's - __init__ method. The reason this is not done is because we - need to parse every class file. This is slow, and unnecessary - if the job is subsetted.""" - names = {} - for hash, bytes in self.classes.items(): - try: - name = classname(bytes) - except: - warn("job %s: class %s malformed or not a valid class file" % (self.path, self.classnames[hash])) - raise - if not names.has_key(name): - names[name] = [] - names[name].append(hash) - names = names.items() - # We have to sort somehow, or the jars we generate - # We sort by name in a simplistic attempt to keep related - # classes together so inter-class optimisation can happen. - names.sort() - self.blocks, bytes = [[]], 0 - for name, hashes in names: - for hash in hashes: - if len(self.blocks[-1]) >= MAX_CLASSES_PER_JAR \ - or bytes >= MAX_BYTES_PER_JAR: - self.blocks.append([]) - bytes = 0 - self.blocks[-1].append((name, hash)) - bytes += len(self.classes[hash]) - - # From Archit Shah: - # The implementation and the documentation don't seem to match. - # - # [a, b].isSubsetOf([a]) => True - # - # Identical copies of all classes this collection do not exist - # in the other. I think the method should be named isSupersetOf - # and the documentation should swap uses of "this" and "other" - # - # XXX think about this when I've had more sleep... - def isSubsetOf(self, other): - """Returns True if identical copies of all classes in this - collection exist in the other.""" - for item in other.classes.keys(): - if not self.classes.has_key(item): - return False - return True - - def __targetName(self, ext): - return self.basename + ext - - def tempJarName(self, num): - return self.__targetName(".%d.jar" % (num + 1)) - - def tempObjName(self, num): - return self.__targetName(".%d.o" % (num + 1)) - - def dsoName(self): - """Return the filename of the shared library that will be - built from this job.""" - return self.__targetName(".so") - - def dbName(self): - """Return the filename of the mapping database that will be - built from this job.""" - return self.__targetName(".db") - - def ruleArguments(self): - """Return a dictionary of values that when substituted - into MAKEFILE_JOB will create the rules required to build - the shared library and mapping database for this job.""" - if self.blocks is None: - self.__makeBlocks() - return { - "base": "".join( - [c.isalnum() and c or "_" for c in self.dsoName()]), - "jars": " \\\n".join( - [self.tempJarName(i) for i in xrange(len(self.blocks))]), - "dso": self.dsoName(), - "db": self.dbName()} - - def writeJars(self): - """Generate jarfiles that can be native compiled by gcj.""" - if self.blocks is None: - self.__makeBlocks() - for block, i in zip(self.blocks, xrange(len(self.blocks))): - jar = zipfile.ZipFile(self.tempJarName(i), "w", zipfile.ZIP_STORED) - for name, hash in block: - jar.writestr( - zipfile.ZipInfo("%s.class" % name), self.classes[hash]) - jar.close() - - def clean(self): - """Delete all temporary files created during this job's build.""" - if self.blocks is None: - self.__makeBlocks() - for i in xrange(len(self.blocks)): - os.unlink(self.tempJarName(i)) - os.unlink(self.tempObjName(i)) - -class JarJob(Job): - """A Job whose origin was a jarfile.""" - - def __init__(self, path): - Job.__init__(self, path) - self._walk(zipfile.ZipFile(path, "r")) - - def _walk(self, zf): - for name in zf.namelist(): - bytes = zf.read(name) - if bytes.startswith(ZIPMAGIC): - self._walk(zipfile.ZipFile(StringIO.StringIO(bytes))) - elif bytes.startswith(CLASSMAGIC): - self.addClass(bytes, name) - -class DirJob(Job): - """A Job whose origin was a directory of classfiles.""" - - def __init__(self, path): - Job.__init__(self, path) - os.path.walk(path, DirJob._visit, self) - - def _visit(self, dir, items): - for item in items: - path = os.path.join(dir, item) - if os.path.islink(path) or not os.path.isfile(path): - continue - fp = open(path, "r") - magic = fp.read(4) - if magic == CLASSMAGIC: - self.addClass(magic + fp.read(), name) - -def weed_jobs(jobs): - """Remove any jarfiles that are completely contained within - another. This is more common than you'd think, and we only - need one nativified copy of each class after all.""" - jobs = copy.copy(jobs) - while True: - for job1 in jobs: - for job2 in jobs: - if job1 is job2: - continue - if job1.isSubsetOf(job2): - msg = "subsetted %s" % job2.path - if job2.isSubsetOf(job1): - if (isinstance(job1, DirJob) and - isinstance(job2, JarJob)): - # In the braindead case where a package - # contains an expanded copy of a jarfile - # the jarfile takes precedence. - continue - msg += " (identical)" - warn(msg) - jobs.remove(job2) - break - else: - continue - break - else: - break - continue - return jobs - -def set_basenames(jobs): - """Ensure that each jarfile has a different basename.""" - names = {} - for job in jobs: - name = os.path.basename(job.path) - if not names.has_key(name): - names[name] = [] - names[name].append(job) - for name, set in names.items(): - if len(set) == 1: - set[0].basename = name - continue - # prefix the jar filenames to make them unique - # XXX will not work in most cases -- needs generalising - set = [(job.path.split(os.sep), job) for job in set] - minlen = min([len(bits) for bits, job in set]) - set = [(bits[-minlen:], job) for bits, job in set] - bits = apply(zip, [bits for bits, job in set]) - while True: - row = bits[-2] - for bit in row[1:]: - if bit != row[0]: - break - else: - del bits[-2] - continue - break - set = zip( - ["_".join(name) for name in apply(zip, bits[-2:])], - [job for bits, job in set]) - for name, job in set: - warn("building %s as %s" % (job.path, name)) - job.basename = name - # XXX keep this check until we're properly general - names = {} - for job in jobs: - name = job.basename - if names.has_key(name): - raise Error, "%s: duplicate jobname" % name - names[name] = 1 - -def system(command): - """Execute a command.""" - status = os.spawnv(os.P_WAIT, command[0], command) - if status > 0: - raise Error, "%s exited with code %d" % (command[0], status) - elif status < 0: - raise Error, "%s killed by signal %d" % (command[0], -status) - -def warn(msg): - """Print a warning message.""" - print >>sys.stderr, "%s: warning: %s" % ( - os.path.basename(sys.argv[0]), msg) - -def classname(bytes): - """Extract the class name from the bytes of a class file.""" - klass = classfile.Class(bytes) - return klass.constants[klass.constants[klass.name][1]][1] diff --git a/debian/changelog b/debian/changelog index d3b9ecd..964ee37 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,21 +1,175 @@ +gcc-defaults (1.185.1) unstable; urgency=medium + + * Build the mipsel and mips64el cross packages from the + gcc-defaults-mipsen source package. + + -- Matthias Klose <doko@debian.org> Mon, 09 Sep 2019 14:30:14 +0200 + +gcc-defaults (1.185) unstable; urgency=medium + + * Don't generate amd64 cross package in -ports and -mipsen sources. + * Avoid building some cross gm2 dependency packages. + + -- Matthias Klose <doko@debian.org> Fri, 23 Aug 2019 21:25:50 +0200 + +gcc-defaults (1.184) unstable; urgency=medium + + * Build gm2 packages. + * Stop building mips packages. + + -- Matthias Klose <doko@debian.org> Thu, 22 Aug 2019 13:13:13 +0200 + +gcc-defaults (1.183) unstable; urgency=medium + + * Default to GCC 9 (except for powerpcspe). + * Bump GCC 9 version to 9.2.1. + * Bump GCC 8 version to 8.3.0. + * Build libphobos-dev on more targets. + * Bump standards version. + * Build ppc64el packages on arm64. + * Build s390x packages on arm64 and ppc64el. + * Build riscv64 packages on arm64 and ppc64el. + + -- Matthias Klose <doko@debian.org> Wed, 14 Aug 2019 01:23:25 +0200 + +gcc-defaults (1.182) experimental; urgency=medium + + * Default to GCC 9. + * Remove the gij/gcj packaging. + * Fix docdir symlinks for x32 cross compilers. Addresses: #915678. + * Don't generate duplicate *-x86-64-linux-gnu packages in the control + file. Closes: #909128. + + -- Matthias Klose <doko@debian.org> Wed, 27 Mar 2019 22:51:47 +0100 + +gcc-defaults (1.180) unstable; urgency=medium + + * Fix README.Bugs symlink. Closes: #909614. + * Update VCS attributes in the control file. + * Bump standards version. + + -- Matthias Klose <doko@debian.org> Tue, 30 Oct 2018 14:14:38 +0100 + +gcc-defaults (1.179) unstable; urgency=medium + + * Bump GCC 8 version to 8.2.0. + * Build arm64, armel and armhf cross compilers on ppc64el. + + -- Matthias Klose <doko@debian.org> Thu, 16 Aug 2018 12:44:12 +0200 + +gcc-defaults (1.178) unstable; urgency=medium + + * gcc, g++: Provide gcc-<triplet>, g++-<triplet>. + * Bump standards version. + * Fix typos in package descriptions. Closes: #902276. + + -- Matthias Klose <doko@debian.org> Thu, 19 Jul 2018 10:22:48 +0200 + +gcc-defaults (1.177) experimental; urgency=medium + + * Default to GCC 8. + * Tighten dependencies on the cpp, gcc, g++ and gfortran packages. + Closes: #871630. + + -- Matthias Klose <doko@debian.org> Thu, 26 Apr 2018 09:48:54 +0200 + +gcc-defaults (1.176) unstable; urgency=medium + + * Build defaults packages for amd64 and i386. + + -- Matthias Klose <doko@debian.org> Wed, 04 Apr 2018 12:16:13 +0200 + +gcc-defaults (1.175) unstable; urgency=medium + + * Build defaults packages for riscv64 cross compilers. + * Default gccgo to GCC 8. + * Default gdc to GCC 8 (dh-dlang already makes this assumption). + + -- Matthias Klose <doko@debian.org> Fri, 23 Mar 2018 11:44:07 +0800 + +gcc-defaults (1.174) unstable; urgency=medium + + * Bump GCC 7 version to 7.3.0. + * Stop building the gcj packages. Closes: #892536. + * Fix build with recent debhelper. Closes: #878338. + + -- Matthias Klose <doko@debian.org> Thu, 15 Mar 2018 15:22:14 +0100 + +gcc-defaults (1.173d1) unstable; urgency=medium + + * Really build powerpc64le cross packages on ppc64. + + -- Matthias Klose <doko@debian.org> Sun, 17 Sep 2017 14:38:42 +0200 + +gcc-defaults (1.173) unstable; urgency=medium + + * Bump GCC 7 version to 7.2.0. + * Build powerpc64le cross packages on ppc64. + * Bump standards version. + + -- Matthias Klose <doko@debian.org> Sun, 17 Sep 2017 12:36:40 +0200 + +gcc-defaults (1.172) unstable; urgency=medium + + * Build gccbrig on x86 linux architectures only. + * Remove obsolete docdir symlink update (Sven Joachim). Closes: #867425. + * Don't build gccgo packages on m68k. + + -- Matthias Klose <doko@debian.org> Tue, 08 Aug 2017 11:56:36 -0400 + +gcc-defaults (1.171) unstable; urgency=medium + + * Provide liblto_plugin.so symlink in /usr/lib/bfd-plugins. Closes: #865690. + * dh_nativejava: Don't use deprecated POSIX::tmpnam(). Closes: #866315. + * Fix README.Bugs symlinks for cross compilers. Closes: #858112. + * Bump GCC 6 version to 6.4.0. + + -- Matthias Klose <doko@debian.org> Thu, 03 Aug 2017 21:23:51 -0400 + +gcc-defaults (1.170) experimental; urgency=medium + + * Bump GCC 6 version to 6.3.0. + * Bump GCC 7 version to 7.1.0. + * Build gccbrig and gcc-offload-nvptx packages. + + -- Matthias Klose <doko@debian.org> Tue, 21 Mar 2017 11:39:31 +0100 + +gcc-defaults (1.169) experimental; urgency=medium + + * gcc-multilib: Add conflicts with GCC 7 cross compiler packages. + * Stop building powerpc cross packages from this source. + * Build mips64el packages from this source. + + -- Matthias Klose <doko@debian.org> Sun, 27 Nov 2016 16:37:59 +0100 + +gcc-defaults (1.168d1) unstable; urgency=medium + + * Provide liblto_plugin.so symlink in /usr/lib/bfd-plugins. Closes: #865690. + * dh_nativejava: Don't use deprecated POSIX::tmpnam(). Closes: #866315. + * Fix README.Bugs symlinks for cross compilers. Closes: #858112. + + -- Matthias Klose <doko@debian.org> Mon, 03 Jul 2017 17:21:10 +0200 + gcc-defaults (1.168+dyson1) unstable; urgency=medium * Package for Dyson -- Igor Pashev <pashev.igor@gmail.com> Fri, 09 Jun 2017 13:01:31 +0300 -gcc-defaults (1.168) unstable; urgency=medium +gcc-defaults (1.168) experimental; urgency=medium - * Fix building the cross packages. + * Default to GCC 7, except for gij/gcj. - -- Matthias Klose <doko@debian.org> Sat, 08 Apr 2017 21:18:51 +0200 + -- Matthias Klose <doko@debian.org> Sat, 26 Nov 2016 17:14:56 +0100 -gcc-defaults (1.167) unstable; urgency=medium +gcc-defaults (1.164) unstable; urgency=medium - * Fix README.Bugs and gdc docdir symlinks. Closes: #858112. - * Install gcov-dump man pages. + * Bump GCC 6 version to 6.2.1. + * Bump GCC 5 version to 5.4.1. + * Rename libphobos-dev to libgphobos-dev. + * Mark libgphobos-dev as Multi-Arch: same. - -- Matthias Klose <doko@debian.org> Fri, 07 Apr 2017 16:30:56 +0200 + -- Matthias Klose <doko@debian.org> Fri, 18 Nov 2016 14:33:45 +0100 gcc-defaults (1.166) unstable; urgency=medium @@ -36,15 +190,6 @@ gcc-defaults (1.165) unstable; urgency=medium -- Matthias Klose <doko@debian.org> Wed, 18 Jan 2017 17:11:46 +0100 -gcc-defaults (1.164) unstable; urgency=medium - - * Bump GCC 6 version to 6.2.1. - * Bump GCC 5 version to 5.4.1. - * Rename libphobos-dev to libgphobos-dev. - * Mark libgphobos-dev as Multi-Arch: same. - - -- Matthias Klose <doko@debian.org> Fri, 18 Nov 2016 14:33:45 +0100 - gcc-defaults (1.163) unstable; urgency=medium * Default to GCC 6, upload to unstable. diff --git a/debian/classfile.py b/debian/classfile.py deleted file mode 100644 index d7e7d7e..0000000 --- a/debian/classfile.py +++ /dev/null @@ -1,222 +0,0 @@ - -## Copyright (C) 2004, 2005 Red Hat, Inc. -## Written by Gary Benson <gbenson@redhat.com> -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. - -"""Read Java(TM) class files.""" - -import cStringIO as StringIO -import struct - -class Class: - def __init__(self, arg): - if hasattr(arg, "read"): - self.fp = arg - elif type(arg) == type(""): - if arg.startswith("\xca\xfe\xba\xbe"): - self.fp = StringIO.StringIO(arg) - else: - self.fp = open(arg, "r") - else: - raise TypeError, type(arg) - - magic = self._read_int() - assert magic == 0xcafebabeL - minor, major = self._read(">HH") - self.version = (major, minor) - - self.pool_integrity_checks = None - try: - assert False - except AssertionError: - self.pool_integrity_checks = [] - - self._read_constants_pool() - - self.access_flags = self._read_short() - self.name = self._read_reference_Class() - self.super = self._read_reference_Class() - - self.interfaces = self._read_interfaces() - self.fields = self._read_fieldsormethods() - self.methods = self._read_fieldsormethods() - self.attributes = self._read_attributes() - - if self.pool_integrity_checks is not None: - for index, tag in self.pool_integrity_checks: - assert self.constants[index][0] == tag - - del self.fp, self.pool_integrity_checks - - def __repr__(self): - result = [] - attrs = [attr for attr in dir(self) - if not attr.startswith("_") and attr != "Member"] - attrs.sort() - for attr in attrs: - result.append("%-13s %s" % ( - attr + ":", attr == "constants" and - "<ELIDED>" or repr(getattr(self, attr)))) - return "\n".join(result) - - def _read_constants_pool(self): - self.constants = {} - skip = False - for i in xrange(1, self._read_short()): - if skip: - skip = False - continue - tag = { - 1: "Utf8", 3: "Integer", 4: "Float", 5: "Long", - 6: "Double", 7: "Class", 8: "String", 9: "Fieldref", - 10: "Methodref", 11: "InterfaceMethodref", - 12: "NameAndType"}[self._read_byte()] - skip = tag in ("Long", "Double") # crack crack crack! - self.constants[i] = (tag, getattr(self, "_read_constant_" + tag)()) - - def _read_interfaces(self): - result = [] - for i in xrange(self._read_short()): - result.append(self._read_reference_Class()) - return result - - def _read_fieldsormethods(self): - result = [] - for i in xrange(self._read_short()): - result.append(self.Member(self)) - return result - - class Member: - def __init__(self, source): - self.access_flags = source._read_short() - self.name = source._read_reference_Utf8() - self.descriptor = source._read_reference_Utf8() - self.attributes = source._read_attributes() - - def __repr__(self): - result = [] - attrs = [attr for attr in dir(self) if not attr.startswith("_")] - attrs.sort() - for attr in attrs: - value = getattr(self, attr) - if attr == "attributes" and value.has_key("Code"): - value = value.copy() - value.update({"Code": "<ELIDED>"}) - result.append("%-13s %s" % ( - attr + ":", repr(value).replace( - "'Code': '<ELIDED>'", "'Code': <ELIDED>"))) - return ("\n%s" % (15 * " ")).join(result) - - def _read_attributes(self): - result = {} - for i in xrange(self._read_short()): - name = self._read_reference_Utf8() - data = self.fp.read(self._read_int()) - assert not result.has_key(name) - result[name] = data - return result - - # Constants pool reference reader convenience functions - - def _read_reference_Utf8(self): - return self._read_references("Utf8")[0] - - def _read_reference_Class(self): - return self._read_references("Class")[0] - - def _read_reference_Class_NameAndType(self): - return self._read_references("Class", "NameAndType") - - def _read_references(self, *args): - result = [] - for arg in args: - index = self._read_short() - if self.pool_integrity_checks is not None: - self.pool_integrity_checks.append((index, arg)) - result.append(index) - return result - - # Constants pool constant reader functions - - def _read_constant_Utf8(self): - constant = self.fp.read(self._read_short()) - try: - constant = constant.decode("utf-8") - except UnicodeError: - constant = _bork_utf8_decode(constant) - try: - constant = constant.encode("us-ascii") - except UnicodeError: - pass - return constant - - def _read_constant_Integer(self): - return self._read_int() - - def _read_constant_Float(self): - return self._read(">f")[0] - - def _read_constant_Long(self): - return self._read(">q")[0] - - def _read_constant_Double(self): - return self._read(">d")[0] - - _read_constant_Class = _read_reference_Utf8 - _read_constant_String = _read_reference_Utf8 - _read_constant_Fieldref = _read_reference_Class_NameAndType - _read_constant_Methodref = _read_reference_Class_NameAndType - _read_constant_InterfaceMethodref = _read_reference_Class_NameAndType - - def _read_constant_NameAndType(self): - return self._read_reference_Utf8(), self._read_reference_Utf8() - - # Generic reader functions - - def _read_int(self): - # XXX how else to read 32 bits on a 64-bit box? - h, l = map(long, self._read(">HH")) - return (h << 16) + l - - def _read_short(self): - return self._read(">H")[0] - - def _read_byte(self): - return self._read("B")[0] - - def _read(self, fmt): - return struct.unpack(fmt, self.fp.read(struct.calcsize(fmt))) - -def _bork_utf8_decode(data): - # more crack! - bytes, unicode = map(ord, data), "" - while bytes: - b1 = bytes.pop(0) - if b1 & 0x80: - assert b1 & 0x40 - b2 = bytes.pop(0) - assert b2 & 0xC0 == 0x80 - if b1 & 0x20: - assert not b1 & 0x10 - b3 = bytes.pop(0) - assert b3 & 0xC0 == 0x80 - unicode += unichr( - ((b1 & 0x0f) << 12) + ((b2 & 0x3f) << 6) + (b3 & 0x3f)) - else: - unicode += unichr(((b1 & 0x1f) << 6) + (b2 & 0x3f)) - else: - unicode += unichr(b1) - return unicode - -if __name__ == "__main__": - print Class("/usr/share/katana/build/ListDependentClasses.class") - diff --git a/debian/control b/debian/control deleted file mode 100644 index 14a2537..0000000 --- a/debian/control +++ /dev/null @@ -1,420 +0,0 @@ -Source: gcc-defaults -Section: devel -Priority: standard -Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org> -Uploaders: Matthias Klose <doko@debian.org> -Standards-Version: 3.9.8 -Build-Depends: m4, debhelper (>= 9), - dpkg-dev (>= 1.17.11), - gcc-6-base (>= 6.3.0-9), - lsb-release -Build-Depends-Indep: ca-certificates, gcj-jdk, python -Vcs-Svn: svn://svn.debian.org/svn/gcccvs/branches/sid/gcc-defaults -Vcs-Browser: http://svn.debian.org/viewsvn/gcccvs/branches/sid/gcc-defaults -XS-Python-Version: all - -Package: cpp -Priority: optional -Architecture: any -Section: interpreters -Multi-Arch: allowed -Depends: cpp-${pv:cpp} ${reqv:cpp}, ${misc:Depends} -Suggests: cpp-doc -Conflicts: cpp-doc (<< 1:2.95.3) -Description: GNU C preprocessor (cpp) - The GNU C preprocessor is a macro processor that is used automatically - by the GNU C compiler to transform programs before actual compilation. - . - This package has been separated from gcc for the benefit of those who - require the preprocessor but not the compiler. - . - This is a dependency package providing the default GNU C preprocessor. - -Package: gcc -Priority: optional -Architecture: any -Depends: cpp (>= ${version:cpp}), gcc-${pv:gcc} ${reqv:gcc}, ${misc:Depends} -Recommends: libc6-dev | libc-dev -Suggests: gcc-multilib, make, manpages-dev, autoconf, automake, libtool, flex, bison, gdb, gcc-doc -Provides: c-compiler -Conflicts: gcc-doc (<< 1:2.95.3) -Description: GNU C compiler - This is the GNU C compiler, a fairly portable optimizing compiler for C. - . - This is a dependency package providing the default GNU C compiler. - -Package: gcc-multilib -Priority: optional -Architecture: amd64 i386 illumos-amd64 kfreebsd-amd64 mips mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32 -Depends: cpp (>= ${version:cpp}), gcc (>= ${version:gcc}), gcc-${pv:gcc}-multilib ${reqv:gcc}, ${misc:Depends}, linux-libc-dev (>= 3.0.0-2) [linux-any] -Conflicts: gcc-4.9-alpha-linux-gnu, - gcc-4.9-aarch64-linux-gnu, - gcc-4.9-arm-linux-gnueabi, - gcc-4.9-arm-linux-gnueabihf, - gcc-4.9-hppa-linux-gnu, - gcc-4.9-m68k-linux-gnu, - gcc-4.9-powerpc-linux-gnu, - gcc-4.9-powerpc-linux-gnuspe, - gcc-4.9-powerpc64-linux-gnu, - gcc-4.9-powerpc64le-linux-gnu, - gcc-4.9-mips-linux-gnu, - gcc-4.9-mipsel-linux-gnu, - gcc-4.9-mips64-linux-gnuabi64, - gcc-4.9-mips64el-linux-gnuabi64, - gcc-4.9-s390x-linux-gnu, - gcc-4.9-sh4-linux-gnu, - gcc-4.9-sparc-linux-gnu, - gcc-4.9-sparc64-linux-gnu, - gcc-5-aarch64-linux-gnu, - gcc-5-alpha-linux-gnu, - gcc-5-arm-linux-gnueabi, - gcc-5-arm-linux-gnueabihf, - gcc-5-hppa-linux-gnu, - gcc-5-m68k-linux-gnu, - gcc-5-powerpc-linux-gnu, - gcc-5-powerpc-linux-gnuspe, - gcc-5-powerpc64-linux-gnu, - gcc-5-powerpc64le-linux-gnu, - gcc-5-mips-linux-gnu, - gcc-5-mipsel-linux-gnu, - gcc-5-mips64-linux-gnuabi64, - gcc-5-mips64el-linux-gnuabi64, - gcc-5-s390x-linux-gnu, - gcc-5-sh4-linux-gnu, - gcc-5-sparc-linux-gnu, - gcc-5-sparc64-linux-gnu, - gcc-6-aarch64-linux-gnu, - gcc-6-alpha-linux-gnu, - gcc-6-arm-linux-gnueabi, - gcc-6-arm-linux-gnueabihf, - gcc-6-hppa-linux-gnu, - gcc-6-m68k-linux-gnu, - gcc-6-powerpc-linux-gnu, - gcc-6-powerpc-linux-gnuspe, - gcc-6-powerpc64-linux-gnu, - gcc-6-powerpc64le-linux-gnu, - gcc-6-mips-linux-gnu, - gcc-6-mipsel-linux-gnu, - gcc-6-mips64-linux-gnuabi64, - gcc-6-mips64el-linux-gnuabi64, - gcc-6-s390x-linux-gnu, - gcc-6-sh4-linux-gnu, - gcc-6-sparc-linux-gnu, - gcc-6-sparc64-linux-gnu, - gcc-7-aarch64-linux-gnu, - gcc-7-alpha-linux-gnu, - gcc-7-arm-linux-gnueabi, - gcc-7-arm-linux-gnueabihf, - gcc-7-hppa-linux-gnu, - gcc-7-m68k-linux-gnu, - gcc-7-powerpc-linux-gnu, - gcc-7-powerpc-linux-gnuspe, - gcc-7-powerpc64-linux-gnu, - gcc-7-powerpc64le-linux-gnu, - gcc-7-mips-linux-gnu, - gcc-7-mipsel-linux-gnu, - gcc-7-mips64-linux-gnuabi64, - gcc-7-mips64el-linux-gnuabi64, - gcc-7-s390x-linux-gnu, - gcc-7-sh4-linux-gnu, - gcc-7-sparc-linux-gnu, - gcc-7-sparc64-linux-gnu, - gcc-8-aarch64-linux-gnu, - gcc-8-alpha-linux-gnu, - gcc-8-arm-linux-gnueabi, - gcc-8-arm-linux-gnueabihf, - gcc-8-hppa-linux-gnu, - gcc-8-m68k-linux-gnu, - gcc-8-powerpc-linux-gnu, - gcc-8-powerpc-linux-gnuspe, - gcc-8-powerpc64-linux-gnu, - gcc-8-powerpc64le-linux-gnu, - gcc-8-mips-linux-gnu, - gcc-8-mipsel-linux-gnu, - gcc-8-mips64-linux-gnuabi64, - gcc-8-mips64el-linux-gnuabi64, - gcc-8-s390x-linux-gnu, - gcc-8-sh4-linux-gnu, - gcc-8-sparc-linux-gnu, - gcc-8-sparc64-linux-gnu, -Description: GNU C compiler (multilib files) - This is the GNU C compiler, a fairly portable optimizing compiler for C. - . - A dependency package on architectures with multilib support; the package - contains dependencies for the non-default multilib architecture(s). - -Package: g++ -Priority: optional -Architecture: any -Depends: cpp (>= ${version:cpp}), gcc (>= ${version:cpp}), g++-${pv:gpp} ${reqv:gpp}, gcc-${pv:gpp} ${reqv:gpp}, ${misc:Depends} -Suggests: ${pkgmulti:gpp} -Provides: c++-compiler -Description: GNU C++ compiler - This is the GNU C++ compiler, a fairly portable optimizing compiler for C++. - . - This is a dependency package providing the default GNU C++ compiler. - -Package: g++-multilib -Priority: optional -Architecture: amd64 i386 illumos-amd64 kfreebsd-amd64 mips mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32 -Depends: cpp (>= ${version:cpp}), gcc-multilib (>= ${version:cpp}), g++ (>= ${version:cpp}), g++-${pv:gpp}-multilib ${reqv:gpp}, ${misc:Depends} -Description: GNU C++ compiler (multilib files) - This is the GNU C++ compiler, a fairly portable optimizing compiler for C++. - . - A dependency package on architectures with multilib support; the package - contains dependencies for the non-default multilib architecture(s). - -Package: gobjc -Priority: optional -Architecture: any -Depends: cpp (>= ${version:cpp}), gcc (>= ${version:cpp}), gobjc-${pv:gobjc} ${reqv:gobjc}, ${misc:Depends} -Suggests: ${pkgmulti:gobjc} -Provides: objc-compiler -Description: GNU Objective-C compiler - This is the GNU Objective-C compiler, which compiles Objective-C on platforms - supported by the gcc compiler. It uses the gcc backend to generate optimized - code. - . - This is a dependency package providing the default GNU Objective-C compiler. - -Package: gobjc-multilib -Priority: optional -Architecture: amd64 i386 illumos-amd64 kfreebsd-amd64 mips mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32 -Depends: cpp (>= ${version:cpp}), gcc-multilib (>= ${version:cpp}), gobjc (>= ${version:gcc}), gobjc-${pv:gobjc}-multilib ${reqv:gobjc}, ${misc:Depends} -Description: GNU Objective-C compiler (multilib files) - This is the GNU Objective-C compiler, which compiles Objective-C on - platforms supported by the gcc compiler. - . - A dependency package on architectures with multilib support; the package - contains dependencies for the non-default multilib architecture(s). - -Package: gobjc++ -Priority: optional -Architecture: any -Depends: cpp (>= ${version:cpp}), gcc (>= ${version:cpp}), gobjc++-${pv:gobjcxx} ${reqv:gobjcxx}, ${misc:Depends} -Recommends: g++ (>= ${version:cpp}), gobjc (>= ${version:cpp}) -Suggests: ${pkgmulti:gobjcxx} -Provides: objc++-compiler -Description: GNU Objective-C++ compiler - This is the GNU Objective-C++ compiler, which compiles - Objective-C++ on platforms supported by the gcc compiler. It uses the - gcc backend to generate optimized code. - . - This is a dependency package providing the default GNU Objective-C++ compiler. - -Package: gobjc++-multilib -Priority: optional -Architecture: amd64 i386 illumos-amd64 kfreebsd-amd64 mips mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32 -Depends: cpp (>= ${version:cpp}), gobjc-multilib (>= ${version:cpp}), gobjc++ (>= ${version:gcc}), gobjc++-${pv:gobjcxx}-multilib ${reqv:gobjcxx}, ${misc:Depends} -Description: GNU Objective-C++ compiler (multilib files) - This is the GNU Objective-C++ compiler, which compiles Objective-C++ on - platforms supported by the gcc compiler. - . - A dependency package on architectures with multilib support; the package - contains dependencies for the non-default multilib architecture(s). - -Package: gfortran -Priority: optional -Architecture: any -Depends: cpp (>= ${version:cpp}), gcc (>= ${version:gcc}), gfortran-${pv:gfort} ${reqv:gfort}, ${misc:Depends} -Suggests: ${pkgmulti:gfort}, gfortran-doc -Provides: fortran-compiler, ${fortran:mod-version} -Description: GNU Fortran 95 compiler - This is the GNU Fortran 95 compiler, which compiles Fortran 95 on platforms - supported by the gcc compiler. It uses the gcc backend to generate optimized - code. - . - This is a dependency package providing the default GNU Fortran 95 compiler. - -Package: gfortran-multilib -Priority: optional -Architecture: amd64 i386 illumos-amd64 kfreebsd-amd64 mips mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32 -Depends: cpp (>= ${version:cpp}), gcc-multilib (>= ${version:cpp}), gfortran (>= ${version:gcc}), gfortran-${pv:gfort}-multilib ${reqv:gfort}, ${misc:Depends} -Description: GNU Fortran 95 compiler (multilib files) - This is the GNU Fortran compiler, which compiles Fortran 95 on platforms - supported by the gcc compiler. - . - A dependency package on architectures with multilib support; the package - contains dependencies for the non-default multilib architecture(s). - -Package: gccgo -Priority: optional -Architecture: any -Depends: cpp (>= ${version:cpp}), gcc (>= ${version:gcc}), gccgo-${pv:ggo} ${reqv:ggo}, ${misc:Depends} -Suggests: ${pkgmulti:ggo} -Provides: go-compiler -Description: Go compiler, based on the GCC backend - This is the GNU Go compiler, which compiles Go on platforms supported by - the gcc compiler. It uses the gcc backend to generate optimized code. - . - This is a dependency package providing the default GNU Go compiler. - -Package: gccgo-multilib -Priority: optional -Architecture: amd64 i386 illumos-amd64 mips mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32 -Depends: cpp (>= ${version:cpp}), gcc-multilib (>= ${version:cpp}), gccgo (>= ${version:ggo}), gccgo-${pv:ggo}-multilib ${reqv:ggo}, ${misc:Depends} -Description: Go compiler, based on the GCC backend (multilib files) - This is the GNU Go compiler, which compiles Go on platforms supported by - the gcc compiler. It uses the gcc backend to generate optimized code. - . - A dependency package on architectures with multilib support; the package - contains dependencies for the non-default multilib architecture(s). - -Package: libgcj-common -Section: java -Architecture: all -Multi-Arch: foreign -Priority: optional -Depends: ${python:Depends}, ${misc:Depends} -Conflicts: classpath (<= 0.04-4) -Replaces: java-gcj-compat (<< 1.0.65-8), java-gcj-compat-dev (<< 1.0.80-2) -XB-Python-Version: ${python:Versions} -Description: Java runtime library (common files) - This package contains files shared by Classpath and libgcj libraries. - -Package: libgcj-bc -Section: java -Architecture: any -Multi-Arch: same -Priority: optional -Pre-Depends: ${misc:Pre-Depends} -Depends: libgcj-common (>= ${version:libgcjcommon}), ${pkg:libgcj} ${reqv:gij}, ${misc:Depends} -Description: Link time only library for use with gcj - A fake library that is used at link time only. It ensures that - binaries built with the BC-ABI link against a constant SONAME. - This way, BC-ABI binaries continue to work if the SONAME underlying - libgcj.so changes. - -Package: gcj-jdk -Section: java -Architecture: any -Priority: optional -Depends: libgcj-common (>= ${version:libgcjcommon}), gcj-jre (>= ${version:gcj}), ${dep:jdk}, ${pkg:gjdoc}, ${misc:Depends} -Provides: java-gcj-compat-dev, java-compiler, java-sdk, java2-sdk, java5-sdk, ${pkg:gjdoc} -Conflicts: gcj (<< ${ver:gcjconflict}), classpath-common (<= 2:0.97.2-1.1), ${pkg:gjdoc}, java-gcj-compat-dev (<< 1.0.80-2) -Replaces: ${pkg:gjdoc}, java-gcj-compat-dev (<< 1.0.80-2), gcj-jre-headless (<< 4:4.9.0-2) -Description: gcj and Classpath development tools for Java(TM) - GCJ is a front end to the GCC compiler which can natively compile both - Java(tm) source and bytecode files. The compiler can also generate class - files. Other java development tools from Classpath are included in this - package. - . - The package contains as well a collection of wrapper scripts and symlinks. - It is meant to provide a Java-SDK-like interface to the GCJ tool set. - -Package: gcj-jre-headless -Priority: optional -Section: java -Architecture: any -Depends: libgcj-common (>= ${version:libgcjcommon}), ${dep:jrehl}, ${misc:Depends} -Suggests: gcj-jdk -Conflicts: gij (<< ${ver:gcjconflict}), java-gcj-compat-headless (<< 1.0.80-6) -Replaces: java-gcj-compat-headless (<< 1.0.80-6) -Provides: java-gcj-compat-headless, java-virtual-machine, java5-runtime-headless, java2-runtime-headless, java1-runtime-headless, java-runtime-headless -Description: Java runtime environment using GIJ/Classpath (headless version) - GIJ is a Java bytecode interpreter, not limited to interpreting bytecode. - It includes a class loader which can dynamically load shared objects, so - it is possible to give it the name of a class which has been compiled and - put into a shared library on the class path. - . - The package contains as well a collection of wrapper scripts and symlinks. - It is meant to provide a Java-RTE-like interface to the GIJ/GCJ tool set, - limited to the headless tools and libraries. - -Package: gcj-jre -Section: java -Architecture: any -Priority: optional -Depends: libgcj-common (>= ${version:libgcjcommon}), gcj-jre-headless (>= ${version:gcj}), ${dep:jre}, ${misc:Depends} -Provides: java-gcj-compat, java5-runtime, java2-runtime, java1-runtime, java-runtime -Description: Java runtime environment using GIJ/Classpath - GIJ is a Java bytecode interpreter, not limited to interpreting bytecode. - It includes a class loader which can dynamically load shared objects, so - it is possible to give it the name of a class which has been compiled and - put into a shared library on the class path. - . - This is currently an empty package. - It is meant to provide a Java-RTE-like interface to the GIJ/GCJ tool set. - -Package: gdc -Priority: optional -Architecture: any -Depends: gdc-${pv:gdc} ${reqv:gdc}, ${dep:libgphobos}, ${misc:Depends} -Replaces: gdc-4.1 (<< 0.25-4.1.2-18), gdc-4.2 (<< 0.25-4.2.2-7), gdc-4.3 (<< 1:1.043-4.3.4-1) -Description: D compiler (language version 2), based on the GCC backend - This is a dependency package providing the default D compiler. - Per policy, all packages that contain D sources must use this package - in their Build-Depends line. - . - This compiler supports D language version 2. - -Package: gdc-multilib -Priority: optional -Architecture: amd64 i386 illumos-amd64 kfreebsd-amd64 mips mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32 -Depends: cpp (>= ${version:cpp}), gcc-multilib (>= ${version:cpp}), gdc (>= ${version:gcc}), gdc-${pv:gdc}-multilib ${reqv:gdc}, ${misc:Depends} -Description: D compiler (language version 2) (multilib files) - This compiler supports D language version 2. - . - A dependency package on architectures with multilib support; the package - contains dependencies for the non-default multilib architecture(s). - -Package: libgphobos-dev -Section: libdevel -Priority: optional -Architecture: any -Multi-Arch: same -Depends: libgphobos-${pv:gdc}-dev ${reqv:gdc}, ${misc:Depends} -Provides: libphobos-dev -Description: Phobos D standard library - This is a dependency package providing the default D standard library. - -Package: gcc-hppa64-linux-gnu -Priority: optional -Architecture: amd64 hppa i386 x32 -Depends: gcc (>= ${version:gcc}), gcc-${pv:gcc}-hppa64-linux-gnu ${reqv:gcc}, - ${misc:Depends} -Conflicts: gcc-5-hppa64-linux-gnu (<< 5.2.1-26), - gcc-5-hppa64 (<< 5.2.1-26), - gcc-4.9-hppa64 (<< 4.9.3-7), - gcc-4.8-hppa64 (<< 4.8.5-3) -Description: GNU C compiler (cross compiler for hppa64-linux-gnu) - This is the GNU C compiler, a fairly portable optimizing compiler for C. - . - This is a dependency package providing the default GNU C cross-compiler - for the hppa64 architecture. - -Package: cpp-doc -Section: doc -Architecture: any -Priority: optional -Depends: cpp-${pv:cpp}-doc ${reqv:cpp}, ${misc:Depends} -Suggests: cpp (>= ${version:cpp}) -Description: Documentation for the GNU C preprocessor (cpp) - Documentation for the GNU C preprocessor in info format (dependency package). - -Package: gfortran-doc -Section: doc -Architecture: any -Priority: optional -Depends: gfortran-${pv:gfort}-doc ${reqv:gfort}, ${misc:Depends} -Suggests: gfortran (>= ${version:gfort}) -Description: Documentation for the GNU Fortran compiler (gfortran) - Documentation for the GNU Fortran compiler in info format (dependency package). - -Package: gcc-doc -Section: doc -Architecture: any -Priority: optional -Depends: gcc-${pv:gcc}-doc ${reqv:gcc}, ${misc:Depends} -Suggests: gcc (>= ${version:gcc}) -Description: Documentation for the GNU C compilers (gcc, gobjc, g++) - Documentation for the GNU compilers in info format (dependency package). - -Package: gccgo-doc -Section: doc -Architecture: any -Priority: optional -Depends: gccgo-${pv:ggo}-doc ${reqv:ggo}, ${misc:Depends} -Suggests: gccgo (>= ${version:ggo}) -Description: Documentation for the GNU Go compiler - Documentation for the GNU Go compiler in info format (dependency package). diff --git a/debian/control.cross-ml.in b/debian/control.cross-ml.in index 570f1b6..6bf5451 100644 --- a/debian/control.cross-ml.in +++ b/debian/control.cross-ml.in @@ -2,8 +2,8 @@ Package: gcc-multilib-CROSS_GNU_TYPE Priority: optional Architecture: @host_archs@ -Depends: cpp-CROSS_GNU_TYPE (>= ${version:cpp}), - gcc-CROSS_GNU_TYPE (>= ${version:gcc}), +Depends: cpp-CROSS_GNU_TYPE (= ${version:cpp}), + gcc-CROSS_GNU_TYPE (= ${version:gcc}), gcc-${pv:gcc}-multilib-CROSS_GNU_TYPE ${reqv:gcc}, ${misc:Depends} Recommends: libc6-dev-CROSS_ARCH-cross | libc-dev-CROSS_ARCH-cross @@ -17,9 +17,9 @@ Description: GNU C compiler for the CROSS_ARCH architecture Package: g++-multilib-CROSS_GNU_TYPE Priority: optional Architecture: @host_archs@ -Depends: cpp-CROSS_GNU_TYPE (>= ${version:cpp}), - g++-CROSS_GNU_TYPE (>= ${version:gpp}), - gcc-multilib-CROSS_GNU_TYPE (>= ${version:gcc}), +Depends: cpp-CROSS_GNU_TYPE (= ${version:cpp}), + g++-CROSS_GNU_TYPE (= ${version:gpp}), + gcc-multilib-CROSS_GNU_TYPE (= ${version:gcc}), g++-${pv:gpp}-multilib-CROSS_GNU_TYPE ${reqv:gpp}, ${misc:Depends} Description: GNU C++ compiler for the CROSS_ARCH architecture @@ -65,9 +65,9 @@ Description: GNU Objective-C++ compiler for the CROSS_ARCH architecture Package: gfortran-multilib-CROSS_GNU_TYPE Priority: optional Architecture: @host_archs@ -Depends: cpp-CROSS_GNU_TYPE (>= ${version:cpp}), - gcc-multilib-CROSS_GNU_TYPE (>= ${version:gcc}), - gfortran-CROSS_GNU_TYPE (>= ${version:gfort}), +Depends: cpp-CROSS_GNU_TYPE (= ${version:cpp}), + gcc-multilib-CROSS_GNU_TYPE (= ${version:gcc}), + gfortran-CROSS_GNU_TYPE (= ${version:gfort}), gfortran-${pv:gfort}-multilib-CROSS_GNU_TYPE ${reqv:gfort}, ${misc:Depends} Suggests: gfortran-doc @@ -93,7 +93,7 @@ Description: Go compiler (based on GCC) for the CROSS_ARCH architecture the gcc compiler. It uses the gcc backend to generate optimized code. . This is a dependency package providing the default GNU Go cross-compiler - cross-compiler for the CROSS_ARCH architecture. + for the CROSS_ARCH architecture. Package: gdc-multilib-CROSS_GNU_TYPE Priority: optional @@ -107,4 +107,4 @@ Description: GNU D compiler (based on GCC) for the CROSS_ARCH architecture the gcc compiler. It uses the gcc backend to generate optimized code. . This is a dependency package providing the default GNU D cross-compiler - cross-compiler for the CROSS_ARCH architecture. + for the CROSS_ARCH architecture. diff --git a/debian/control.cross.in b/debian/control.cross.in index 4bb0bd8..0001117 100644 --- a/debian/control.cross.in +++ b/debian/control.cross.in @@ -20,7 +20,7 @@ Package: gcc-CROSS_GNU_TYPE Priority: optional Architecture: @host_archs@ Multi-Arch: foreign -Depends: cpp-CROSS_GNU_TYPE (>= ${version:cpp}), +Depends: cpp-CROSS_GNU_TYPE (= ${version:cpp}), gcc-${pv:gcc}-CROSS_GNU_TYPE ${reqv:gcc}, ${misc:Depends} Recommends: libc6-dev-CROSS_ARCH-cross | libc-dev-CROSS_ARCH-cross @@ -35,8 +35,8 @@ Package: g++-CROSS_GNU_TYPE Priority: optional Architecture: @host_archs@ Multi-Arch: foreign -Depends: cpp-CROSS_GNU_TYPE (>= ${version:cpp}), - gcc-CROSS_GNU_TYPE (>= ${version:cpp}), +Depends: cpp-CROSS_GNU_TYPE (= ${version:cpp}), + gcc-CROSS_GNU_TYPE (= ${version:cpp}), g++-${pv:gpp}-CROSS_GNU_TYPE ${reqv:gpp}, ${misc:Depends} Description: GNU C++ compiler for the CROSS_ARCH architecture @@ -82,8 +82,8 @@ Package: gfortran-CROSS_GNU_TYPE Priority: optional Architecture: @host_archs@ Multi-Arch: foreign -Depends: cpp-CROSS_GNU_TYPE (>= ${version:cpp}), - gcc-CROSS_GNU_TYPE (>= ${version:gcc}), +Depends: cpp-CROSS_GNU_TYPE (= ${version:cpp}), + gcc-CROSS_GNU_TYPE (= ${version:gcc}), gfortran-${pv:gfort}-CROSS_GNU_TYPE ${reqv:gfort}, ${misc:Depends} Suggests: gfortran-doc @@ -111,30 +111,31 @@ Description: Go compiler (based on GCC) for the CROSS_ARCH architecture This is a dependency package providing the default GNU Go cross-compiler for the CROSS_ARCH architecture. -Package: gcj-CROSS_GNU_TYPE +Package: gdc-CROSS_GNU_TYPE Priority: optional Architecture: @host_archs@ Multi-Arch: foreign Depends: cpp-CROSS_GNU_TYPE (>= ${version:cpp}), - gcj-${pv:gcj}-CROSS_GNU_TYPE ${reqv:gcj}, + gdc-${pv:gdc}-CROSS_GNU_TYPE ${reqv:gdc}, ${misc:Depends} -Description: GNU Java compiler (based on GCC) for the CROSS_ARCH architecture - This is the GNU Java compiler, which compiles java on platforms supported by +Description: GNU D compiler (based on GCC) for the CROSS_ARCH architecture + This is the GNU D compiler, which compiles D on platforms supported by the gcc compiler. It uses the gcc backend to generate optimized code. . - This is a dependency package providing the default GNU Java cross-compiler + This is a dependency package providing the default GNU D cross-compiler for the CROSS_ARCH architecture. -Package: gdc-CROSS_GNU_TYPE +Package: gm2-CROSS_GNU_TYPE Priority: optional Architecture: @host_archs@ Multi-Arch: foreign Depends: cpp-CROSS_GNU_TYPE (>= ${version:cpp}), - gdc-${pv:gdc}-CROSS_GNU_TYPE ${reqv:gdc}, + gm2-${pv:gm2}-CROSS_GNU_TYPE ${reqv:gm2}, ${misc:Depends} -Description: GNU D compiler (based on GCC) for the CROSS_ARCH architecture - This is the GNU D compiler, which compiles D on platforms supported by - the gcc compiler. It uses the gcc backend to generate optimized code. +Description: GNU Modula-2 compiler (based on GCC) for the CROSS_ARCH architecture + This is the GNU Modula-2 compiler, which compiles Modula-2 on platforms + supported by the gcc compiler. It uses the gcc backend to generate optimized + code. . - This is a dependency package providing the default GNU D cross-compiler + This is a dependency package providing the default GNU Modula-2 cross-compiler for the CROSS_ARCH architecture. diff --git a/debian/control.hppa64.in b/debian/control.hppa64.in index c6db8ce..c86c0e6 100644 --- a/debian/control.hppa64.in +++ b/debian/control.hppa64.in @@ -2,7 +2,7 @@ Package: gcc-hppa64-linux-gnu Priority: optional Architecture: @hppa64_archs@ -Depends: gcc (>= ${version:gcc}), gcc-${pv:gcc}-hppa64-linux-gnu ${reqv:gcc}, +Depends: gcc (= ${version:gcc}), gcc-${pv:gcc}-hppa64-linux-gnu ${reqv:gcc}, ${misc:Depends} Conflicts: gcc-5-hppa64-linux-gnu (<< 5.2.1-26), gcc-5-hppa64 (<< 5.2.1-26), diff --git a/debian/control.native.in b/debian/control.native.in index 7d66d0d..76603b4 100644 --- a/debian/control.native.in +++ b/debian/control.native.in @@ -19,10 +19,10 @@ Description: GNU C preprocessor (cpp) Package: gcc Priority: optional Architecture: any -Depends: cpp (>= ${version:cpp}), gcc-${pv:gcc} ${reqv:gcc}, ${misc:Depends} +Depends: cpp (= ${version:cpp}), gcc-${pv:gcc} ${reqv:gcc}, ${misc:Depends} Recommends: libc6-dev | libc-dev Suggests: gcc-multilib, make, manpages-dev, autoconf, automake, libtool, flex, bison, gdb, gcc-doc -Provides: c-compiler +Provides: c-compiler, ${gcc:triplet} Conflicts: gcc-doc (<< 1:2.95.3) Description: GNU C compiler This is the GNU C compiler, a fairly portable optimizing compiler for C. @@ -32,7 +32,7 @@ Description: GNU C compiler Package: gcc-multilib Priority: optional Architecture: @multilib_archs@ -Depends: cpp (>= ${version:cpp}), gcc (>= ${version:gcc}), gcc-${pv:gcc}-multilib ${reqv:gcc}, ${misc:Depends}, linux-libc-dev (>= 3.0.0-2) [linux-any] +Depends: cpp (= ${version:cpp}), gcc (= ${version:gcc}), gcc-${pv:gcc}-multilib ${reqv:gcc}, ${misc:Depends}, linux-libc-dev (>= 3.0.0-2) [linux-any] Conflicts: gcc-4.9-alpha-linux-gnu, gcc-4.9-aarch64-linux-gnu, gcc-4.9-arm-linux-gnueabi, @@ -92,6 +92,7 @@ Conflicts: gcc-4.9-alpha-linux-gnu, gcc-7-arm-linux-gnueabi, gcc-7-arm-linux-gnueabihf, gcc-7-hppa-linux-gnu, + gcc-7-i686-linux-gnu, gcc-7-m68k-linux-gnu, gcc-7-powerpc-linux-gnu, gcc-7-powerpc-linux-gnuspe, @@ -101,15 +102,18 @@ Conflicts: gcc-4.9-alpha-linux-gnu, gcc-7-mipsel-linux-gnu, gcc-7-mips64-linux-gnuabi64, gcc-7-mips64el-linux-gnuabi64, + gcc-7-riscv64-linux-gnu, gcc-7-s390x-linux-gnu, gcc-7-sh4-linux-gnu, gcc-7-sparc-linux-gnu, - gcc-7-sparc64-linux-gnu, + gcc-7-x86-64-linux-gnu, + gcc-7-x86-64-linux-gnux32, gcc-8-aarch64-linux-gnu, gcc-8-alpha-linux-gnu, gcc-8-arm-linux-gnueabi, gcc-8-arm-linux-gnueabihf, gcc-8-hppa-linux-gnu, + gcc-8-i686-linux-gnu, gcc-8-m68k-linux-gnu, gcc-8-powerpc-linux-gnu, gcc-8-powerpc-linux-gnuspe, @@ -119,10 +123,57 @@ Conflicts: gcc-4.9-alpha-linux-gnu, gcc-8-mipsel-linux-gnu, gcc-8-mips64-linux-gnuabi64, gcc-8-mips64el-linux-gnuabi64, + gcc-8-riscv64-linux-gnu, gcc-8-s390x-linux-gnu, gcc-8-sh4-linux-gnu, gcc-8-sparc-linux-gnu, gcc-8-sparc64-linux-gnu, + gcc-8-x86-64-linux-gnu, + gcc-8-x86-64-linux-gnux32, + gcc-9-aarch64-linux-gnu, + gcc-9-alpha-linux-gnu, + gcc-9-arm-linux-gnueabi, + gcc-9-arm-linux-gnueabihf, + gcc-9-hppa-linux-gnu, + gcc-9-i686-linux-gnu, + gcc-9-m68k-linux-gnu, + gcc-9-powerpc-linux-gnu, + gcc-9-powerpc-linux-gnuspe, + gcc-9-powerpc64-linux-gnu, + gcc-9-powerpc64le-linux-gnu, + gcc-9-mips-linux-gnu, + gcc-9-mipsel-linux-gnu, + gcc-9-mips64-linux-gnuabi64, + gcc-9-mips64el-linux-gnuabi64, + gcc-9-riscv64-linux-gnu, + gcc-9-s390x-linux-gnu, + gcc-9-sh4-linux-gnu, + gcc-9-sparc-linux-gnu, + gcc-9-sparc64-linux-gnu, + gcc-9-x86-64-linux-gnu, + gcc-9-x86-64-linux-gnux32, + gcc-10-aarch64-linux-gnu, + gcc-10-alpha-linux-gnu, + gcc-10-arm-linux-gnueabi, + gcc-10-arm-linux-gnueabihf, + gcc-10-hppa-linux-gnu, + gcc-10-i686-linux-gnu, + gcc-10-m68k-linux-gnu, + gcc-10-powerpc-linux-gnu, + gcc-10-powerpc-linux-gnuspe, + gcc-10-powerpc64-linux-gnu, + gcc-10-powerpc64le-linux-gnu, + gcc-10-mips-linux-gnu, + gcc-10-mipsel-linux-gnu, + gcc-10-mips64-linux-gnuabi64, + gcc-10-mips64el-linux-gnuabi64, + gcc-10-riscv64-linux-gnu, + gcc-10-s390x-linux-gnu, + gcc-10-sh4-linux-gnu, + gcc-10-sparc-linux-gnu, + gcc-10-sparc64-linux-gnu, + gcc-10-x86-64-linux-gnu, + gcc-10-x86-64-linux-gnux32, Description: GNU C compiler (multilib files) This is the GNU C compiler, a fairly portable optimizing compiler for C. . @@ -132,9 +183,9 @@ Description: GNU C compiler (multilib files) Package: g++ Priority: optional Architecture: any -Depends: cpp (>= ${version:cpp}), gcc (>= ${version:cpp}), g++-${pv:gpp} ${reqv:gpp}, gcc-${pv:gpp} ${reqv:gpp}, ${misc:Depends} +Depends: cpp (= ${version:cpp}), gcc (= ${version:cpp}), g++-${pv:gpp} ${reqv:gpp}, gcc-${pv:gpp} ${reqv:gpp}, ${misc:Depends} Suggests: ${pkgmulti:gpp} -Provides: c++-compiler +Provides: c++-compiler, ${gpp:triplet} Description: GNU C++ compiler This is the GNU C++ compiler, a fairly portable optimizing compiler for C++. . @@ -143,7 +194,7 @@ Description: GNU C++ compiler Package: g++-multilib Priority: optional Architecture: @multilib_archs@ -Depends: cpp (>= ${version:cpp}), gcc-multilib (>= ${version:cpp}), g++ (>= ${version:cpp}), g++-${pv:gpp}-multilib ${reqv:gpp}, ${misc:Depends} +Depends: cpp (= ${version:cpp}), gcc-multilib (= ${version:cpp}), g++ (= ${version:cpp}), g++-${pv:gpp}-multilib ${reqv:gpp}, ${misc:Depends} Description: GNU C++ compiler (multilib files) This is the GNU C++ compiler, a fairly portable optimizing compiler for C++. . @@ -202,7 +253,7 @@ Description: GNU Objective-C++ compiler (multilib files) Package: gfortran Priority: optional Architecture: any -Depends: cpp (>= ${version:cpp}), gcc (>= ${version:gcc}), gfortran-${pv:gfort} ${reqv:gfort}, ${misc:Depends} +Depends: cpp (= ${version:cpp}), gcc (= ${version:gcc}), gfortran-${pv:gfort} ${reqv:gfort}, ${misc:Depends} Suggests: ${pkgmulti:gfort}, gfortran-doc Provides: fortran-compiler, ${fortran:mod-version} Description: GNU Fortran 95 compiler @@ -215,7 +266,7 @@ Description: GNU Fortran 95 compiler Package: gfortran-multilib Priority: optional Architecture: @multilib_archs@ -Depends: cpp (>= ${version:cpp}), gcc-multilib (>= ${version:cpp}), gfortran (>= ${version:gcc}), gfortran-${pv:gfort}-multilib ${reqv:gfort}, ${misc:Depends} +Depends: cpp (= ${version:cpp}), gcc-multilib (= ${version:cpp}), gfortran (= ${version:gcc}), gfortran-${pv:gfort}-multilib ${reqv:gfort}, ${misc:Depends} Description: GNU Fortran 95 compiler (multilib files) This is the GNU Fortran compiler, which compiles Fortran 95 on platforms supported by the gcc compiler. @@ -246,82 +297,6 @@ Description: Go compiler, based on the GCC backend (multilib files) A dependency package on architectures with multilib support; the package contains dependencies for the non-default multilib architecture(s). -Package: libgcj-common -Section: java -Architecture: all -Multi-Arch: foreign -Priority: optional -Depends: ${python:Depends}, ${misc:Depends} -Conflicts: classpath (<= 0.04-4) -Replaces: java-gcj-compat (<< 1.0.65-8), java-gcj-compat-dev (<< 1.0.80-2) -XB-Python-Version: ${python:Versions} -Description: Java runtime library (common files) - This package contains files shared by Classpath and libgcj libraries. - -Package: libgcj-bc -Section: java -Architecture: any -Multi-Arch: same -Priority: optional -Pre-Depends: ${misc:Pre-Depends} -Depends: libgcj-common (>= ${version:libgcjcommon}), ${pkg:libgcj} ${reqv:gij}, ${misc:Depends} -Description: Link time only library for use with gcj - A fake library that is used at link time only. It ensures that - binaries built with the BC-ABI link against a constant SONAME. - This way, BC-ABI binaries continue to work if the SONAME underlying - libgcj.so changes. - -Package: gcj-jdk -Section: java -Architecture: any -Priority: optional -Depends: libgcj-common (>= ${version:libgcjcommon}), gcj-jre (>= ${version:gcj}), ${dep:jdk}, ${pkg:gjdoc}, ${misc:Depends} -Provides: java-gcj-compat-dev, java-compiler, java-sdk, java2-sdk, java5-sdk, ${pkg:gjdoc} -Conflicts: gcj (<< ${ver:gcjconflict}), classpath-common (<= 2:0.97.2-1.1), ${pkg:gjdoc}, java-gcj-compat-dev (<< 1.0.80-2) -Replaces: ${pkg:gjdoc}, java-gcj-compat-dev (<< 1.0.80-2), gcj-jre-headless (<< 4:4.9.0-2) -Description: gcj and Classpath development tools for Java(TM) - GCJ is a front end to the GCC compiler which can natively compile both - Java(tm) source and bytecode files. The compiler can also generate class - files. Other java development tools from Classpath are included in this - package. - . - The package contains as well a collection of wrapper scripts and symlinks. - It is meant to provide a Java-SDK-like interface to the GCJ tool set. - -Package: gcj-jre-headless -Priority: optional -Section: java -Architecture: any -Depends: libgcj-common (>= ${version:libgcjcommon}), ${dep:jrehl}, ${misc:Depends} -Suggests: gcj-jdk -Conflicts: gij (<< ${ver:gcjconflict}), java-gcj-compat-headless (<< 1.0.80-6) -Replaces: java-gcj-compat-headless (<< 1.0.80-6) -Provides: java-gcj-compat-headless, java-virtual-machine, java5-runtime-headless, java2-runtime-headless, java1-runtime-headless, java-runtime-headless -Description: Java runtime environment using GIJ/Classpath (headless version) - GIJ is a Java bytecode interpreter, not limited to interpreting bytecode. - It includes a class loader which can dynamically load shared objects, so - it is possible to give it the name of a class which has been compiled and - put into a shared library on the class path. - . - The package contains as well a collection of wrapper scripts and symlinks. - It is meant to provide a Java-RTE-like interface to the GIJ/GCJ tool set, - limited to the headless tools and libraries. - -Package: gcj-jre -Section: java -Architecture: any -Priority: optional -Depends: libgcj-common (>= ${version:libgcjcommon}), gcj-jre-headless (>= ${version:gcj}), ${dep:jre}, ${misc:Depends} -Provides: java-gcj-compat, java5-runtime, java2-runtime, java1-runtime, java-runtime -Description: Java runtime environment using GIJ/Classpath - GIJ is a Java bytecode interpreter, not limited to interpreting bytecode. - It includes a class loader which can dynamically load shared objects, so - it is possible to give it the name of a class which has been compiled and - put into a shared library on the class path. - . - This is currently an empty package. - It is meant to provide a Java-RTE-like interface to the GIJ/GCJ tool set. - Package: gdc Priority: optional Architecture: any @@ -353,3 +328,44 @@ Depends: libgphobos-${pv:gdc}-dev ${reqv:gdc}, ${misc:Depends} Provides: libphobos-dev Description: Phobos D standard library This is a dependency package providing the default D standard library. + +Package: gm2 +Priority: optional +Architecture: any +Depends: cpp (>= ${version:cpp}), gcc (>= ${version:gcc}), gm2-${pv:gm2} ${reqv:gm2}, ${misc:Depends} +Description: GNU Modula-2 compiler, based on the GCC backend + This is a dependency package providing the default GNU Modula-2 compiler. + +#Package: gm2-multilib +#Priority: optional +#Architecture: @m2_multilib_archs@ +#Depends: cpp (>= ${version:cpp}), gcc-multilib (>= ${version:cpp}), gm2 (>= ${version:gcc}), gm2-${pv:gdc}-multilib ${reqv:gm2}, ${misc:Depends} +#Description: GNU Modula-2 compiler (multilib files) +# This is a dependency package providing the default GNU Modula-2 compiler. +# . +# A dependency package on architectures with multilib support; the package +# contains dependencies for the non-default multilib architecture(s). + +Package: gccbrig +Priority: optional +Architecture: amd64 i386 x32 +Depends: cpp (>= ${version:cpp}), gcc (>= ${version:cpp}), + gccbrig-${pv:brig} ${reqv:brig}, ${misc:Depends} +Description: GNU BRIG (HSA IL) frontend + This is the GNU BRIG (HSA IL) frontend. The consumed format is a binary + representation. The textual HSAIL can be compiled to it with a separate + assembler. + . + This is a dependency package providing the default GNU Objective-C compiler. + +Package: gcc-offload-nvptx +Priority: optional +Architecture: amd64 +Depends: cpp (>= ${version:cpp}), gcc (>= ${version:cpp}), + gcc-${pv:offl}-offload-nvptx ${reqv:offl}, ${misc:Depends} +Description: GCC offloading compiler to NVPTX + This package contains libgomp plugin for offloading to NVidia + PTX. The plugin needs libcuda.so.1 shared library that has to be + installed separately. + . + This is a dependency package providing the default GNU Objective-C compiler. diff --git a/debian/control.source b/debian/control.source index b9329a6..accde43 100644 --- a/debian/control.source +++ b/debian/control.source @@ -3,12 +3,10 @@ Section: devel Priority: standard Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org> Uploaders: Matthias Klose <doko@debian.org> -Standards-Version: 3.9.8 +Standards-Version: 4.4.0 Build-Depends: m4, debhelper (>= 9), dpkg-dev (>= 1.17.11), - gcc-6-base (>= 6.3.0-9), + gcc-9-base (>= 9.2.1-1), lsb-release -Build-Depends-Indep: ca-certificates, gcj-jdk, python -Vcs-Svn: svn://svn.debian.org/svn/gcccvs/branches/sid/gcc-defaults -Vcs-Browser: http://svn.debian.org/viewsvn/gcccvs/branches/sid/gcc-defaults -XS-Python-Version: all +Vcs-Browser: https://salsa.debian.org/toolchain-team/gcc-defaults +Vcs-Git: https://salsa.debian.org/toolchain-team/gcc-defaults.git diff --git a/debian/copyright.libgcj-common b/debian/copyright.libgcj-common deleted file mode 100644 index 9b3c6e2..0000000 --- a/debian/copyright.libgcj-common +++ /dev/null @@ -1,31 +0,0 @@ -gcc-defaults is Copyright (C) 2000, 2001, 2006 Debian. - -These scripts are free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -The file classpath.security in the libgcj-common package is part of -GNU Classpath. GNU Classpath is free software; you can redistribute -it and/or modify it under the terms of the GNU General Public License -as published by the Free Software Foundation; either version 2, or (at -your option) any later version. - -The files aot-compile aotcompile.py, classfile.py, generate-cacerts.pl -are - - Copyright (C) 2004, 2005 Red Hat, Inc. - Written by Gary Benson <gbenson@redhat.com> - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - -On Debian GNU/Linux systems, the complete text of the GNU General -Public License can be found in `/usr/share/common-licenses/GPL'. diff --git a/debian/dh_javadoc b/debian/dh_javadoc deleted file mode 100644 index aa50462..0000000 --- a/debian/dh_javadoc +++ /dev/null @@ -1,141 +0,0 @@ -#!/usr/bin/perl -w - -=head1 NAME - -dh_javadoc - generate javadoc documentation and install in package directory - -=cut - -use strict; -use Debian::Debhelper::Dh_Lib; - -=head1 SYNOPSIS - -B<dh_javadoc> [S<I<debhelper options>>] [B<-p<package>>] [B<--sourcedir I<source path>>] [S<I<Java packages>>] - -=head1 DESCRIPTION - -dh_javadoc is a debhelper program that is responsible for generating HTML Java -documentation and installing it in package directories. This should be done in -the documentaion package of all Java libraries. Normal Java programs should not -be supplied with javadoc documentation (neither in their main package or in a -separate documentation package) - -Any package specified as parameters will be installed into the first package -dh_javadoc is told to act on. Use of the standard debhelper B<-p> option is -highly recommended. - -A file named debian/package.javadoc may list additional packages to have -documentation generated. These should be separated by new lines. - -When the Java policy is modified, this script will also install links to the -documentation in a common place so that javadoc pages may be interlinked; and -also provide a substitution variable for documentation package dependencies. - -Javadoc generation is done using gjdoc, currently the only free javadoc -implementation. When new features are added to this (such as overview files), -this script will be modified accordingly. - -=head1 OPTIONS - -=over 4 - -=item B<--sourcedir I<source path>> - -Specify the source path in which to look for Java source files. - -=item I<Java packages> - -Names of Java packages to be documented. - -=back - -=head1 TODO - -=over 4 - -=item + - -Check parameters more carefully. - -=item + - -Add substvar for documentation dependencies - -=item + - -Don't put the 'common' directory in all packages - refer to one in -/usr/share/gjdoc & insist on creating that dependency - -=item + - -Other items depend on gjdoc improvements: - -=over 8 - -=item - - -Add package listings to common directory - -=item - - -Generate dependency substvar based on additional doc packages used. - -=back - -=back - -=cut - -use Cwd; - -init(options => { - "sourcedir=s" => \$dh{SOURCEDIR}, -}); - -foreach my $package (@{$dh{DOPACKAGES}}) { - my $tmp=tmpdir($package); - - my @packages = @ARGV; - - if (-e "debian/$package.javadoc"){ - open PACKAGES, "debian/$package.javadoc" - or error("Unable to open file: debian/$package.javadoc: $!"); - my @pkgs; - my $i = 0; - while(<PACKAGES>){chomp($pkgs[$i++]=$_);} - close PACKAGES or warning("Error closing debian/$package.javadoc: $!"); - @packages = (@packages, @pkgs); - } - - my $src_dir; - if ($dh{SOURCEDIR}){ - $src_dir = getcwd .'/'. $dh{SOURCEDIR}; - }else{ - $src_dir = getcwd(); - } - - if (! -e "/usr/bin/javadoc"){ - error("/usr/bin/javadoc not found"); - } - - # make directory - doit('install', '-g', '0', '-o', '0', '-d', "$tmp/usr/share/doc/$package/api/"); - # generate javadoc - doit('javadoc', "-sourcepath", $src_dir, "-d", "$tmp/usr/share/doc/$package/api/", @packages); - # and remove gjdoc_rawcomment.cache - doit('rm', "-f", "gjdoc_rawcomment.cache"); - -} - -=head1 SEE ALSO - -L<debhelper(7)> - -This program is designed similar to debhelper - -=head1 AUTHOR - -Mark Howard <mh@debian.org> - -=cut diff --git a/debian/dh_nativejava b/debian/dh_nativejava deleted file mode 100644 index 34209d1..0000000 --- a/debian/dh_nativejava +++ /dev/null @@ -1,102 +0,0 @@ -#!/usr/bin/perl -w - -=head1 NAME - -dh_nativejava - compile jar files to native code and register them - -=cut - -use strict; -use Debian::Debhelper::Dh_Lib; -use IO::File; -use POSIX qw(tmpnam); -use Cwd; - -=head1 SYNOPSIS - -B<dh_nativejava> [S<I<debhelper options>>] [B<-n>] [B<-o>] [B<--sourcedir=>I<dir>] - -=head1 DESCRIPTION - -dh_nativejava is a debhelper program that is responsible for compiling -jars to native code and to make them known to the system. - -It also automatically generates the postinst and postrm commands needed -to updated the global classmap database and adds a dependency on -libgcj-common in the misc:Depends substitution variable. - -=head1 OPTIONS - -=over 4 - -=item B<-n>, B<--noscripts> - -Do not modify postinst/postrm scripts. - -=item B<-o>, B<--onlyscripts> - -Only modify postinst/postrm scripts, do not actually compile any files -or register them. May be useful if the files are already built and -registered. - -=item B<--destdir=>I<directory> - -Use this if you want the compiled files to be put in a directory -other than the default of "/usr/lib/gcj" - -=back - -=head1 NOTES - -Note that this command is not idempotent. "dh_clean -k" should be called -between invocations of this command. Otherwise, it may cause multiple -instances of the same text to be added to maintainer scripts. - -=cut - -init(); - -my $destdir = $dh{DESTDIR}; -if (! $dh{DESTDIR}) { - $destdir = "/usr/lib/gcj"; -} - -my $pwd = getcwd; -my $sourcelist; -do { - $sourcelist = tmpnam(); -} until my $fh = IO::File->new($sourcelist, O_RDWR|O_CREAT|O_EXCL); - -foreach my $package (@{$dh{DOPACKAGES}}) { - my $tmp=tmpdir($package); - - # Figure out if this is a GCJ package. - if ($tmp =~ '-gcj$') { - my $jardir =$tmp; - $jardir =~ s/-gcj$//; - if (! $dh{ONLYSCRIPTS}) { - complex_doit("find $pwd -type f ! -type l > $sourcelist"); - doit("aot-compile", "-L", $destdir, "-c", "-fsource-filename=$sourcelist", "$jardir", "$tmp/usr/lib/gcj"); - doit("mkdir", "-p", "$tmp/usr/share/gcj/classmap.d"); - complex_doit("mv $tmp/usr/lib/gcj/*.db $tmp/usr/share/gcj/classmap.d"); - } - # Install scripts to rebuild global classmap.db. - if (! $dh{NOSCRIPTS}) { - autoscript($package,"postinst", "postinst-rebuild-gcj-db", ""); - autoscript($package,"postrm", "postrm-rebuild-gcj-db", ""); - } - addsubstvar($package, "misc:Depends", "libgcj-common (>> 1:4.1.1-13)"); - } -} - -END { unlink($sourcelist) or die "Couldn't unlink $sourcelist : $!" } - -=head1 SEE ALSO - -L<debhelper(7)> - -=head1 AUTHOR - -Michael Koch <mkoch@debian.org>, Matthias Klose <doko@ubuntu.com> - -=cut diff --git a/debian/gcc.postinst.in b/debian/gcc.postinst.in index 0828ab6..85ff3e8 100644 --- a/debian/gcc.postinst.in +++ b/debian/gcc.postinst.in @@ -1,11 +1,6 @@ -#! /bin/sh -e +#! /bin/sh -# remove the doc dir, if it's still a directory and replace with a symlink -pkg=`basename $0 .postinst` -if [ ! -L /usr/share/doc/$pkg ]; then - rm -rf /usr/share/doc/$pkg - ln -s cpp /usr/share/doc/$pkg -fi +set -e update-alternatives --quiet \ --install /usr/bin/cc cc /usr/bin/gcc 20 \ diff --git a/debian/gcc.preinst b/debian/gcc.preinst deleted file mode 100644 index af198fb..0000000 --- a/debian/gcc.preinst +++ /dev/null @@ -1,10 +0,0 @@ -#! /bin/sh -e - -if [ -d /usr/share/doc/gcc ]; then - echo "Removing old gcc doc directory." - rm -rf /usr/share/doc/gcc -fi - -#DEBHELPER# - -exit 0 diff --git a/debian/generate-cacerts.pl.in b/debian/generate-cacerts.pl.in deleted file mode 100644 index b90f6ef..0000000 --- a/debian/generate-cacerts.pl.in +++ /dev/null @@ -1,106 +0,0 @@ -#!/usr/bin/perl - -# Copyright (C) 2007, 2009 Free Software Foundation -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# generate-cacerts.pl generates a gkeytool keystore named 'cacerts' -# from OpenSSL's certificate bundle. - -# First extract each of OpenSSL's bundled certificates into its own -# aliased filename. -chomp($file=@ARGV[0]); -$file = "/etc/pki/tls/cert.pem" unless $file ne ""; -open(CERTS, $file); -@certs = <CERTS>; -close(CERTS); - -$pem_file_number = 0; -$writing_cert = 0; -foreach $cert (@certs) -{ - if ($cert eq "-----BEGIN CERTIFICATE-----\n") - { - if ($writing_cert != 0) - { - die "$file is malformed."; - } - $pem_file_number++; - # Numbering each file guarantees that cert aliases will be - # unique. - $pem_file_name = "$pem_file_number$cert_alias.pem"; - $writing_cert = 1; - open(PEM, ">$pem_file_name"); - print PEM $cert; - } - elsif ($cert eq "-----END CERTIFICATE-----\n") - { - $writing_cert = 0; - print PEM $cert; - close(PEM); - } - elsif ($cert =~ /Issuer: /) - { - # Generate an alias using the OU and CN attributes of the - # Issuer field if both are present, otherwise use only the CN - # attribute. The Issuer field must have either the OU or the - # CN attribute. - $_ = $cert; - if ($cert =~ /OU=/) - { - s/Issuer:.*?OU=//; - # Remove other occurrences of OU=. - s/OU=.*CN=//; - # Remove CN= if there were not other occurrences of OU=. - s/CN=//; - } - elsif ($cert =~ /CN=/) - { - s/Issuer:.*CN=//; - } - s/\W//g; - tr/A-Z/a-z/; - $cert_alias = $_ - } - else - { - if ($writing_cert == 1) - { - print PEM $cert; - } - } -} - -# Check that the correct number of .pem files were produced. -@pem_files = <*.pem>; -if (@pem_files != $pem_file_number) -{ - die "Number of .pem files produced does not match". - " number of certs read from $file."; -} - -# Now store each cert in the 'cacerts' file using gkeytool. -$certs_written_count = 0; -foreach $pem_file (@pem_files) -{ - system "yes | gkeytool@gcc_suffix@ -import -alias `basename $pem_file .pem`". - " -keystore cacerts -storepass '' -file $pem_file". - " 2>&1 >/dev/null"; - unlink($pem_file); - $certs_written_count++; -} - -# Check that the correct number of certs were added to the keystore. -if ($certs_written_count != $pem_file_number) -{ - die "Number of certs added to keystore does not match". - " number of certs read from $file."; -} diff --git a/debian/gij.prerm b/debian/gij.prerm deleted file mode 100644 index b368ea4..0000000 --- a/debian/gij.prerm +++ /dev/null @@ -1,8 +0,0 @@ -#! /bin/sh -e - -# make sure that no more alternatives are around from the libgcj2 package -update-alternatives --remove gij /usr/bin/gij-3.0 >/dev/null 2>&1 || true - -#DEBHELPER# - -exit 0 diff --git a/debian/libgcj-bc.overrides b/debian/libgcj-bc.overrides deleted file mode 100644 index d5e53ef..0000000 --- a/debian/libgcj-bc.overrides +++ /dev/null @@ -1 +0,0 @@ -libgcj-bc: pkg-has-shlibs-control-file-but-no-actual-shared-libs diff --git a/debian/libgcj-common.postinst b/debian/libgcj-common.postinst deleted file mode 100644 index cdffa42..0000000 --- a/debian/libgcj-common.postinst +++ /dev/null @@ -1,9 +0,0 @@ -#! /bin/sh - -set -e - -rebuild-security-providers - -#DEBHELPER# - -exit 0 diff --git a/debian/libgcj-common.preinst b/debian/libgcj-common.preinst deleted file mode 100644 index 38a71de..0000000 --- a/debian/libgcj-common.preinst +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -set -e - -case "$1" in - install|upgrade) - if [ -L /usr/share/doc/libgcj-common ]; then - rm -f /usr/share/doc/libgcj-common - fi - ;; - abort-upgrade) - ;; - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libgcj-common.prerm b/debian/libgcj-common.prerm deleted file mode 100644 index 9acef4a..0000000 --- a/debian/libgcj-common.prerm +++ /dev/null @@ -1,12 +0,0 @@ -#! /bin/sh - -set -e - -case "$1" in - remove) - rm -f /var/lib/security/classpath.security -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/postinst-rebuild-gcj-db b/debian/postinst-rebuild-gcj-db deleted file mode 100644 index e1a745e..0000000 --- a/debian/postinst-rebuild-gcj-db +++ /dev/null @@ -1,3 +0,0 @@ -if which rebuild-gcj-db >/dev/null 2>&1; then - rebuild-gcj-db -fi diff --git a/debian/postrm-rebuild-gcj-db b/debian/postrm-rebuild-gcj-db deleted file mode 100644 index e1a745e..0000000 --- a/debian/postrm-rebuild-gcj-db +++ /dev/null @@ -1,3 +0,0 @@ -if which rebuild-gcj-db >/dev/null 2>&1; then - rebuild-gcj-db -fi diff --git a/debian/rebuild-gcj-db b/debian/rebuild-gcj-db deleted file mode 100644 index 297a00b..0000000 --- a/debian/rebuild-gcj-db +++ /dev/null @@ -1,106 +0,0 @@ -#! /bin/bash - -set -e - -if [ $# -gt 1 ]; then - cat 1>&2 <<-EOF - rebuild-gcj-db: re-build the gcj classmap database - - usage: $0 [install|remove] - EOF - exit 1 -fi - -mode=install -case "$1" in - install|remove) - mode=$1;; -esac - -uname=$(uname -m) - -rebuild_db() -{ - dbtool=$1; shift - dbLocation=$1; shift - dirs= - - for dir; do [ -d $dir ] && dirs="$dirs $dir"; done - if [ -z "$dirs" ]; then - # no more dirs with .db files on the system - return 0 - fi - mkdir -p $(dirname $dbLocation) - if $dbtool -n $dbLocation.tmp 64; then - : - #case "$uname" in parisc*) - # echo >&2 "$dbtool succeeded unexpectedly" - #esac - else - case "$uname" in - m68k) - echo >&2 "ERROR: $dbtool did fail; known problem on $uname" - return 0;; - *) - exit 2 - esac - fi - find $dirs -follow -name '*.db' -print0 | \ - xargs -r -0 $dbtool -m $dbLocation.tmp $dbLocation.tmp || exit 1 - mv $dbLocation.tmp $dbLocation -} - - -rebuild_databases() -{ - v=$1 - dbtool=gcj-dbtool-$1 - dbLocation=`$dbtool -p || true` - - if [ -n "$dbLocation" ]; then - case "$uname" in m68k) - echo >&2 "$dbtool succeeded unexpectedly" - esac - else - case "$uname" in - m68k) - echo >&2 "ERROR: $dbtool did fail; known problem on $uname" - return 0;; - *) - exit 2 - esac - fi - - if [ "$mode" = remove ] && [ ! -f "$dbLocation" ]; then - # libgcj7-0 or libgcj8 are already removed; no need - # to rebuild anything - return 0 - fi - rebuild_db \ - $dbtool \ - $dbLocation \ - /usr/share/gcj/classmap.d \ - /usr/share/gcj-$v/classmap.d -} - -# still different databases for each gcj-4.x - -if which gcj-dbtool-4.9 >/dev/null 2>&1; then - rebuild_databases 4.9 -fi - -if which gcj-dbtool-4.8 >/dev/null 2>&1; then - rebuild_databases 4.8 -fi - -if which gcj-dbtool-4.7 >/dev/null 2>&1; then - rebuild_databases 4.7 -fi - -if which gcj-dbtool-4.6 >/dev/null 2>&1; then - rebuild_databases 4.6 -fi - -if which gcj-dbtool-4.4 >/dev/null 2>&1; then - rebuild_databases 4.4 -fi diff --git a/debian/rebuild-security-providers b/debian/rebuild-security-providers deleted file mode 100755 index bd33a66..0000000 --- a/debian/rebuild-security-providers +++ /dev/null @@ -1,19 +0,0 @@ -#! /bin/bash -# Rebuild the list of security providers in classpath.security - -secfiles="/var/lib/security/classpath.security" - -for secfile in $secfiles; do - # check if this classpath.security file exists - #[ -f "$secfile" ] || continue - - sed '/^security\.provider\./d' /etc/java/security/classpath.security \ - > $secfile - - count=0 - for provider in $(ls /etc/java/security/security.d) - do - count=$((count + 1)) - echo "security.provider.${count}=${provider#*-}" >> "$secfile" - done -done diff --git a/debian/rules b/debian/rules index 8e6a594..31585bf 100755 --- a/debian/rules +++ b/debian/rules @@ -152,6 +152,22 @@ REL_NO_60 := $(shell expr $(VMINOR) - 159)$(REL_EXT) REL_NO_61 := $(shell expr $(VMINOR) - 162)$(REL_EXT) REL_NO_62 := $(shell expr $(VMINOR) - 163)$(REL_EXT) REL_NO_63 := $(shell expr $(VMINOR) - 164)$(REL_EXT) +REL_NO_64 := $(shell expr $(VMINOR) - 170)$(REL_EXT) + +REL_NO_70 := $(shell expr $(VMINOR) - 167)$(REL_EXT) +REL_NO_71 := $(shell expr $(VMINOR) - 169)$(REL_EXT) +REL_NO_71 := $(shell expr $(VMINOR) - 170)$(REL_EXT) +REL_NO_72 := $(shell expr $(VMINOR) - 172)$(REL_EXT) +REL_NO_73 := $(shell expr $(VMINOR) - 173)$(REL_EXT) + +REL_NO_80 := $(shell expr $(VMINOR) - 175)$(REL_EXT) +REL_NO_81 := $(shell expr $(VMINOR) - 177)$(REL_EXT) +REL_NO_82 := $(shell expr $(VMINOR) - 178)$(REL_EXT) +REL_NO_83 := $(shell expr $(VMINOR) - 182)$(REL_EXT) + +REL_NO_90 := $(shell expr $(VMINOR) - 181)$(REL_EXT) +REL_NO_91 := $(shell expr $(VMINOR) - 182)$(REL_EXT) +REL_NO_921 := $(shell expr $(VMINOR) - 182)$(REL_EXT) # minimum required gcc-X.Y versions REQV_295 := (>= 1:2.95.4-16) @@ -162,9 +178,7 @@ REQV_33 := (>= 1:3.3.6-1) REQV_34 := (>= 3.4.6-1) REQV_40 := (>= 4.0.3-1) REQV_41 := (>= 4.1.2-1) -REQV_41_GCJ := (>= 4.1.2-1) REQV_42 := (>= 4.2.4-1) -REQV_42_GCJ := (>= 4.2.4-1) REQV_43 := (>= 4.3.5-1) REQV_44 := (>= 4.4.7-1~) REQV_45 := (>= 4.5.3-1) @@ -174,9 +188,10 @@ REQV_47 := (>= 4.7.3-1~) REQV_48 := (>= 4.8.4-1~) REQV_49 := (>= 4.9.3-10~) REQV_5 := (>= 5.4.1-2~) -REQV_6 := (>= 6.3.0-9~) - -REQV_LIBGCJ_BC := (>= 6.3.0-1~) +REQV_6 := (>= 6.4.0-1~) +REQV_7 := (>= 7.3.0-11~) +REQV_8 := (>= 8.3.0-6~) +REQV_9 := (>= 9.2.1-1~) # architecture dependent variables DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH) @@ -187,106 +202,93 @@ ifneq (,$(filter $(DEB_HOST_ARCH), i386 kfreebsd-i386 hurd-i386)) endif DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) -all_archs = alpha amd64 armel armhf arm64 hppa i386 ia64 m68k mips mipsel mips64 mips64el or1k powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64 x32 hurd-i386 kfreebsd-amd64 kfreebsd-i386 - -gcc5_archs = -gcc6_archs = alpha amd64 armel armhf arm64 hppa i386 ia64 m68k mips mipsel mips64 mips64el or1k powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64 x32 hurd-i386 kfreebsd-amd64 kfreebsd-i386 +all_archs = alpha amd64 armel armhf arm64 hppa i386 ia64 m68k mipsel mips64 mips64el or1k powerpc powerpcspe ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64 x32 hurd-i386 kfreebsd-amd64 kfreebsd-i386 -gcj5_archs = -gcj6_archs = alpha amd64 armel armhf arm64 hppa i386 ia64 m68k mips mipsel mips64 mips64el or1k powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64 x32 hurd-i386 kfreebsd-amd64 kfreebsd-i386 +gcc8_archs = powerpcspe +gcc9_archs = alpha amd64 armel armhf arm64 hppa i386 ia64 m68k mipsel mips64 mips64el or1k powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64 x32 hurd-i386 kfreebsd-amd64 kfreebsd-i386 -gnat5_archs = alpha amd64 armel armhf arm64 hppa i386 ia64 m68k mips mipsel mips64 mips64el or1k powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64 x32 hurd-i386 kfreebsd-amd64 kfreebsd-i386 -gnat6_archs = +gnat_archs = alpha amd64 armel armhf arm64 hppa i386 ia64 m68k mipsel mips64 mips64el or1k powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64 x32 hurd-i386 kfreebsd-amd64 kfreebsd-i386 +gnat8_archs = # CV_XXX is the complete version number, including the release, without epoch -CV_CPP := 6.3.0-$(REL_NO_63) -CV_GCC := 6.3.0-$(REL_NO_63) -CV_GPP := 6.3.0-$(REL_NO_63) -CV_GOBJC := 6.3.0-$(REL_NO_63) -CV_GOBJCXX := 6.3.0-$(REL_NO_63) -CV_GFORT := 6.3.0-$(REL_NO_63) -CV_GGO := 6.3.0-$(REL_NO_63) -CV_GNAT := 6.3.0-$(REL_NO_63) -CV_GCJ := 6.3.0-$(REL_NO_63) -CV_GIJ := 6.3.0-$(REL_NO_63) -CV_LIBGCJBC := 6.3.0-$(REL_NO_63) -CV_GDC := 6.3.0-$(REL_NO_63) -CV_LIBGCJCOMMON := 1:6.3-$(REL_NO_63) +CV_CPP := 9.2.1-$(REL_NO_921) +CV_GCC := 9.2.1-$(REL_NO_921) +CV_GPP := 9.2.1-$(REL_NO_921) +CV_GOBJC := 9.2.1-$(REL_NO_921) +CV_GOBJCXX := 9.2.1-$(REL_NO_921) +CV_GFORT := 9.2.1-$(REL_NO_921) +CV_GGO := 9.2.1-$(REL_NO_921) +CV_GNAT := 9.2.1-$(REL_NO_921) +CV_GDC := 9.2.1-$(REL_NO_921) +CV_GM2 := 9.2.1-$(REL_NO_921) +CV_BRIG := 9.2.1-$(REL_NO_921) +CV_OFFL := 9.2.1-$(REL_NO_921) + $(foreach a, $(all_archs), \ - $(foreach v, CV_CPP CV_GCC CV_GPP CV_GOBJC CV_GOBJCXX CV_GFORT CV_GGO CV_GNAT CV_GCJ CV_GDC, \ + $(foreach v, CV_CPP CV_GCC CV_GPP CV_GOBJC CV_GOBJCXX CV_GFORT CV_GGO CV_GNAT CV_GDC CV_GM2 CV_BRIG CV_OFFL, \ $(eval $(v)_$(a) = $(call $(v))))) -ifneq (,$(filter $(DEB_HOST_ARCH), $(gcc5_archs))) - CV_CPP := 5.4-$(REL_NO_54) - CV_GCC := 5.4-$(REL_NO_54) - CV_GPP := 5.4-$(REL_NO_54) - CV_GOBJC := 5.4-$(REL_NO_54) - CV_GOBJCXX := 5.4-$(REL_NO_54) - CV_GFORT := 5.4-$(REL_NO_54) - CV_GGO := 5.4-$(REL_NO_54) - CV_GDC := 5.4-$(REL_NO_54) - $(foreach a, $(gcc5_archs), \ - $(foreach v, CV_CPP CV_GCC CV_GPP CV_GOBJC CV_GOBJCXX CV_GFORT CV_GGO CV_GDC, \ +ifneq (,$(filter $(DEB_HOST_ARCH), $(gcc8_archs))) + CV_CPP := 8.3.0-$(REL_NO_83) + CV_GCC := 8.3.0-$(REL_NO_83) + CV_GPP := 8.3.0-$(REL_NO_83) + CV_GOBJC := 8.3.0-$(REL_NO_83) + CV_GOBJCXX := 8.3.0-$(REL_NO_83) + CV_GFORT := 8.3.0-$(REL_NO_83) + CV_GGO := 8.3.0-$(REL_NO_83) + CV_GDC := 8.3.0-$(REL_NO_83) + CV_GM2 := 8.3.0-$(REL_NO_83) + CV_BRIG := 8.3.0-$(REL_NO_83) + CV_OFFL := 8.3.0-$(REL_NO_83) + $(foreach a, $(gcc8_archs), \ + $(foreach v, CV_CPP CV_GCC CV_GPP CV_GOBJC CV_GOBJCXX CV_GFORT CV_GGO CV_GDC CV_GM2 CV_BRIG CV_OFFL, \ $(eval $(v)_$(a) = $(call $(v))))) endif -ifneq (,$(filter $(DEB_HOST_ARCH), $(gcj5_archs))) - CV_GCJ := 5.4-$(REL_NO_54) - CV_GIJ := 5.4-$(REL_NO_54) - CV_LIBGCJBC := 5.4-$(REL_NO_54) - $(foreach a, $(gcc5_archs), \ - $(foreach v, CV_GCJ, \ - $(eval $(v)_$(a) = $(call $(v))))) -endif - -ifneq (,$(filter $(DEB_HOST_ARCH), $(gnat5_archs))) - CV_GNAT := 5.4-$(REL_NO_54) +ifneq (,$(filter $(DEB_HOST_ARCH), $(gnat8_archs))) + CV_GNAT := 8.3.0-$(REL_NO_83) $(foreach a, $(gnat5_archs), \ $(foreach v, CV_GNAT, \ $(eval $(v)_$(a) = $(call $(v))))) endif -REQV_CPP = $(REQV_6) -REQV_GCC = $(REQV_6) -REQV_GPP = $(REQV_6) -REQV_GOBJC = $(REQV_6) -REQV_GOBJCXX = $(REQV_6) -REQV_GFORT = $(REQV_6) -REQV_GGO = $(REQV_6) -REQV_GNAT = $(REQV_6) -REQV_GCJ = $(REQV_6) -REQV_GIJ = $(REQV_6) -REQV_GDC = $(REQV_6) +REQV_CPP = $(REQV_9) +REQV_GCC = $(REQV_9) +REQV_GPP = $(REQV_9) +REQV_GOBJC = $(REQV_9) +REQV_GOBJCXX = $(REQV_9) +REQV_GFORT = $(REQV_9) +REQV_GGO = $(REQV_9) +REQV_GNAT = $(REQV_9) +REQV_GDC = $(REQV_9) +REQV_GM2 = $(REQV_9) +REQV_BRIG = $(REQV_9) +REQV_OFFL = $(REQV_9) $(foreach a, $(all_archs), \ - $(foreach v, REQV_CPP REQV_GCC REQV_GPP REQV_GOBJC REQV_GOBJCXX REQV_GFORT REQV_GGO REQV_GNAT REQV_GCJ REQV_GDC, \ + $(foreach v, REQV_CPP REQV_GCC REQV_GPP REQV_GOBJC REQV_GOBJCXX REQV_GFORT REQV_GGO REQV_GNAT REQV_GDC REQV_GM2 REQV_BRIG REQV_OFFL, \ $(eval $(v)_$(a) = $(call $(v))))) -ifneq (,$(filter $(DEB_HOST_ARCH),$(gcc5_archs))) - REQV_CPP = $(REQV_5) - REQV_GCC = $(REQV_5) - REQV_GPP = $(REQV_5) - REQV_GOBJC = $(REQV_5) - REQV_GOBJCXX = $(REQV_5) - REQV_GFORT = $(REQV_5) - REQV_GGO = $(REQV_5) - REQV_GNAT = $(REQV_5) - REQV_GDC = $(REQV_5) - $(foreach a, $(gcc5_archs), \ - $(foreach v, REQV_CPP REQV_GCC REQV_GPP REQV_GOBJC REQV_GOBJCXX REQV_GFORT REQV_GGO REQV_GCJ REQV_GDC, \ +ifneq (,$(filter $(DEB_HOST_ARCH),$(gcc8_archs))) + REQV_CPP = $(REQV_8) + REQV_GCC = $(REQV_8) + REQV_GPP = $(REQV_8) + REQV_GOBJC = $(REQV_8) + REQV_GOBJCXX = $(REQV_8) + REQV_GFORT = $(REQV_8) + REQV_GGO = $(REQV_8) + REQV_GNAT = $(REQV_8) + REQV_GDC = $(REQV_8) + REQV_GM2 = $(REQV_8) + REQV_BRIG = $(REQV_8) + REQV_OFFL = $(REQV_8) + $(foreach a, $(gcc8_archs), \ + $(foreach v, REQV_CPP REQV_GCC REQV_GPP REQV_GOBJC REQV_GOBJCXX REQV_GFORT REQV_GGO REQV_GDC REQV_GM2 REQV_BRIG REQV_OFFL, \ $(eval $(v)_$(a) = $(call $(v))))) endif -ifneq (,$(filter $(DEB_HOST_ARCH),$(gcj5_archs))) - REQV_GCJ = $(REQV_5) - REQV_GIJ = $(REQV_5) - $(foreach a, $(gcj5_archs), \ - $(foreach v, REQV_GCJ, \ - $(eval $(v)_$(a) = $(call $(v))))) -endif - -ifneq (,$(filter $(DEB_HOST_ARCH),$(gnat5_archs))) - REQV_GNAT = $(REQV_5) - $(foreach a, $(gnat5_archs), \ +ifneq (,$(filter $(DEB_HOST_ARCH),$(gnat8_archs))) + REQV_GNAT = $(REQV_8) + $(foreach a, $(gnat8_archs), \ $(foreach v, REQV_GNAT, \ $(eval $(v)_$(a) = $(call $(v))))) endif @@ -299,89 +301,134 @@ vendor := $(shell if dpkg-vendor --derives-from Ubuntu; then echo Ubuntu; else e lib32 = /usr/lib32 -gcj_archs = alpha amd64 armel armhf arm64 hppa i386 ia64 m68k mips mipsel mips64el \ - powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64 x32 \ - illumos-amd64 \ - kfreebsd-amd64 kfreebsd-i386 hurd-i386 -gcj_native_archs = alpha amd64 armel armhf arm64 hppa i386 ia64 mips mipsel mips64el \ - powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64 x32 \ - illumos-amd64 \ - kfreebsd-amd64 kfreebsd-i386 hurd-i386 - multilib_archs = $(sort \ - amd64 i386 kfreebsd-amd64 mips mips64 mips64el mipsel \ + amd64 i386 kfreebsd-amd64 mips64 mips64el mipsel \ powerpc ppc64 s390 s390x sparc sparc64 x32 \ illumos-amd64 \ $(if $(filter $(vendor), Ubuntu), armel armhf)) -go_archs = alpha amd64 arm64 armel armhf i386 ia64 m68k \ - mips mips64 mips64el mipsel \ +go_archs = alpha amd64 arm64 armel armhf i386 ia64 \ + mips64 mipsel mips64el mipsn32 mipsn32el \ illumos-amd64 \ - powerpc powerpcspe ppc64 ppc64el s390 s390x sparc sparc64 x32 + mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el \ + powerpc powerpcspe ppc64 ppc64el riscv64 s390 s390x sparc sparc64 x32 go_multilib_archs = $(filter $(go_archs), $(filter-out armel armhf, $(multilib_archs))) d_multilib_archs = $(filter-out armel, $(multilib_archs)) ada_archs = alpha amd64 arm64 armel armhf hppa i386 ia64 m68k \ - mips mips64el mipsel \ - powerpc ppc64 ppc64el s390 s390x sh4 sparc sparc64 \ + mips64 mipsel mips64el mipsn32 mipsn32el \ + mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el \ + powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64 \ kfreebsd-amd64 kfreebsd-i386 hurd-i386 +nvptx_archs = amd64 +brig_archs = amd64 i386 x32 + hppa64_archs = amd64 hppa i386 x32 -phobos_archs = amd64 armel armhf i386 x32 hppa +phobos_archs = amd64 armel armhf arm64 i386 x32 kfreebsd-amd64 kfreebsd-i386 \ + hppa riscv64 s390x \ + mips64 mipsel mips64el mipsn32 mipsn32el \ + mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el + +m2_archs = alpha amd64 arm64 armel armhf i386 ia64 \ + mips64 mipsel mips64el mipsn32 mipsn32el \ + mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el \ + ppc64el riscv64 s390 s390x sparc64 HOST_ARCHS_alpha = amd64 i386 x32 -HOST_ARCHS_armhf = amd64 i386 x32 arm64 -HOST_ARCHS_armel = amd64 i386 x32 arm64 -HOST_ARCHS_arm64 = amd64 i386 x32 +HOST_ARCHS_amd64 = arm64 i386 ppc64el x32 +HOST_ARCHS_armhf = amd64 i386 x32 arm64 ppc64el +HOST_ARCHS_armel = amd64 i386 x32 arm64 ppc64el +HOST_ARCHS_arm64 = amd64 i386 x32 ppc64el HOST_ARCHS_hppa = amd64 i386 x32 +HOST_ARCHS_i386 = amd64 arm64 ppc64el x32 HOST_ARCHS_m68k = amd64 i386 x32 -HOST_ARCHS_mips = amd64 i386 x32 -HOST_ARCHS_mipsel = amd64 i386 x32 -HOST_ARCHS_mips64 = amd64 i386 x32 -HOST_ARCHS_mips64el = amd64 i386 x32 +HOST_ARCHS_mipsel = amd64 i386 x32 mips64el +HOST_ARCHS_mips64 = amd64 i386 x32 mips64el +HOST_ARCHS_mips64el = amd64 i386 x32 mips64el +HOST_ARCHS_mipsr6 = amd64 i386 x32 mips64el +HOST_ARCHS_mipsr6el = amd64 i386 x32 mips64el +HOST_ARCHS_mips64r6 = amd64 i386 x32 mips64el +HOST_ARCHS_mips64r6el = amd64 i386 x32 mips64el HOST_ARCHS_powerpc = amd64 i386 x32 ppc64el HOST_ARCHS_powerpcspe = amd64 i386 x32 -HOST_ARCHS_ppc64 = amd64 i386 x32 -HOST_ARCHS_ppc64el = amd64 i386 x32 ppc64 -HOST_ARCHS_s390x = amd64 i386 x32 +HOST_ARCHS_ppc64 = amd64 i386 x32 ppc64el +HOST_ARCHS_ppc64el = amd64 i386 x32 ppc64 arm64 +HOST_ARCHS_riscv64 = amd64 i386 x32 arm64 ppc64el +HOST_ARCHS_s390x = amd64 i386 x32 arm64 ppc64el HOST_ARCHS_sh4 = amd64 i386 x32 HOST_ARCHS_sparc64 = amd64 i386 x32 +HOST_ARCHS_x32 = amd64 arm64 i386 ppc64el + +ifeq (,$(CROSS_ARCHS)) + ifeq ($(SOURCE),gcc-defaults) + ifneq (,$(filter $(DEB_HOST_ARCH),amd64 i386 x32)) + CROSS_ARCHS = s390x ppc64el arm64 armhf armel \ + $(if $(filter $(vendor), Ubuntu), powerpc) \ + $(if $(filter $(DEB_HOST_ARCH), i386 x32), amd64) \ + $(if $(filter $(DEB_HOST_ARCH), amd64 x32), i386) + else ifeq ($(DEB_HOST_ARCH),arm64) + CROSS_ARCHS = amd64 armel armhf i386 ppc64el s390x + else ifeq ($(DEB_HOST_ARCH),ppc64) + CROSS_ARCHS = ppc64el + else ifeq ($(DEB_HOST_ARCH),ppc64el) + CROSS_ARCHS = amd64 i386 $(if $(filter $(vendor), Ubuntu), powerpc) \ + armel armhf arm64 s390x + else + CROSS_ARCHS = + endif + else ifeq ($(SOURCE),gcc-defaults-mipsen) + ifneq (,$(filter $(DEB_HOST_ARCH),amd64 i386 x32 arm64 ppc64el mips64el)) + CROSS_ARCHS ?= mipsel mips64el mips64 \ + mipsr6 mipsr6el mips64r6 mips64r6el # mipsn32 mipsn32el mipsn32r6 mipsn32r6el + else + CROSS_ARCHS = + endif + else # -ports package + ifneq (,$(filter $(DEB_HOST_ARCH),amd64 i386 x32)) + CROSS_ARCHS ?= alpha hppa m68k ppc64 riscv64 sh4 sparc64 \ + $(if $(filter $(vendor), Ubuntu),, powerpc) \ + $(if $(filter $(DEB_HOST_ARCH), amd64 i386), x32) + else ifeq ($(DEB_HOST_ARCH),arm64) + CROSS_ARCHS = x32 riscv64 + else ifeq ($(DEB_HOST_ARCH),ppc64el) + CROSS_ARCHS = x32 riscv64 $(if $(filter $(vendor), Ubuntu),, powerpc) + else + CROSS_ARCHS = + endif + endif +endif ifeq ($(SOURCE),gcc-defaults) with_native = yes - CROSS_ARCHS ?= s390x ppc64el arm64 armhf armel \ - $(if $(filter $(vendor), Ubuntu),, mips mipsel mips64el) -else - CROSS_ARCHS ?= alpha hppa m68k mips64 powerpc powerpcspe ppc64 sh4 sparc64 \ - $(if $(filter $(vendor), Ubuntu), mips mipsel mips64el) endif -with_cross = yes - -ifneq (, $(filter $(DEB_HOST_ARCH),amd64 i386 x32)) - # just use the default from above -else ifeq ($(DEB_HOST_ARCH),arm64) - CROSS_ARCHS = $(if $(findstring ports,$(SOURCE)),, armel armhf) -else ifeq ($(DEB_HOST_ARCH),ppc64) - CROSS_ARCHS = $(if $(findstring ports,$(SOURCE)), ppc64el) -else ifeq ($(DEB_HOST_ARCH),ppc64el) - CROSS_ARCHS = $(if $(findstring ports,$(SOURCE)), powerpc) -else - CROSS_ARCHS = +ifneq (,$(CROSS_ARCHS)) + with_cross = yes endif CROSS_ARCH = $(subst .,,$(suffix $@)) _gnu_type = $(shell dpkg-architecture -a$(1) -qDEB_HOST_GNU_TYPE -f) CROSS_GNU_TYPE = $(call _gnu_type,${CROSS_ARCH}) +CROSS_PKG_GNU_TYPE = $(subst _,-,$(call _gnu_type,${CROSS_ARCH})) all_packages := ifeq ($(with_native),yes) # FIXME: not all packages ... - all_packages := cpp gcc g++ gfortran gcj-jdk gobjc gobjc++ gdc gccgo libgphobos-dev + all_packages := cpp gcc g++ gfortran gobjc gobjc++ gdc gccgo libgphobos-dev ifneq (,$(filter $(DEB_HOST_ARCH), $(hppa64_archs))) all_packages += gcc-hppa64-linux-gnu endif + ifneq (,$(filter $(DEB_HOST_ARCH), $(nvptx_archs))) + all_packages += gcc-offload-nvptx + endif + ifneq (,$(filter $(DEB_HOST_ARCH), $(brig_archs))) + all_packages += gccbrig + endif + ifneq (,$(filter $(DEB_HOST_ARCH), $(m2_archs))) + all_packages += gm2 + endif endif no_packages := @@ -393,16 +440,6 @@ ifeq (,$(filter $(distrelease),lenny etch squeeze dapper hardy jaunty karmic luc with_multiarch_lib := yes endif -LIBGCJ = libgcj17 -LIBGCJ_PC = libgcj17.pc -LIBGCJ_SONAME = 17 - -ifneq (,$(filter $(DEB_HOST_ARCH),$(gcj5_archs))) - LIBGCJ = libgcj16 - LIBGCJ_PC = libgcj16.pc - LIBGCJ_SONAME = 16 -endif - ifneq (,$(filter $(DEB_HOST_ARCH), $(multilib_archs))) with_multilib = yes endif @@ -423,11 +460,6 @@ ifeq ($(with_native),yes) no_packages += gccgo endif - java_no_archs := arm - ifneq (,$(filter $(DEB_HOST_ARCH),$(java_no_archs))) - no_packages += libgcj-bc gcj-jre-headless gcj-jre gcj-jdk - endif - gdc_no_archs = s390 ifneq (,$(filter $(DEB_HOST_ARCH),$(gdc_no_archs))) no_packages += gdc @@ -437,6 +469,10 @@ ifeq ($(with_native),yes) no_packages += libgphobos-dev endif + ifeq (,$(filter $(DEB_HOST_ARCH),$(m2_archs))) + no_packages += gm2 + endif + ifeq (,$(filter $(DEB_HOST_ARCH),$(hppa64_archs))) no_packages += gcc-hppa64-linux-gnu endif @@ -466,10 +502,15 @@ endif # packages which are in the control file, but never built ... invalid_packages = \ gccgo-hppa-linux-gnu \ + gccgo-m68k-linux-gnu \ gccgo-sh4-linux-gnu \ gccgo-multilib-arm-linux-gnueabi \ gccgo-multilib-arm-linux-gnueabihf \ - gdc-multilib-arm-linux-gnueabi + gdc-multilib-arm-linux-gnueabi \ + gm2-powerpc-linux-gnu \ + gm2-powerpc64-linux-gnu \ + gm2-sh4-linux-gnu \ + gm2-x86-64-linux-gnux32 \ ifeq ($(with_cross),yes) cross_packages := $(filter-out $(invalid_packages) gcc-hppa64-linux-gnu, \ @@ -479,39 +520,29 @@ endif packages := $(filter-out $(no_packages), $(all_packages)) # derived version number (without release, e.g. 4.9.3, 5.2.1) -$(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GNAT V_GCJ V_GIJ V_GDC, \ +$(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GNAT V_GDC V_GM2 V_BRIG V_OFFL, \ $(eval $(v) = $(patsubst %-$(lastword $(subst -, ,$(call C$(v)))),%,$(call C$(v)))) \ ) $(foreach a, $(all_archs), \ - $(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GNAT V_GCJ V_GIJ V_GDC, \ + $(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GNAT V_GDC V_GM2 V_BRIG V_OFFL, \ $(eval $(v)_$(a) = $(patsubst %-$(lastword $(subst -, ,$(call C$(v)_$(a)))),%,$(call C$(v)_$(a)))) \ )) # number for the package name (e.g. 4.9, 5, 6) -$(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GNAT V_GCJ V_GIJ V_GDC, \ +$(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GNAT V_GDC V_GM2 V_BRIG V_OFFL, \ $(eval P$(v) = $(firstword $(subst -, ,$(subst ., ,$(call $(v)))))) \ ) $(foreach a, $(all_archs), \ - $(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GNAT V_GCJ V_GIJ V_GDC, \ + $(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GNAT V_GDC V_GM2 V_BRIG V_OFFL, \ $(eval P$(v)_$(a) = $(firstword $(subst -, ,$(subst ., ,$(call $(v)_$(a)))))) \ )) ifneq (,$(filter $(DEB_HOST_ARCH), $(gcc49_archs))) - $(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GDC, \ + $(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GDC V_GM2 V_BRIG V_OFFL, \ $(eval P$(v) = $(subst $(SPACE),.,$(wordlist 1,2,$(subst ., ,$(call $(v)))))) \ ) $(foreach a, $(gcc49_archs), \ - $(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GDC, \ - $(eval P$(v)_$(a) = $(subst $(SPACE),.,$(wordlist 1,2,$(subst ., ,$(call $(v)_$(a)))))) \ - )) -endif - -ifneq (,$(filter $(DEB_HOST_ARCH), $(gcj49_archs))) - $(foreach v, V_GCJ V_GIJ, \ - $(eval P$(v) = $(subst $(SPACE),.,$(wordlist 1,2,$(subst ., ,$(call $(v)))))) \ - ) - $(foreach a, $(gcj49_archs), \ - $(foreach v, V_GCJ V_GIJ, \ + $(foreach v, V_CPP V_GCC V_GPP V_GOBJC V_GOBJCXX V_GFORT V_GGO V_GDC V_GM2 V_BRIG V_OFFL, \ $(eval P$(v)_$(a) = $(subst $(SPACE),.,$(wordlist 1,2,$(subst ., ,$(call $(v)_$(a)))))) \ )) endif @@ -542,9 +573,10 @@ README: -DV_GFORT=$(V_GFORT) -DPV_GFORT=$(PV_GFORT) \ -DV_GGO=$(V_GGO) -DPV_GGO=$(PV_GGO) \ -DV_GNAT=$(V_GNAT) -DPV_GNAT=$(PV_GNAT) \ - -DV_GCJ=$(V_GCJ) -DPV_GCJ=$(PV_GCJ) \ - -DV_GIJ=$(V_GIJ) -DPV_GIJ=$(PV_GIJ) \ -DV_GDC=$(V_GDC) -DPV_GDC=$(PV_GDC) \ + -DV_GM2=$(V_GM2) -DPV_GM2=$(PV_GM2) \ + -DV_BRIG=$(V_BRIG) -DPV_BRIG=$(PV_BRIG) \ + -DV_OFFL=$(V_OFFL) -DPV_OFFL=$(PV_OFFL) \ $(if $(filter yes,$(with_gfdl_docs)), -DGFDL) \ debian/README.Debian.m4 > debian/README.Debian.tmp2 uniq debian/README.Debian.tmp2 > debian/README.Debian.tmp @@ -562,13 +594,13 @@ substvars-native: echo 'version:gpp=$(EPOCH):$(CV_GPP)'; \ echo 'version:gobjc=$(EPOCH):$(CV_GOBJC)'; \ echo 'version:gobjcxx=$(EPOCH):$(CV_GOBJCXX)'; \ - echo 'version:gij=$(EPOCH):$(CV_GIJ)'; \ - echo 'version:gcj=$(EPOCH):$(CV_GCJ)'; \ echo 'version:gfort=$(EPOCH):$(CV_GFORT)'; \ echo 'version:ggo=$(EPOCH):$(CV_GGO)'; \ echo 'version:gnat=$(EPOCH):$(CV_GNAT)'; \ echo 'version:gdc=$(CV_GDC)'; \ - echo 'version:libgcjcommon=$(CV_LIBGCJCOMMON)'; \ + echo 'version:gm2=$(CV_GM2)'; \ + echo 'version:brig=$(CV_BRIG)'; \ + echo 'version:offl=$(CV_OFFL)'; \ echo 'pv:cpp=$(PV_CPP)'; \ echo 'pv:gcc=$(PV_GCC)'; \ echo 'pv:gpp=$(PV_GPP)'; \ @@ -577,9 +609,10 @@ substvars-native: echo 'pv:gfort=$(PV_GFORT)'; \ echo 'pv:ggo=$(PV_GGO)'; \ echo 'pv:gnat=$(PV_GNAT)'; \ - echo 'pv:gcj=$(PV_GCJ)'; \ - echo 'pv:gij=$(PV_GIJ)'; \ echo 'pv:gdc=$(PV_GDC)'; \ + echo 'pv:gm2=$(PV_GM2)'; \ + echo 'pv:brig=$(PV_BRIG)'; \ + echo 'pv:offl=$(PV_OFFL)'; \ echo 'reqv:cpp=$(REQV_CPP)'; \ echo 'reqv:gcc=$(REQV_GCC)'; \ echo 'reqv:gpp=$(REQV_GPP)'; \ @@ -588,12 +621,12 @@ substvars-native: echo 'reqv:gfort=$(REQV_GFORT)'; \ echo 'reqv:ggo=$(REQV_GGO)'; \ echo 'reqv:gnat=$(REQV_GNAT)'; \ - echo 'reqv:gcj=$(REQV_GCJ)'; \ - echo 'reqv:gij=$(REQV_GIJ)'; \ echo 'reqv:gdc=$(REQV_GDC)'; \ - echo 'pkg:libgcj=$(LIBGCJ)'; \ - echo 'pkg:libgcjawt=$(LIBGCJ)-awt'; \ - echo 'version:libgcjbc=$(CV_LIBGCJBC)'; \ + echo 'reqv:gm2=$(REQV_GM2)'; \ + echo 'reqv:brig=$(REQV_BRIG)'; \ + echo 'reqv:offl=$(REQV_OFFL)'; \ + echo 'gcc:triplet=gcc-$(subst _,-,$(DEB_HOST_GNU_TYPE)) (= $(EPOCH):$(CV_GCC))'; \ + echo 'gpp:triplet=g++-$(subst _,-,$(DEB_HOST_GNU_TYPE)) (= $(EPOCH):$(CV_GPP))'; \ ) > debian/substvars.native ifeq ($(with_multilib),yes) ( \ @@ -606,13 +639,6 @@ ifeq ($(with_multilib),yes) echo 'pkgmulti:gdc=gdc-multilib'; \ ) >> debian/substvars.native endif - ( \ - echo 'dep:jrehl=gcj-$${pv:gij}-jre-headless $${reqv:gij}'; \ - echo 'dep:jre=gcj-$${pv:gij}-jre $${reqv:gij}'; \ - echo 'dep:jdk=gcj-$${pv:gcj}-jdk $${reqv:gcj}'; \ - echo 'pkg:gjdoc=gjdoc'; \ - echo 'ver:gcjconflict=4:4.4.0-2'; \ - ) >> debian/substvars.native ifneq (,$(MOD_VER)) echo 'fortran:mod-version=$(MOD_VER)' >> debian/substvars.native endif @@ -627,10 +653,10 @@ substvars.%: echo 'version:gpp=$(EPOCH):$(CV_GPP_$(CROSS_ARCH))'; \ echo 'version:gobjc=$(EPOCH):$(CV_GOBJC_$(CROSS_ARCH))'; \ echo 'version:gobjcxx=$(EPOCH):$(CV_GOBJCXX_$(CROSS_ARCH))'; \ - echo 'version:gcj=$(EPOCH):$(CV_GCJ_$(CROSS_ARCH))'; \ echo 'version:gfort=$(EPOCH):$(CV_GFORT_$(CROSS_ARCH))'; \ echo 'version:ggo=$(EPOCH):$(CV_GGO_$(CROSS_ARCH))'; \ echo 'version:gdc=$(CV_GDC_$(CROSS_ARCH))'; \ + echo 'version:gm2=$(CV_GM2_$(CROSS_ARCH))'; \ echo 'pv:cpp=$(PV_CPP_$(CROSS_ARCH))'; \ echo 'pv:gcc=$(PV_GCC_$(CROSS_ARCH))'; \ echo 'pv:gpp=$(PV_GPP_$(CROSS_ARCH))'; \ @@ -638,8 +664,8 @@ substvars.%: echo 'pv:gobjcxx=$(PV_GOBJCXX_$(CROSS_ARCH))'; \ echo 'pv:gfort=$(PV_GFORT_$(CROSS_ARCH))'; \ echo 'pv:ggo=$(PV_GGO_$(CROSS_ARCH))'; \ - echo 'pv:gcj=$(PV_GCJ_$(CROSS_ARCH))'; \ echo 'pv:gdc=$(PV_GDC_$(CROSS_ARCH))'; \ + echo 'pv:gm2=$(PV_GM2_$(CROSS_ARCH))'; \ echo 'reqv:cpp=$(REQV_CPP_$(CROSS_ARCH))'; \ echo 'reqv:gcc=$(REQV_GCC_$(CROSS_ARCH))'; \ echo 'reqv:gpp=$(REQV_GPP_$(CROSS_ARCH))'; \ @@ -647,8 +673,8 @@ substvars.%: echo 'reqv:gobjcxx=$(REQV_GOBJCXX_$(CROSS_ARCH))'; \ echo 'reqv:gfort=$(REQV_GFORT_$(CROSS_ARCH))'; \ echo 'reqv:ggo=$(REQV_GGO_$(CROSS_ARCH))'; \ - echo 'reqv:gcj=$(REQV_GCJ_$(CROSS_ARCH))'; \ echo 'reqv:gdc=$(REQV_GDC_$(CROSS_ARCH))'; \ + echo 'reqv:gm2=$(REQV_GM2_$(CROSS_ARCH))'; \ ) > debian/substvars.$* $(if $(filter $(CROSS_ARCH),$(multilib_archs)), \ ( \ @@ -659,11 +685,9 @@ substvars.%: echo 'pkgmulti:gfort=gfortran-multilib'; \ echo 'pkgmulti:ggo=gccgo-multilib'; \ echo 'pkgmulti:gdc=gdc-multilib'; \ + echo 'pkgmulti:gm2=gm2-multilib'; \ ) >> debian/substvars.$*; \ ) - ( \ - echo 'dep:gcj=gcj-$${pv:gcj} $${reqv:gcj}'; \ - ) >> debian/substvars.$* ifneq (,$(MOD_VER)) echo 'fortran:mod-version=$(MOD_VER)' >> debian/substvars.$* endif @@ -694,15 +718,15 @@ ifeq ($(SOURCE),gcc-defaults) endif ifeq ($(with_cross),yes) : # FIXME: filter-out some gdc and gccgo multilib configs - $(foreach a,$(CROSS_ARCHS), \ + $(foreach a, $(if $(filter gcc-defaults, $(SOURCE)),amd64) $(CROSS_ARCHS), \ sed \ -e "s/CROSS_ARCH/$(a)/g" \ - -e 's/CROSS_GNU_TYPE/$(call _gnu_type,$(a))/g' \ + -e 's/CROSS_GNU_TYPE/$(subst _,-,$(call _gnu_type,$(a)))/g' \ -e 's/@host_archs@/$(HOST_ARCHS_$(a))/g' \ debian/control.cross.in \ $(if $(filter $(a),$(multilib_archs)), debian/control.cross-ml.in) \ $(if $(filter $(vendor),Ubuntu), debian/control.pkg-config.in) \ - | awk '/^Package: gccgo-(hppa|sh)/ {skip=1} skip == 0 {print } /^$$/ && skip == 1 {skip=0}' \ + | awk '/^Package: gccgo-(hppa|m68k|sh)/ {skip=1} skip == 0 {print } /^$$/ && skip == 1 {skip=0}' \ >> debian/control; \ ) endif @@ -711,7 +735,7 @@ ifeq ($(SOURCE)-$(with_gfdl_docs),gcc-defaults-yes) endif build-arch: build -build-indep: cacerts-stamp build-stamp +build-indep: build-stamp build: README build-stamp build-stamp: dh_testdir @@ -724,10 +748,7 @@ clean: rm -rf build rm -f debian/control.tmp* rm -f debian/substvars.* - rm -f debian/lib*gcj-bc.shlibs rm -f debian/gcc.postinst debian/g++.postinst debian/gfortran.postinst - rm -f debian/generate-cacerts.pl - rm -f debian/dh_nativejava.1 dh_clean pre-install: build substvars @@ -782,6 +803,7 @@ ifeq ($(with_native),yes) /usr/bin/gcc-$(PV_GCC) /usr/bin/$(DEB_HOST_GNU_TYPE)-gcc \ /usr/bin/gcov-$(PV_GCC) /usr/bin/gcov \ /usr/bin/gcov-$(PV_GCC) /usr/bin/$(DEB_HOST_GNU_TYPE)-gcov \ + /usr/lib/gcc/$(DEB_HOST_GNU_TYPE)/$(PV_GCC)/liblto_plugin.so /usr/lib/bfd-plugins/liblto_plugin.so \ /usr/share/doc/gcc-$(PV_GCC)/README.Bugs /usr/share/doc/cpp/README.Bugs \ $(if $(filter $(DEB_HOST_ARCH), $(gcc49_archs)),, \ /usr/bin/gcov-dump-$(PV_GCC) /usr/bin/gcov-dump \ @@ -865,6 +887,19 @@ ifneq (,$(filter gdc, $(packages))) endif endif +ifneq (,$(filter gm2, $(packages))) + : # gm2 + dh_installdirs -pgm2 + dh_installdocs -pgm2 debian/README.Debian + + dh_link -pgm2 \ + /usr/bin/gm2-$(PV_GDC) /usr/bin/gm2 \ + /usr/bin/gm2-$(PV_GDC) /usr/bin/$(DEB_HOST_GNU_TYPE)-gm2 + dh_link -pgm2 \ + /usr/share/man/man1/gm2-$(PV_GDC).1.gz /usr/share/man/man1/gm2.1.gz \ + /usr/share/man/man1/gm2-$(PV_GDC).1.gz /usr/share/man/man1/$(DEB_HOST_GNU_TYPE)-gm2.1.gz +endif + ifneq (,$(filter gobjc, $(packages))) : # gobjc dh_installdirs -pgobjc @@ -941,161 +976,32 @@ ifneq (,$(filter gccgo, $(packages))) endif endif -ifneq (,$(filter gcj-jdk, $(packages))) - : # gcj-jre-headless - dh_installdirs -pgcj-jre-headless usr/bin /usr/share/man/man1 usr/share/doc - dh_link -pgcj-jre-headless \ - /usr/share/doc/libgcj-common /usr/share/doc/gcj-jre-headless \ - /usr/bin/gij-$(PV_GIJ) /usr/bin/gij \ - /usr/bin/gcj-dbtool-$(PV_GIJ) /usr/bin/gcj-dbtool \ - /usr/bin/gkeytool-$(PV_GIJ) /usr/bin/gkeytool \ - /usr/bin/gorbd-$(PV_GIJ) /usr/bin/gorbd \ - /usr/bin/grmid-$(PV_GIJ) /usr/bin/grmid \ - /usr/bin/grmiregistry-$(PV_GIJ) /usr/bin/grmiregistry \ - - : # gcj-jdk - dh_installdirs -pgcj-jdk usr/bin /usr/share/man/man1 usr/share/doc - dh_link -pgcj-jdk \ - /usr/share/doc/cpp /usr/share/doc/gcj-jdk \ - /usr/bin/gjavah-$(PV_GCJ) /usr/bin/gjavah \ - /usr/bin/gcj-$(PV_GCJ) /usr/bin/gcj \ - /usr/bin/gcj-$(PV_GCJ) /usr/bin/$(DEB_HOST_GNU_TYPE)-gcj \ - /usr/bin/gcjh-$(PV_GCJ) /usr/bin/gcjh \ - /usr/bin/gjar-$(PV_GCJ) /usr/bin/gjar \ - /usr/bin/gjarsigner-$(PV_GCJ) /usr/bin/gjarsigner \ - /usr/bin/grmic-$(PV_GCJ) /usr/bin/grmic \ - /usr/bin/jv-convert-$(PV_GCJ) /usr/bin/jv-convert \ - /usr/bin/jcf-dump-$(PV_GCJ) /usr/bin/jcf-dump \ - /usr/bin/gcj-wrapper-$(PV_GCJ) /usr/bin/gcj-wrapper \ - /usr/bin/gtnameserv-$(PV_GCJ) /usr/bin/gtnameserv \ - /usr/bin/gappletviewer-$(PV_GCJ) /usr/bin/gappletviewer \ - /usr/bin/gserialver-$(PV_GIJ) /usr/bin/gserialver \ - /usr/share/java/libgcj-$(PV_GCJ).jar /usr/share/java/libgcj.jar -ifeq ($(with_multiarch_lib),yes) - dh_link -pgcj-jdk \ - /usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/$(LIBGCJ_PC) \ - /usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/libgcj.pc -else - dh_link -pgcj-jdk \ - /usr/lib/pkgconfig/$(LIBGCJ_PC) /usr/lib/pkgconfig/libgcj.pc +ifneq (,$(filter gccbrig, $(packages))) + : # gccbrig + dh_installdirs -pgccbrig + dh_link -pgccbrig \ + /usr/share/doc/cpp /usr/share/doc/gccbrig \ + /usr/bin/gccbrig-$(PV_BRIG) /usr/bin/gccbrig \ + /usr/bin/gccbrig-$(PV_BRIG) /usr/bin/$(DEB_HOST_GNU_TYPE)-gccbrig \ + $(if $(filter yes, $(with_gfdl_docs)), \ + /usr/share/man/man1/gccbrig-$(PV_BRIG).1.gz /usr/share/man/man1/gccbrig.1.gz \ + /usr/share/man/man1/gccbrig-$(PV_BRIG).1.gz /usr/share/man/man1/$(DEB_HOST_GNU_TYPE)-gccbrig.1.gz \ + ) endif - dh_link -pgcj-jre-headless \ - /usr/share/man/man1/gkeytool-$(PV_GIJ).1.gz /usr/share/man/man1/gkeytool.1.gz \ - /usr/share/man/man1/gorbd-$(PV_GIJ).1.gz /usr/share/man/man1/gorbd.1.gz \ - /usr/share/man/man1/grmid-$(PV_GIJ).1.gz /usr/share/man/man1/grmid.1.gz \ - /usr/share/man/man1/grmiregistry-$(PV_GIJ).1.gz /usr/share/man/man1/grmiregistry.1.gz - - dh_link -pgcj-jdk \ - /usr/share/man/man1/gjar-$(PV_GCJ).1.gz /usr/share/man/man1/gjar.1.gz \ - /usr/share/man/man1/gjarsigner-$(PV_GCJ).1.gz /usr/share/man/man1/gjarsigner.1.gz \ - /usr/share/man/man1/gjavah-$(PV_GCJ).1.gz /usr/share/man/man1/gjavah.1.gz \ - /usr/share/man/man1/gnative2ascii-$(PV_GIJ).1.gz /usr/share/man/man1/gnative2ascii.1.gz \ - /usr/share/man/man1/gtnameserv-$(PV_GCJ).1.gz /usr/share/man/man1/gtnameserv.1.gz \ - /usr/share/man/man1/gappletviewer-$(PV_GCJ).1.gz /usr/share/man/man1/gappletviewer.1.gz \ - /usr/share/man/man1/gserialver-$(PV_GIJ).1.gz /usr/share/man/man1/gserialver.1.gz - - ifeq ($(with_gfdl_docs),yes) - dh_link -pgcj-jre-headless \ - /usr/share/man/man1/gij-$(PV_GIJ).1.gz /usr/share/man/man1/gij.1.gz \ - /usr/share/man/man1/gcj-dbtool-$(PV_GIJ).1.gz /usr/share/man/man1/gcj-dbtool.1.gz - dh_link -pgcj-jdk \ - /usr/share/man/man1/gcj-$(PV_GCJ).1.gz /usr/share/man/man1/gcj.1.gz \ - /usr/share/man/man1/gcj-$(PV_GCJ).1.gz /usr/share/man/man1/$(DEB_HOST_GNU_TYPE)-gcj.1.gz \ - /usr/share/man/man1/gcjh-$(PV_GCJ).1.gz /usr/share/man/man1/gcjh.1.gz \ - /usr/share/man/man1/grmic-$(PV_GCJ).1.gz /usr/share/man/man1/grmic.1.gz \ - /usr/share/man/man1/jv-convert-$(PV_GCJ).1.gz /usr/share/man/man1/jv-convert.1.gz \ - /usr/share/man/man1/jcf-dump-$(PV_GCJ).1.gz /usr/share/man/man1/jcf-dump.1.gz \ - /usr/share/man/man1/gcj-wrapper-$(PV_GCJ).1.gz /usr/share/man/man1/gcj-wrapper.1.gz \ - /usr/share/info/gcj-$(PV_GCJ).info.gz /usr/share/info/gcj.info.gz - endif - - dh_link -pgcj-jdk \ - /usr/bin/gjdoc-$(PV_GCJ) /usr/bin/gjdoc \ - /usr/share/man/man1/gjdoc-$(PV_GCJ).1.gz /usr/share/man/man1/gjdoc.1.gz - cp -p debian/dh_javadoc debian/gcj-jdk/usr/bin/ - pod2man -c Debhelper -r $(PV_GCJ) \ - debian/dh_javadoc debian/gcj-jdk/usr/share/man/man1/dh_javadoc.1 - - : # libgcj-bc - ifeq ($(with_multiarch_lib),yes) - dh_installdirs -plibgcj-bc \ - usr/lib/$(DEB_HOST_MULTIARCH) usr/share/doc usr/share/lintian/overrides - ln -s libgcj.so.$(LIBGCJ_SONAME) \ - debian/libgcj-bc/usr/lib/$(DEB_HOST_MULTIARCH)/libgcj_bc.so.1 - else - dh_installdirs -plibgcj-bc \ - usr/lib usr/share/doc usr/share/lintian/overrides - ln -s libgcj.so.$(LIBGCJ_SONAME) \ - debian/libgcj-bc/usr/lib/libgcj_bc.so.1 - endif - dh_link -plibgcj-bc \ - /usr/share/doc/libgcj-common /usr/share/doc/libgcj-bc - - mkdir -p debian/libgcj-bc/usr/share/lintian/overrides - cp -p debian/libgcj-bc.overrides \ - debian/libgcj-bc/usr/share/lintian/overrides/libgcj-bc - - echo "libgcj_bc 1 libgcj-bc $(REQV_LIBGCJ_BC)" \ - > debian/libgcj-bc.shlibs - - : # gcj-jre-headless - dh_installdirs -pgcj-jre-headless \ - usr/share/doc usr/lib/jvm - ln -sf java-1.5.0-gcj-$(PV_GCJ)-$(DEB_HOST_ARCH) \ - debian/gcj-jre-headless/usr/lib/jvm/java-1.5.0-gcj - ln -sf java-gcj-$(PV_GCJ) \ - debian/gcj-jre-headless/usr/lib/jvm/java-gcj +ifneq (,$(filter gcc-offload-nvptx, $(packages))) + : # gcc-offload-nvptx + dh_installdirs -pgcc-offload-nvptx + dh_link -pgcc-offload-nvptx \ + /usr/share/doc/cpp /usr/share/doc/gcc-offload-nvptx \ + /usr/bin/$(DEB_HOST_GNU_TYPE)-accel-nvptx-none-gcc-$(PV_OFFL) \ + /usr/bin/$(DEB_HOST_GNU_TYPE)-accel-nvptx-none-gcc \ + $(if $(filter yes, $(with_gfdl_docs)), \ + /usr/share/man/man1/$(DEB_HOST_GNU_TYPE)-accel-nvptx-none-$(PV_OFFL).1.gz \ + /usr/share/man/man1/$(DEB_HOST_GNU_TYPE)-accel-nvptx-none.1.gz \ + ) endif - : # libgcj-common - dh_installdirs -plibgcj-common \ - /usr/bin \ - /usr/sbin \ - /etc/java/security/security.d \ - /usr/lib/security \ - /var/lib/security \ - /usr/share/gcj - install -m644 classpath.security debian/libgcj-common/etc/java/security/ - dh_link -plibgcj-common \ - /var/lib/security/classpath.security /usr/lib/security/classpath.security - install -m755 debian/rebuild-gcj-db \ - debian/libgcj-common/usr/bin/ - install -m755 debian/rebuild-security-providers \ - debian/libgcj-common/usr/sbin/ - ( \ - echo "# architectures with gcj support"; \ - echo "gcj_archs = $(gcj_archs)"; \ - echo "# architectures which should provide gcj native support"; \ - echo "gcj_native_archs = $(gcj_native_archs)" \ - ) > debian/libgcj-common/usr/share/gcj/debian_defaults - - : # GNU security provider - for i in \ - 1000-gnu.java.security.provider.Gnu \ - 1001-gnu.javax.crypto.jce.GnuCrypto \ - 1002-gnu.javax.crypto.jce.GnuSasl \ - 1003-gnu.javax.net.ssl.provider.Jessie \ - 1004-gnu.javax.security.auth.callback.GnuCallbacks; \ - do \ - touch debian/libgcj-common/etc/java/security/security.d/$$i; \ - done - - : # aotcompile & dh_nativejava - - mkdir -p debian/libgcj-common/usr/bin - install -m755 debian/aot-compile debian/libgcj-common/usr/bin/ - mkdir -p debian/libgcj-common/usr/lib/gcc - install -m644 debian/*.py debian/libgcj-common/usr/lib/gcc - - install -m755 debian/dh_nativejava debian/libgcj-common/usr/bin/ - mkdir -p debian/libgcj-common/usr/share/debhelper/autoscripts - install -m 644 debian/p*-rebuild-gcj-db \ - debian/libgcj-common/usr/share/debhelper/autoscripts/ - pod2man -c Debhelper debian/dh_nativejava debian/dh_nativejava.1 - mkdir -p debian/libgcj-common/usr/share/man/man1 - install -m644 debian/dh_nativejava.1 debian/libgcj-common/usr/share/man/man1/ - ifneq (,$(filter gcc-hppa64-linux-gnu, $(packages))) : # gcc-hppa64-linux-gnu dh_installdirs -pgcc-hppa64-linux-gnu @@ -1124,32 +1030,32 @@ endif endif # with_native install.%: pre-install - for p in $(filter %-$(CROSS_GNU_TYPE), $(all_packages)); do \ + for p in $(filter %-$(CROSS_PKG_GNU_TYPE), $(all_packages)); do \ cp -l debian/substvars.$(CROSS_ARCH) debian/$$p.substvars; \ done - : # cpp-$(CROSS_GNU_TYPE) - dh_installdirs -pcpp-$(CROSS_GNU_TYPE) - dh_link -pcpp-$(CROSS_GNU_TYPE) \ + : # cpp-$(CROSS_PKG_GNU_TYPE) + dh_installdirs -pcpp-$(CROSS_PKG_GNU_TYPE) + dh_link -pcpp-$(CROSS_PKG_GNU_TYPE) \ /usr/bin/$(CROSS_GNU_TYPE)-cpp-$(PV_CPP_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-cpp $(if $(filter yes, $(with_gfdl_docs)), \ - dh_link -pcpp-$(CROSS_GNU_TYPE) \ + dh_link -pcpp-$(CROSS_PKG_GNU_TYPE) \ /usr/share/man/man1/$(CROSS_GNU_TYPE)-cpp-$(PV_CPP_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-cpp.1.gz \ ) - : # gcc-$(CROSS_GNU_TYPE) - dh_installdirs -pgcc-$(CROSS_GNU_TYPE) - dh_link -pgcc-$(CROSS_GNU_TYPE) \ - /usr/share/doc/cpp-$(CROSS_GNU_TYPE) /usr/share/doc/gcc-$(CROSS_GNU_TYPE) \ + : # gcc-$(CROSS_PKG_GNU_TYPE) + dh_installdirs -pgcc-$(CROSS_PKG_GNU_TYPE) + dh_link -pgcc-$(CROSS_PKG_GNU_TYPE) \ + /usr/share/doc/cpp-$(CROSS_PKG_GNU_TYPE) /usr/share/doc/gcc-$(CROSS_PKG_GNU_TYPE) \ /usr/bin/$(CROSS_GNU_TYPE)-gcc-$(PV_GCC_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gcc \ /usr/bin/$(CROSS_GNU_TYPE)-gcov-$(PV_GCC_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gcov \ - /usr/share/doc/gcc-$(PV_GCC_$(CROSS_ARCH))-base/README.Bugs /usr/share/doc/cpp-$(CROSS_GNU_TYPE)/README.Bugs \ + /usr/share/doc/gcc-$(PV_GCC)-$(CROSS_PKG_GNU_TYPE)-base/README.Bugs /usr/share/doc/cpp-$(CROSS_PKG_GNU_TYPE)/README.Bugs \ $(if $(filter $(CROSS_ARCH), $(gcc49_archs)),, \ /usr/bin/$(CROSS_GNU_TYPE)-gcov-dump-$(PV_GCC_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gcov-dump \ /usr/bin/$(CROSS_GNU_TYPE)-gcov-tool-$(PV_GCC_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gcov-tool \ ) - dh_link -pgcc-$(CROSS_GNU_TYPE) \ + dh_link -pgcc-$(CROSS_PKG_GNU_TYPE) \ /usr/bin/$(CROSS_GNU_TYPE)-gcc-ar-$(PV_GCC_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gcc-ar \ /usr/bin/$(CROSS_GNU_TYPE)-gcc-nm-$(PV_GCC_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gcc-nm \ /usr/bin/$(CROSS_GNU_TYPE)-gcc-ranlib-$(PV_GCC_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gcc-ranlib \ @@ -1166,7 +1072,7 @@ install.%: pre-install : # debian/gcc.postinst.in > debian/gcc.postinst $(if $(filter yes, $(with_gfdl_docs)), \ - dh_link -pgcc-$(CROSS_GNU_TYPE) \ + dh_link -pgcc-$(CROSS_PKG_GNU_TYPE) \ /usr/share/man/man1/$(CROSS_GNU_TYPE)-gcc-$(PV_GCC_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gcc.1.gz \ /usr/share/man/man1/$(CROSS_GNU_TYPE)-gcov-$(PV_GCC_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gcov.1.gz \ $(if $(filter $(CROSS_ARCH), $(gcc49_archs)),, \ @@ -1176,35 +1082,45 @@ install.%: pre-install /usr/share/man/man1/$(CROSS_GNU_TYPE)-gcov-dump.1.gz) \ ) - : # gdc-$(CROSS_GNU_TYPE) - $(if $(filter gdc-$(CROSS_GNU_TYPE), $(packages)), \ - dh_installdirs -pgdc-$(CROSS_GNU_TYPE); \ - dh_installdocs -pgdc-$(CROSS_GNU_TYPE) \ + : # gdc-$(CROSS_PKG_GNU_TYPE) + $(if $(filter gdc-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_installdirs -pgdc-$(CROSS_PKG_GNU_TYPE); \ + dh_installdocs -pgdc-$(CROSS_PKG_GNU_TYPE) \ debian/README.Debian; \ - dh_link -pgdc-$(CROSS_GNU_TYPE) \ + dh_link -pgdc-$(CROSS_PKG_GNU_TYPE) \ /usr/bin/$(CROSS_GNU_TYPE)-gdc-$(PV_GDC_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gdc \ /usr/share/man/man1/$(CROSS_GNU_TYPE)-gdc-$(PV_GDC_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gdc.1.gz; \ ) - : # gobjc-$(CROSS_GNU_TYPE) - $(if $(filter gobjc-$(CROSS_GNU_TYPE), $(packages)), \ - dh_installdirs -pgobjc-$(CROSS_GNU_TYPE); \ - dh_link -pgobjc-$(CROSS_GNU_TYPE) \ - /usr/share/doc/cpp-$(CROSS_GNU_TYPE) /usr/share/doc/gobjc-$(CROSS_GNU_TYPE); \ + : # gm2-$(CROSS_PKG_GNU_TYPE) + $(if $(filter gm2-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_installdirs -pgm2-$(CROSS_PKG_GNU_TYPE); \ + dh_installdocs -pgm2-$(CROSS_PKG_GNU_TYPE) \ + debian/README.Debian; \ + dh_link -pgm2-$(CROSS_PKG_GNU_TYPE) \ + /usr/bin/$(CROSS_GNU_TYPE)-gm2-$(PV_GM2_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gm2 \ + /usr/share/man/man1/$(CROSS_GNU_TYPE)-gm2-$(PV_GM2_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gm2.1.gz; \ ) - : # gobjc++-$(CROSS_GNU_TYPE) - $(if $(filter gobjc++-$(CROSS_GNU_TYPE), $(packages)), \ - dh_installdirs -pgobjc++-$(CROSS_GNU_TYPE); \ - dh_link -pgobjc++-$(CROSS_GNU_TYPE) \ - /usr/share/doc/cpp-$(CROSS_GNU_TYPE) /usr/share/doc/gobjc++-$(CROSS_GNU_TYPE); \ + : # gobjc-$(CROSS_PKG_GNU_TYPE) + $(if $(filter gobjc-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_installdirs -pgobjc-$(CROSS_PKG_GNU_TYPE); \ + dh_link -pgobjc-$(CROSS_PKG_GNU_TYPE) \ + /usr/share/doc/cpp-$(CROSS_PKG_GNU_TYPE) /usr/share/doc/gobjc-$(CROSS_PKG_GNU_TYPE); \ ) - : # g++-$(CROSS_GNU_TYPE) - $(if $(filter g++-$(CROSS_GNU_TYPE), $(packages)), \ - dh_installdirs -pg++-$(CROSS_GNU_TYPE); \ - dh_link -pg++-$(CROSS_GNU_TYPE) \ - /usr/share/doc/cpp-$(CROSS_GNU_TYPE) /usr/share/doc/g++-$(CROSS_GNU_TYPE) \ + : # gobjc++-$(CROSS_PKG_GNU_TYPE) + $(if $(filter gobjc++-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_installdirs -pgobjc++-$(CROSS_PKG_GNU_TYPE); \ + dh_link -pgobjc++-$(CROSS_PKG_GNU_TYPE) \ + /usr/share/doc/cpp-$(CROSS_PKG_GNU_TYPE) /usr/share/doc/gobjc++-$(CROSS_PKG_GNU_TYPE); \ + ) + + : # g++-$(CROSS_PKG_GNU_TYPE) + $(if $(filter g++-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_installdirs -pg++-$(CROSS_PKG_GNU_TYPE); \ + dh_link -pg++-$(CROSS_PKG_GNU_TYPE) \ + /usr/share/doc/cpp-$(CROSS_PKG_GNU_TYPE) /usr/share/doc/g++-$(CROSS_PKG_GNU_TYPE) \ /usr/bin/$(CROSS_GNU_TYPE)-g++-$(PV_GPP_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-g++ \ $(if $(filter yes, $(with_gfdl_docs)), \ /usr/share/man/man1/$(CROSS_GNU_TYPE)-g++-$(PV_GPP_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-g++.1.gz \ @@ -1213,11 +1129,11 @@ install.%: pre-install : # debian/g++.postinst.in > debian/g++.postinst; \ ) - : # gfortran-$(CROSS_GNU_TYPE) - $(if $(filter gfortran-$(CROSS_GNU_TYPE), $(packages)), \ - dh_installdirs -pgfortran-$(CROSS_GNU_TYPE); \ - dh_link -pgfortran-$(CROSS_GNU_TYPE) \ - /usr/share/doc/cpp-$(CROSS_GNU_TYPE) /usr/share/doc/gfortran-$(CROSS_GNU_TYPE) \ + : # gfortran-$(CROSS_PKG_GNU_TYPE) + $(if $(filter gfortran-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_installdirs -pgfortran-$(CROSS_PKG_GNU_TYPE); \ + dh_link -pgfortran-$(CROSS_PKG_GNU_TYPE) \ + /usr/share/doc/cpp-$(CROSS_PKG_GNU_TYPE) /usr/share/doc/gfortran-$(CROSS_PKG_GNU_TYPE) \ /usr/bin/$(CROSS_GNU_TYPE)-gfortran-$(PV_GFORT_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gfortran \ $(if $(filter yes, $(with_gfdl_docs)), \ /usr/share/man/man1/$(CROSS_GNU_TYPE)-gfortran-$(PV_GFORT_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gfortran.1.gz \ @@ -1226,33 +1142,22 @@ install.%: pre-install : # debian/gfortran.postinst.in > debian/gfortran.postinst; \ ) - : # gccgo-$(CROSS_GNU_TYPE) - $(if $(filter gccgo-$(CROSS_GNU_TYPE), $(packages)), \ - dh_installdirs -pgccgo-$(CROSS_GNU_TYPE); \ - dh_link -pgccgo-$(CROSS_GNU_TYPE) \ - /usr/share/doc/cpp-$(CROSS_GNU_TYPE) /usr/share/doc/gccgo-$(CROSS_GNU_TYPE) \ + : # gccgo-$(CROSS_PKG_GNU_TYPE) + $(if $(filter gccgo-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_installdirs -pgccgo-$(CROSS_PKG_GNU_TYPE); \ + dh_link -pgccgo-$(CROSS_PKG_GNU_TYPE) \ + /usr/share/doc/cpp-$(CROSS_PKG_GNU_TYPE) /usr/share/doc/gccgo-$(CROSS_PKG_GNU_TYPE) \ /usr/bin/$(CROSS_GNU_TYPE)-gccgo-$(PV_GGO_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gccgo \ $(if $(filter yes, $(with_gfdl_docs)), \ /usr/share/man/man1/$(CROSS_GNU_TYPE)-gccgo-$(PV_GGO_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gccgo.1.gz \ ); \ ) - : # gcj-$(CROSS_GNU_TYPE) - $(if $(filter gcj-$(CROSS_GNU_TYPE), $(packages)), \ - dh_installdirs -pgcj-$(CROSS_GNU_TYPE); \ - dh_link -pgcj-$(CROSS_GNU_TYPE) \ - /usr/share/doc/cpp-$(CROSS_GNU_TYPE) /usr/share/doc/gcj-$(CROSS_GNU_TYPE) \ - /usr/bin/$(CROSS_GNU_TYPE)-gcj-$(PV_GCJ_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gcj \ - $(if $(filter yes, $(with_gfdl_docs)), \ - /usr/share/man/man1/$(CROSS_GNU_TYPE)-gcj-$(PV_GCJ_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gcj.1.gz \ - ); \ - ) - - : # gnat-$(CROSS_GNU_TYPE) - $(if $(filter gnat-$(CROSS_GNU_TYPE), $(packages)), \ - dh_installdirs -pgnat-$(CROSS_GNU_TYPE); \ - dh_link -pgnat-$(CROSS_GNU_TYPE) \ - /usr/share/doc/cpp-$(CROSS_GNU_TYPE) /usr/share/doc/gnat-$(CROSS_GNU_TYPE) \ + : # gnat-$(CROSS_PKG_GNU_TYPE) + $(if $(filter gnat-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_installdirs -pgnat-$(CROSS_PKG_GNU_TYPE); \ + dh_link -pgnat-$(CROSS_PKG_GNU_TYPE) \ + /usr/share/doc/cpp-$(CROSS_PKG_GNU_TYPE) /usr/share/doc/gnat-$(CROSS_PKG_GNU_TYPE) \ /usr/bin/$(CROSS_GNU_TYPE)-gnat-$(PV_GPP_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gnat \ /usr/bin/$(CROSS_GNU_TYPE)-gnatbind-$(PV_GPP_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gnatbind \ /usr/bin/$(CROSS_GNU_TYPE)-gnatchop-$(PV_GPP_$(CROSS_ARCH)) /usr/bin/$(CROSS_GNU_TYPE)-gnatchop \ @@ -1277,43 +1182,23 @@ install.%: pre-install /usr/share/man/man1/$(CROSS_GNU_TYPE)-gnatprep-$(PV_GPP_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gnatprep.1.gz \ /usr/share/man/man1/$(CROSS_GNU_TYPE)-gnatxref-$(PV_GPP_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gnatxref.1.gz \ /usr/share/man/man1/$(CROSS_GNU_TYPE)-gnathtml-$(PV_GPP_$(CROSS_ARCH)).1.gz /usr/share/man/man1/$(CROSS_GNU_TYPE)-gnathtml.1.gz; \ - dh_installdirs -pgnat-sjlj-$(CROSS_GNU_TYPE); \ - dh_link -pgnat-sjlj-$(CROSS_GNU_TYPE) \ + dh_installdirs -pgnat-sjlj-$(CROSS_PKG_GNU_TYPE); \ + dh_link -pgnat-sjlj-$(CROSS_PKG_GNU_TYPE) \ /usr/share/doc/cpp-$(CROSS_GNU_TYPE) /usr/share/doc/gnat-sjlj-$(CROSS_GNU_TYPE); \ ) -cacerts-stamp: -ifeq ($(with_native),yes) - dh_testdir - rm -rf build - mkdir -p build - sed 's/@gcc_suffix@//' debian/generate-cacerts.pl.in \ - > debian/generate-cacerts.pl - cd build && perl ../debian/generate-cacerts.pl \ - /etc/ssl/certs/ca-certificates.crt -endif - touch $@ - -nopkgs_native := $(foreach p, $(sort $(invalid_packages) $(no_packages) $(cross_packages)),-N$(p)) +nopkgs_native := $(foreach p, $(filter $(shell dh_listpackages -a), $(sort $(invalid_packages) $(no_packages) $(cross_packages))),-N$(p)) binary-indep: build-indep install ifeq ($(with_native),yes) dh_testdir dh_testroot dh_installchangelogs -i - - dh_installdocs -plibgcj-common - dh_installchangelogs -plibgcj-common - mv debian/libgcj-common/usr/share/doc/libgcj-common/changelog \ - debian/libgcj-common/usr/share/doc/libgcj-common/changelog.Debian - - install -m644 build/cacerts debian/libgcj-common/etc/java/cacerts-gcj - - dh_compress -i -XREADME.Debian + dh_installdocs -i + dh_compress -i dh_fixperms -i - dh_python2 -plibgcj-common dh_installdeb -i - dh_gencontrol -plibgcj-common -u-v$(CV_LIBGCJCOMMON) + dh_gencontrol -i dh_md5sums -i dh_builddeb -i endif @@ -1325,10 +1210,9 @@ ifeq ($(with_native),yes) dh_testroot # dh_installdebconf dh_installdocs -pcpp - for p in `dh_listpackages $(nopkgs_native) -Ncpp -Nlibgcj-bc -Ncpp-doc -Ngcc-doc -Ngfortran-doc -Ngccgo-doc -Nlibgcj-common -Ngdc -Nlibgphobos-dev`; do \ + for p in `dh_listpackages $(nopkgs_native) -Ncpp $(if $(filter yes,$(with_gfdl_docs)),-Ncpp-doc -Ngcc-doc -Ngfortran-doc -Ngccgo-doc) -Ngdc -Nlibgphobos-dev`; do \ case "$$p" in \ *-gnu*|*-kfreebsd*|gcc-hppa64-linux-gnu) continue;; \ - gij|gcj-*) t=libgcj-common;; \ *) t=cpp; \ esac; \ echo ln -sf $$t debian/$$p/usr/share/doc/$$p; \ @@ -1357,7 +1241,7 @@ ifneq (,$(filter gcc-hppa64-linux-gnu, $(packages))) debian/gcc-hppa64-linux-gnu/usr/share/doc/gcc-hppa64-linux-gnu/changelog.Debian endif - dh_compress -s $(nopkgs_native) -XREADME.Debian + dh_compress -a $(nopkgs_native) -XREADME.Debian ifneq (,$(filter $(DEB_HOST_ARCH),i386 kfreebsd-i386 hurd-i386)) # temporary i486-* symlinks for jessie/sid @@ -1378,7 +1262,7 @@ endif for p in $$(dh_listpackages -a); do \ case $$p in \ - cpp|g++|gcc|gccgo|gcj-jdk|gcj-jre-headless|gfortran|gcc-hppa64-linux-gnu) \ + cpp|g++|gcc|gccgo|gfortran|gcc-hppa64-linux-gnu) \ [ "$(with_gfdl_docs)" = yes ] && continue; \ mkdir -p -m 755 debian/$$p/usr/share/lintian/overrides; \ echo "$$p binary: binary-without-manpage" \ @@ -1390,8 +1274,8 @@ endif esac; \ done - dh_fixperms -s $(nopkgs_native) - dh_installdeb -s $(nopkgs_native) + dh_fixperms -a $(nopkgs_native) + dh_installdeb -a $(nopkgs_native) dh_gencontrol -pcpp \ $(if $(filter yes, $(with_gfdl_docs)),-pcpp-doc) \ -u-v$(EPOCH):$(CV_CPP) @@ -1406,6 +1290,10 @@ endif ifneq (,$(filter libgphobos-dev, $(packages))) dh_gencontrol -plibgphobos-dev -u-v$(CV_GDC) endif +ifneq (,$(filter gm2, $(packages))) + dh_gencontrol -pgm2 \ + -u-v$(EPOCH):$(CV_GM2) +endif ifneq (,$(filter g++, $(packages))) dh_gencontrol -pg++ $(if $(filter yes,$(with_multilib)),-pg++-multilib) \ -u-v$(EPOCH):$(CV_GPP) @@ -1429,29 +1317,32 @@ ifneq (,$(filter gccgo, $(packages))) $(if $(filter yes, $(with_gfdl_docs)),-pgccgo-doc) \ -u-v$(EPOCH):$(CV_GGO) endif -ifneq (,$(filter gcj-jdk, $(packages))) - dh_gencontrol -plibgcj-bc -u-v$(CV_LIBGCJBC) - dh_gencontrol -pgcj-jre-headless -pgcj-jre -pgcj-jdk \ - -u-v$(EPOCH):$(CV_GCJ) +ifneq (,$(filter gccbrig, $(packages))) + dh_gencontrol -pgccbrig \ + -u-v$(EPOCH):$(CV_BRIG) +endif +ifneq (,$(filter gcc-offload-nvptx, $(packages))) + dh_gencontrol -pgcc-offload-nvptx \ + -u-v$(EPOCH):$(CV_OFFL) endif ifneq (,$(filter gcc-hppa64-linux-gnu, $(packages))) dh_gencontrol -pgcc-hppa64-linux-gnu \ -u-v$(EPOCH):$(CV_GCC) endif - dh_md5sums -s $(nopkgs_native) - dh_builddeb -s $(nopkgs_native) + dh_md5sums -a $(nopkgs_native) + dh_builddeb -a $(nopkgs_native) endif # with_native binary.%: build-arch install dh_testdir dh_testroot - dh_installdocs -pcpp-$(CROSS_GNU_TYPE) \ - $(if $(filter pkg-config-$(CROSS_GNU_TYPE), $(packages)),-ppkg-config-$(CROSS_GNU_TYPE)) + dh_installdocs -pcpp-$(CROSS_PKG_GNU_TYPE) \ + $(if $(filter pkg-config-$(CROSS_PKG_GNU_TYPE), $(packages)),-ppkg-config-$(CROSS_PKG_GNU_TYPE)) - for p in $(filter %-$(CROSS_GNU_TYPE),$(cross_packages)); do \ + for p in $(filter %-$(CROSS_PKG_GNU_TYPE),$(cross_packages)); do \ case "$$p" in \ cpp-*|pkg-config-*) continue;; \ - *-gnu*|*-kfreebsd*) t=cpp-$(CROSS_GNU_TYPE);; \ + *-gnu*|*-kfreebsd*) t=cpp-$(CROSS_PKG_GNU_TYPE);; \ *) continue;; \ esac; \ echo ln -sf $$t debian/$$p/usr/share/doc/$$p; \ @@ -1460,22 +1351,22 @@ binary.%: build-arch install ln -sf $$t debian/$$p/usr/share/doc/$$p; \ done - dh_installchangelogs -pcpp-$(CROSS_GNU_TYPE) \ - $(if $(filter pkg-config-$(CROSS_GNU_TYPE), $(packages)),-ppkg-config-$(CROSS_GNU_TYPE)) - for i in cpp-$(CROSS_GNU_TYPE) $(if $(filter pkg-config-$(CROSS_GNU_TYPE), $(packages)),pkg-config-$(CROSS_GNU_TYPE)); do \ + dh_installchangelogs -pcpp-$(CROSS_PKG_GNU_TYPE) \ + $(if $(filter pkg-config-$(CROSS_PKG_GNU_TYPE), $(packages)),-ppkg-config-$(CROSS_PKG_GNU_TYPE)) + for i in cpp-$(CROSS_PKG_GNU_TYPE) $(if $(filter pkg-config-$(CROSS_PKG_GNU_TYPE), $(packages)),pkg-config-$(CROSS_PKG_GNU_TYPE)); do \ mv debian/$$i/usr/share/doc/$$i/changelog \ debian/$$i/usr/share/doc/$$i/changelog.Debian; \ done - dh_compress $(foreach p,$(filter %-$(CROSS_GNU_TYPE),$(cross_packages)),-p$(p)) \ + dh_compress $(foreach p,$(filter %-$(CROSS_PKG_GNU_TYPE),$(cross_packages)),-p$(p)) \ -XREADME.Debian - $(if $(filter pkg-config-$(CROSS_GNU_TYPE), $(packages)), \ - dh_link -ppkg-config-$(CROSS_GNU_TYPE) \ + $(if $(filter pkg-config-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_link -ppkg-config-$(CROSS_PKG_GNU_TYPE) \ /usr/share/pkg-config-crosswrapper /usr/bin/${CROSS_GNU_TYPE}-pkg-config \ ) - for p in $(filter %-$(CROSS_GNU_TYPE),$(cross_packages)); do \ + for p in $(filter %-$(CROSS_PKG_GNU_TYPE),$(cross_packages)); do \ case $$p in \ - cpp-$(CROSS_GNU_TYPE)|g++-$(CROSS_GNU_TYPE)|gcc-$(CROSS_GNU_TYPE)|gccgo-$(CROSS_GNU_TYPE)|gcj-$(CROSS_GNU_TYPE)|gfortran-$(CROSS_GNU_TYPE)) \ + cpp-$(CROSS_PKG_GNU_TYPE)|g++-$(CROSS_PKG_GNU_TYPE)|gcc-$(CROSS_PKG_GNU_TYPE)|gccgo-$(CROSS_PKG_GNU_TYPE)|gfortran-$(CROSS_PKG_GNU_TYPE)) \ [ "$(with_gfdl_docs)" = yes ] && continue; \ mkdir -p -m 755 debian/$$p/usr/share/lintian/overrides; \ echo "$$p binary: binary-without-manpage" \ @@ -1483,66 +1374,66 @@ binary.%: build-arch install esac; \ done - dh_fixperms $(foreach p,$(filter %-$(CROSS_GNU_TYPE),$(cross_packages)),-p$(p)) - dh_installdeb $(foreach p,$(filter %-$(CROSS_GNU_TYPE),$(cross_packages)),-p$(p)) - dh_gencontrol -pcpp-$(CROSS_GNU_TYPE) '-u-v$(EPOCH):$(CV_CPP_$(CROSS_ARCH))' - dh_gencontrol -pgcc-$(CROSS_GNU_TYPE) \ - $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pgcc-multilib-$(CROSS_GNU_TYPE)) \ + dh_fixperms $(foreach p,$(filter %-$(CROSS_PKG_GNU_TYPE),$(cross_packages)),-p$(p)) + dh_installdeb $(foreach p,$(filter %-$(CROSS_PKG_GNU_TYPE),$(cross_packages)),-p$(p)) + dh_gencontrol -pcpp-$(CROSS_PKG_GNU_TYPE) '-u-v$(EPOCH):$(CV_CPP_$(CROSS_ARCH))' + dh_gencontrol -pgcc-$(CROSS_PKG_GNU_TYPE) \ + $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pgcc-multilib-$(CROSS_PKG_GNU_TYPE)) \ '-u-v$(EPOCH):$(CV_GCC_$(CROSS_ARCH))' - $(if $(filter gdc-$(CROSS_GNU_TYPE), $(packages)), \ - dh_gencontrol -pgdc-$(CROSS_GNU_TYPE) \ - $(if $(filter $(CROSS_ARCH),$(d_multilib_archs)),-pgdc-multilib-$(CROSS_GNU_TYPE)) \ + $(if $(filter gdc-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_gencontrol -pgdc-$(CROSS_PKG_GNU_TYPE) \ + $(if $(filter $(CROSS_ARCH),$(d_multilib_archs)),-pgdc-multilib-$(CROSS_PKG_GNU_TYPE)) \ -u-v$(EPOCH):$(CV_GDC_$(CROSS_ARCH)) \ ) - $(if $(filter g++-$(CROSS_GNU_TYPE), $(packages)), \ - dh_gencontrol -pg++-$(CROSS_GNU_TYPE) \ - $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pg++-multilib-$(CROSS_GNU_TYPE)) \ + $(if $(filter gm2-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_gencontrol -pgm2-$(CROSS_PKG_GNU_TYPE) \ + -u-v$(EPOCH):$(CV_GM2_$(CROSS_ARCH)) \ + ) + + $(if $(filter g++-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_gencontrol -pg++-$(CROSS_PKG_GNU_TYPE) \ + $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pg++-multilib-$(CROSS_PKG_GNU_TYPE)) \ -u-v$(EPOCH):$(CV_GPP_$(CROSS_ARCH)) \ ) - $(if $(filter gobjc++-$(CROSS_GNU_TYPE), $(packages)), \ - dh_gencontrol -pgobjc-$(CROSS_GNU_TYPE) \ - $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pgobjc-multilib-$(CROSS_GNU_TYPE)) \ + $(if $(filter gobjc++-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_gencontrol -pgobjc-$(CROSS_PKG_GNU_TYPE) \ + $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pgobjc-multilib-$(CROSS_PKG_GNU_TYPE)) \ -u-v$(EPOCH):$(CV_GOBJC_$(CROSS_ARCH)) \ ) - $(if $(filter gobjc++-$(CROSS_GNU_TYPE), $(packages)), \ - dh_gencontrol -pgobjc++-$(CROSS_GNU_TYPE) \ - $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pgobjc++-multilib-$(CROSS_GNU_TYPE)) \ + $(if $(filter gobjc++-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_gencontrol -pgobjc++-$(CROSS_PKG_GNU_TYPE) \ + $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pgobjc++-multilib-$(CROSS_PKG_GNU_TYPE)) \ -u-v$(EPOCH):$(CV_GOBJCXX_$(CROSS_ARCH)) \ ) - $(if $(filter gfortran-$(CROSS_GNU_TYPE), $(packages)), \ - dh_gencontrol -pgfortran-$(CROSS_GNU_TYPE) \ - $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pgfortran-multilib-$(CROSS_GNU_TYPE)) \ + $(if $(filter gfortran-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_gencontrol -pgfortran-$(CROSS_PKG_GNU_TYPE) \ + $(if $(filter $(CROSS_ARCH),$(multilib_archs)),-pgfortran-multilib-$(CROSS_PKG_GNU_TYPE)) \ -u-v$(EPOCH):$(CV_GFORT_$(CROSS_ARCH)) \ ) - $(if $(filter gccgo-$(CROSS_GNU_TYPE), $(packages)), \ - dh_gencontrol -pgccgo-$(CROSS_GNU_TYPE) \ - $(if $(filter $(CROSS_ARCH),$(go_multilib_archs)),-pgccgo-multilib-$(CROSS_GNU_TYPE)) \ + $(if $(filter gccgo-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_gencontrol -pgccgo-$(CROSS_PKG_GNU_TYPE) \ + $(if $(filter $(CROSS_ARCH),$(go_multilib_archs)),-pgccgo-multilib-$(CROSS_PKG_GNU_TYPE)) \ -u-v$(EPOCH):$(CV_GGO_$(CROSS_ARCH)) \ ) - $(if $(filter gcj-$(CROSS_GNU_TYPE), $(packages)), \ - dh_gencontrol -pgcj-$(CROSS_GNU_TYPE) \ - -u-v$(EPOCH):$(CV_GCJ_$(CROSS_ARCH)) \ - ) - - $(if $(filter gnat-$(CROSS_GNU_TYPE), $(packages)), \ - dh_gencontrol -pgnat-$(CROSS_GNU_TYPE) -pgnat-sjlj-$(CROSS_GNU_TYPE) \ + $(if $(filter gnat-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_gencontrol -pgnat-$(CROSS_PKG_GNU_TYPE) -pgnat-sjlj-$(CROSS_PKG_GNU_TYPE) \ -u-v$(EPOCH):$(CV_GNAT_$(CROSS_ARCH)) \ ) - $(if $(filter pkg-config-$(CROSS_GNU_TYPE), $(packages)), \ - dh_gencontrol -ppkg-config-$(CROSS_GNU_TYPE) \ + $(if $(filter pkg-config-$(CROSS_PKG_GNU_TYPE), $(packages)), \ + dh_gencontrol -ppkg-config-$(CROSS_PKG_GNU_TYPE) \ -u-v$(EPOCH):$(CV_GCC_$(CROSS_ARCH)) \ ) - dh_md5sums $(foreach p,$(filter %-$(CROSS_GNU_TYPE),$(cross_packages)),-p$(p)) - dh_builddeb $(foreach p,$(filter %-$(CROSS_GNU_TYPE),$(cross_packages)),-p$(p)) + dh_md5sums $(foreach p,$(filter %-$(CROSS_PKG_GNU_TYPE),$(cross_packages)),-p$(p)) + dh_builddeb $(foreach p,$(filter %-$(CROSS_PKG_GNU_TYPE),$(cross_packages)),-p$(p)) binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install substvars |