summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2014-11-14 23:50:55 +0100
committerJose <jose@zeroc.com>2014-11-14 23:50:55 +0100
commit24f829c0a8f005a3ed1ab88f8a43bce68aa2e259 (patch)
treecfb86da65853a3738bc5e8de6421592c7633fe5d
parentFixed (ICE-5909) - Demo certificates for 3.6 (diff)
downloadice-24f829c0a8f005a3ed1ab88f8a43bce68aa2e259.tar.bz2
ice-24f829c0a8f005a3ed1ab88f8a43bce68aa2e259.tar.xz
ice-24f829c0a8f005a3ed1ab88f8a43bce68aa2e259.zip
Ubuntu package updates
-rwxr-xr-xdistribution/bin/makeubuntupackages.py19
-rwxr-xr-xdistribution/bin/makeubunturepo.py379
-rwxr-xr-xdistribution/makedist.py1
-rw-r--r--distribution/src/common/README.core6
-rw-r--r--distribution/src/deb/debian/control47
-rw-r--r--distribution/src/deb/debian/libjs-zeroc-ice.links2
-rw-r--r--distribution/src/deb/debian/patches/ice-build.patch20
-rwxr-xr-xdistribution/src/deb/debian/rules48
-rw-r--r--distribution/src/deb/debian/zeroc-ice-all-dev.links1
-rw-r--r--distribution/src/deb/debian/zeroc-ice-all-runtime.links1
-rw-r--r--js/src/IceStorm/Makefile2
11 files changed, 329 insertions, 197 deletions
diff --git a/distribution/bin/makeubuntupackages.py b/distribution/bin/makeubuntupackages.py
index 749d98590c5..0c755cbeb20 100755
--- a/distribution/bin/makeubuntupackages.py
+++ b/distribution/bin/makeubuntupackages.py
@@ -66,10 +66,7 @@ if distributionDir == None:
usage()
sys.exit(1)
-if keyid == None:
- print "Missing -k argument"
- usage()
- sys.exit(1)
+buildpackageOps = ("-k%s" % keyid) if keyid != None else "-us -uc"
sourceDir = "zeroc-ice@debmmver@-@debver@"
distFile = "zeroc-ice@debmmver@_@debver@.orig.tar.gz"
@@ -101,11 +98,9 @@ if not os.path.exists(distFile):
def runCommand(cmd, verbose):
- if len(cmd) > 0:
- if verbose:
- print(cmd)
- if os.system(cmd) != 0:
- sys.exit(1)
+ print(cmd)
+ if os.system(cmd) != 0:
+ sys.exit(1)
os.chdir(buildDir)
runCommand("tar zxf %s " % (distFile), verbose)
@@ -113,5 +108,9 @@ shutil.copy(distFile, buildDir)
os.chdir(sourceDir)
runCommand("tar zxf %s distfiles-@ver@/src/deb/debian --strip-components 3" % distFiles, verbose)
+os.chdir(os.path.join(sourceDir, "debian"))
+runCommand("tar zxf %s distfiles-@ver@/src/unix/README.Linux --strip-components 3" % distFiles, verbose)
+runCommand("tar zxf %s distfiles-@ver@/src/unix/JGOODIES_LICENSE --strip-components 3" % distFiles, verbose)
-runCommand("dpkg-buildpackage -k%s" % keyid, verbose)
+os.chdir(sourceDir)
+runCommand("dpkg-buildpackage %s -j8" % buildpackageOps, verbose)
diff --git a/distribution/bin/makeubunturepo.py b/distribution/bin/makeubunturepo.py
index b2339368b17..3988eefa82b 100755
--- a/distribution/bin/makeubunturepo.py
+++ b/distribution/bin/makeubunturepo.py
@@ -8,154 +8,265 @@
#
# **********************************************************************
-import os, sys, fnmatch, re, getopt, atexit, shutil, subprocess
+import os, sys, fnmatch, re, getopt, atexit, shutil, subprocess, threading
+
+
+i386Packages = [
+ "libjs-zeroc-ice_@debver@-1_i386.deb",
+ "libzeroc-freeze@debmmver@_@debver@-1_i386.deb",
+ "libzeroc-ice@debmmver@_@debver@-1_i386.deb",
+ "libzeroc-ice-dev_@debver@-1_i386.deb",
+ "libzeroc-ice-java_@debver@-1_i386.deb",
+ "libzeroc-icestorm@debmmver@_@debver@-1_i386.deb",
+ "php5-zeroc-ice_@debver@-1_i386.deb",
+ "php5-zeroc-ice-dev_@debver@-1_i386.deb",
+ "python-zeroc-ice_@debver@-1_i386.deb",
+ "python-zeroc-ice-dev_@debver@-1_i386.deb",
+ "ruby-zeroc-ice_@debver@-1_i386.deb",
+ "ruby-zeroc-ice-dev_@debver@-1_i386.deb",
+ "zeroc-glacier2_@debver@-1_i386.deb",
+ "zeroc-ice@debmmver@_@debver@-1_i386.changes",
+ "zeroc-icebox_@debver@-1_i386.deb",
+ "zeroc-icegrid_@debver@-1_i386.deb",
+ "zeroc-icepatch2_@debver@-1_i386.deb",
+ "zeroc-ice-utils_@debver@-1_i386.deb"]
+
+amd64Packages = [
+ "libjs-zeroc-ice_@debver@-1_amd64.deb",
+ "libzeroc-freeze@debmmver@_@debver@-1_amd64.deb",
+ "libzeroc-ice@debmmver@_@debver@-1_amd64.deb",
+ "libzeroc-ice-dev_@debver@-1_amd64.deb",
+ "libzeroc-ice-java_@debver@-1_amd64.deb",
+ "libzeroc-icestorm@debmmver@_@debver@-1_amd64.deb",
+ "php5-zeroc-ice_@debver@-1_amd64.deb",
+ "php5-zeroc-ice-dev_@debver@-1_amd64.deb",
+ "python-zeroc-ice_@debver@-1_amd64.deb",
+ "python-zeroc-ice-dev_@debver@-1_amd64.deb",
+ "ruby-zeroc-ice_@debver@-1_amd64.deb",
+ "ruby-zeroc-ice-dev_@debver@-1_amd64.deb",
+ "zeroc-glacier2_@debver@-1_amd64.deb",
+ "zeroc-ice@debmmver@_@debver@-1_amd64.changes",
+ "zeroc-icebox_@debver@-1_amd64.deb",
+ "zeroc-icegrid_@debver@-1_amd64.deb",
+ "zeroc-icepatch2_@debver@-1_amd64.deb",
+ "zeroc-ice-utils_@debver@-1_amd64.deb"]
+
+noarchPackages = [
+ "node-zeroc-ice_@debver@-1_all.deb",
+ "node-zeroc-ice-dev_@debver@-1_all.deb",
+ "zeroc-ice@debmmver@_@debver@-1.debian.tar.gz",
+ "zeroc-ice@debmmver@_@debver@-1.dsc",
+ "zeroc-ice@debmmver@_@debver@.orig.tar.gz",
+ "zeroc-ice-utils-java_@debver@-1_all.deb",
+ "zeroc-ice-slice_@debver@-1_all.deb",
+ "zeroc-ice-all-runtime_@debver@-1_all.deb",
+ "zeroc-ice-all-dev_@debver@-1_all.deb"]
+
+
+def runCommand(cmd):
+ print(cmd)
+ if os.system(cmd) != 0:
+ sys.exit(1)
+
+aptftpConf = """
+APT::FTPArchive::Release {
+ Origin "ZeroC Ice";
+ Label "ZeroC Ice";
+ Suite "unstable";
+ Codename "%(codename)s";
+ Architectures "all amd64 i386";
+ Components "main";
+ Description "Apt repository for ZeroC Ice";
+};
+"""
+aptgenerateConf = """
+Dir::ArchiveDir ".";
+Dir::CacheDir ".";
+TreeDefault::Directory "pool/main/";
+TreeDefault::SrcDirectory "pool/main/";
+Default::Packages::Extensions ".deb";
+Default::Packages::Compress ". gzip bzip2";
+Default::Sources::Compress ". gzip bzip2";
+Default::Contents::Compress ". gzip bzip2";
+BinDirectory "dists/%(codename)s/main" {
+ Packages "dists/%(codename)s/main/binary-i386/Packages";
+ Packages "dists/%(codename)s/main/binary-amd64/Packages";
+ Contents "dists/%(codename)s/Contents-i386";
+ Contents "dists/%(codename)s/Contents-amd64";
+ SrcPackages "dists/%(codename)s/main/source/Sources";
+};
+Tree "dists/%(codename)s" {
+ Sections "main";
+ Architectures "amd64 i386 source";
+};
+"""
+
+repoLayout = [
+ "dists/%(codename)s/main/binary-i386",
+ "dists/%(codename)s/main/source",
+ "dists/%(codename)s/main/binary-amd64",
+ "pool/main/i/ice@debmmver@"]
+
+
+buildCommand = """
+%(sshCommand)s %(sshUser)s@%(sshBuildHost)s 'rm -rf %(buildDir)s && mkdir %(buildDir)s' && \\
+%(scpCommand)s %(distFiles)s %(sshUser)s@%(sshBuildHost)s:/home/%(sshUser)s/%(buildDir)s && \\
+%(scpCommand)s %(sourceDist)s %(sshUser)s@%(sshBuildHost)s:/home/%(sshUser)s/%(buildDir)s && \\
+%(sshCommand)s %(sshUser)s@%(sshBuildHost)s \\
+ 'cd %(buildDir)s && tar zxf %(distFiles)s && python distfiles-@ver@/bin/makeubuntupackages.py -b %(codename)s -d . > build-log.txt 2>&1'
+"""
+
+class Builder(threading.Thread):
+ def __init__(self, command):
+ self._status = 0
+ self._command = command
+ threading.Thread.__init__(self)
+
+ def run(self):
+ _status = runCommand(self._command)
+
+ def status():
+ return _status
#
-# Program usage.
+# Default values
#
-def usage():
- print
- print "Options:"
- print "-h Show this message."
- print "-v Be verbose."
- print "-k KEYID Specify keyid to use when signing (support@zeroc.com)"
- print "-o OSNAME Ubuntu/Debian os name (raring, quantal, precise, ... )"
- print "-p DIR Directory containing the packages to add"
- print "-r DIR Repository base directory"
- print ""
- print "Example:"
- print ""
- print "makeubunturepo.py -k support@zeroc.com -o raring -p ./packages -r ./ubuntu"
- print
+codename = "trusty"
+sourceDist = "zeroc-ice@debmmver@_@debver@.orig.tar.gz"
+distFiles = "distfiles-@ver@.tar.gz"
+signKey = "A62B38F8" if "@ver@".endswith("b") else "53A473EE"
+sshKey = None
+sshUser = os.environ.get('USER')
+i386BuildHost = None
+amd64BuildHost = None
+buildDir = "dist-HEAD"
+skipBuild = False
#
-# Check arguments
+# Program usage.
#
+def usage():
+ print("")
+ print(r"Options:")
+ print("")
+ print(r" --help Show this message.")
+ print("")
+ print(r" --ssh-key SSH key used to sign into build host.")
+ print("")
+ print(r" --ssh-user SSH user used to sign into build host.")
+ print("")
+ print(r" --i386-build-host ip address or hostname for the i386 package builder.")
+ print("")
+ print(r" --amd64-build-host ip address or hostname for the amd64 package builder.")
+ print("")
+ print(r" --build-dir directory to build the packages, it is relative to the user home.")
+ print("")
+ print(r" --codename Ubuntu release codename we are building (trusty, utopic, ...).")
+ print("")
+ print(r" --skip-build Don't build packages, just recreate the repository.")
+ print("")
+
try:
- opts, args = getopt.getopt(sys.argv[1:], "hvk:o:p:r:")
-except getopt.GetoptError:
- print sys.argv[0] + ": unknown option"
- print
+ opts, args = getopt.getopt(sys.argv[1:], "", ["help", "ssh-key=", "ssh-user=", "i386-build-host=",
+ "amd64-build-host=", "build-dir=", "codename=", "skip-build"])
+except getopt.GetoptError as e:
+ print("Error %s " % e)
usage()
sys.exit(1)
+if args:
+ usage()
+ sys.exit(1)
-verbose = 0
-keyid = None
-osName = None
-packagesDir = None
-repositoryDir = None
-
-for (o, a) in opts:
- if o == "-h":
+for o, a in opts:
+ if o == "--help":
usage()
sys.exit(0)
- elif o == "-v":
- verbose = 1
- elif o == "-k":
- keyid = a
- elif o == "-o":
- osName = a
- elif o == "-p":
- packagesDir = a
- elif o == "-r":
- repositoryDir = a
-
-if keyid == None:
- print "Missing -k argument"
- usage()
- sys.exit(1)
+ elif o == "--ssh-key":
+ sshKey = a
+ elif o == "--ssh-user":
+ sshUser = a
+ elif o == "--i386-build-host":
+ i386BuildHost = a
+ elif o == "--amd64-build-host":
+ amd64BuildHost = a
+ elif o == "--build-dir":
+ buildDir = a
+ elif o == "--codename":
+ codename = a
+ elif o == "--skip-build":
+ skipBuild = True
-if osName == None:
- print "Missing -o argument"
- usage()
- sys.exit(1)
+sshCommand = "ssh" if sshKey == None else "ssh -i %s" % sshKey
+scpCommand = "scp" if sshKey == None else "scp -i %s" % sshKey
-if packagesDir == None:
- print "Missing -p argument"
- usage()
- sys.exit(1)
+buildHosts = []
-if repositoryDir == None:
- print "Missing -r argument"
- usage()
- sys.exit(1)
+if i386BuildHost != None:
+ buildHosts.append(i386BuildHost)
+
+if amd64BuildHost != None:
+ buildHosts.append(amd64BuildHost)
+
+if not skipBuild:
+ if not buildHosts:
+ usage()
+ print("You must set the builder host(s) using --i386-build-host and/or --amd64-build-host options")
+ exit(1)
+
+ buildThreads = []
+ for host in buildHosts:
+ thread = Builder(buildCommand % {"sshCommand": sshCommand,
+ "scpCommand": scpCommand,
+ "sshUser": sshUser,
+ "sshBuildHost": host,
+ "buildDir": buildDir,
+ "signKey": signKey,
+ "codename": codename,
+ "distFiles": distFiles,
+ "sourceDist": sourceDist})
+ thread.start()
+ buildThreads.append(thread)
+
+
+ for thread in buildThreads:
+ thread.join()
+
+runCommand("mkdir -p ubuntu")
+for d in repoLayout:
+ runCommand("cd ubuntu && mkdir -p %s" % (d % {"codename": codename}))
+
+for host in [i386BuildHost, amd64BuildHost]:
+ packages = i386Packages + noarchPackages if host == i386BuildHost else amd64Packages
+ for package in packages:
+ runCommand("cd ubuntu && %(scpCommand)s %(sshUser)s@%(sshBuildHost)s:/home/%(sshUser)s/%(buildDir)s/%(codename)s/%(package)s pool/main/i/ice@debmmver@/" %
+ {"scpCommand": scpCommand,
+ "sshUser": sshUser,
+ "sshBuildHost": host,
+ "buildDir": buildDir,
+ "codename": codename,
+ "package": package})
+
+f = open('ubuntu/aptftp.conf', 'w')
+f.write(aptftpConf % {"codename": codename})
+f.close()
+
+f = open('ubuntu/aptgenerate.conf', 'w')
+f.write(aptgenerateConf % {"codename": codename})
+f.close()
+
+
+runCommand("cd ubuntu && apt-ftparchive generate aptgenerate.conf")
+runCommand("cd ubuntu && apt-ftparchive release -c=aptftp.conf dists/%(codename)s > dists/%(codename)s/Release" % {"codename": codename})
+
+#
+# Sign packages
+#
+for command in ["cd ubuntu && debsign -k %(signKey)s pool/main/i/ice@debmmver@/zeroc-ice@debmmver@_@debver@-1.dsc",
+ "cd ubuntu && debsign -k %(signKey)s pool/main/i/ice@debmmver@/zeroc-ice@debmmver@_@debver@-1_i386.changes",
+ "cd ubuntu && debsign -k %(signKey)s pool/main/i/ice@debmmver@/zeroc-ice@debmmver@_@debver@-1_amd64.changes",
+ "cd ubuntu && gpg -u %(signKey)s -bao dists/raring/Release.gpg dists/raring/Release"]:
+ runCommand(command % {"signKey": signKey})
-packagesDir = os.path.abspath(os.path.join(os.getcwd(), packagesDir))
-repositoryDir = os.path.abspath(os.path.join(os.getcwd(), repositoryDir))
-tmpDir = os.path.join(repositoryDir, "tmp")
-
-if not os.path.exists(tmpDir):
- os.mkdir(tmpDir)
-
-for root, dirnames, filenames in os.walk(packagesDir):
- for f in filenames:
- if f.endswith(".deb") or f.endswith(".dsc") or f.endswith(".tar.gz"):
- if not os.path.exists(os.path.join(tmpDir, f)):
- shutil.copy(os.path.join(root, f), os.path.join(tmpDir, f))
-
-print("adding packages for OS: %s from: %s to repository: %s" % (osName, packagesDir, repositoryDir))
-
-os.chdir(repositoryDir)
-
-def runCommand(cmd, verbose):
- if len(cmd) > 0:
- if verbose:
- print(cmd)
- if os.system(cmd) != 0:
- sys.exit(1)
-
-for root, dirnames, filenames in os.walk(tmpDir):
- for f in filenames:
- if not f.endswith(".deb") and not f.endswith(".dsc"):
- continue
-
- #
- # Remove the package if already exists in the repository.
- #
- i = f.index("_")
- packageName = f[:i]
- arch = ""
- archFlags = ""
- remove = "remove " + osName + " " + packageName
- listpackages = "list " + osName + " " + packageName
-
- if f.endswith(".deb"):
- i = f.rindex("_")
- dot = f.rindex(".")
- arch = f[i + 1:dot]
- elif f.endswith(".dsc"):
- arch = "source"
-
- if arch != "all":
- archFlags = " -A " + arch
-
- print("Adding package %s arch: %s" % (packageName, arch))
- p = subprocess.Popen("reprepro -C 'main' %s %s" % (archFlags, listpackages),
- stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True)
-
- while True:
- r = p.stdout.readline().decode("utf-8").strip()
- if r == '':
- break
-
- archs = []
- if arch == "all":
- archs = ["i386", "amd64"]
- else:
- archs = [arch]
-
- for a in archs:
- if r.find("%s|main|%s: %s" % (osName, a, packageName)) != -1:
- runCommand("reprepro -C 'main' %s %s 1> /dev/null" % (" -A " + a, remove), verbose)
-
- include = "includedeb" if f.endswith(".deb") else "includedsc"
-
- runCommand("reprepro --ask-passphrase -Vb . -C main %s %s %s %s 1> /dev/null" %
- (archFlags, include, osName, os.path.join(tmpDir, f)), verbose)
-
-shutil.rmtree(tmpDir)
-os.chdir(os.path.dirname(repositoryDir))
-print("Creating repository archive in " + os.path.basename(repositoryDir) + ".tar.gz")
-os.system("GZIP=-9 tar --exclude=db --exclude=conf -czf " + os.path.basename(repositoryDir) + ".tar.gz " +
- os.path.basename(repositoryDir))
+runCommand("rm -f ubuntu/aptftp.conf ubuntu/aptgenerate.conf")
+runCommand("tar cjvf ubuntu ubuntu.tar.bz2")
diff --git a/distribution/makedist.py b/distribution/makedist.py
index f831568683d..88889629976 100755
--- a/distribution/makedist.py
+++ b/distribution/makedist.py
@@ -211,6 +211,7 @@ def createDistfilesDist(platform, whichDestDir):
fixVersion(os.path.join("bin", "makebindist.py"), *versions)
fixVersion(os.path.join("lib", "DistUtils.py"), *versions)
fixVersion(os.path.join("bin", "makeubuntupackages.py"), *versions)
+ fixVersion(os.path.join("bin", "makeubunturepo.py"), *versions)
if platform == "UNIX":
fixVersion(os.path.join("src", "rpm", "icegridregistry.conf"), *versions)
fixVersion(os.path.join("src", "rpm", "RPM_README"), *versions)
diff --git a/distribution/src/common/README.core b/distribution/src/common/README.core
deleted file mode 100644
index cf8a0562a69..00000000000
--- a/distribution/src/common/README.core
+++ /dev/null
@@ -1,6 +0,0 @@
-This archive contains the Ice source code for the C++ language
-mapping.
-
-For build and installation instructions, please refer to the manual:
-
-http://doc.zeroc.com/display/Rel/Ice+3.5.1+Build+Instructions
diff --git a/distribution/src/deb/debian/control b/distribution/src/deb/debian/control
index 38b9fd5e0b2..fac70fdb231 100644
--- a/distribution/src/deb/debian/control
+++ b/distribution/src/deb/debian/control
@@ -13,13 +13,14 @@ Build-Depends: debhelper (>= 9.0.0),
python2.7-dev,
ruby1.9.1-dev,
php5-dev,
+ php5-cli,
javahelper (>= 0.45),
nodejs,
libclosure-compiler-java
Standards-Version: 3.9.4
Homepage: http://www.zeroc.com
-Package: zeroc-ice
+Package: zeroc-ice-all-runtime
Architecture: all
Section: web
Depends: zeroc-ice-slice (=${binary:Version}),
@@ -36,6 +37,8 @@ Depends: zeroc-ice-slice (=${binary:Version}),
zeroc-icepatch2 (=${binary:Version}),
zeroc-ice-utils (=${binary:Version}),
zeroc-ice-utils-java (=${binary:Version})
+Replaces: libice-3.5-python, python-zeroc-ice (<=3.5.1), icebox
+Provides:icebox
Description: Ice (Internet Communications Engine)
Ice is a modern object-oriented toolkit that enables you to build
distributed applications with minimal effort. Ice allows you to focus
@@ -46,7 +49,7 @@ Description: Ice (Internet Communications Engine)
transmission, or retrying failed connection attempts (to name but a
few of dozens of such low-level details).
-Package: zeroc-ice-dev
+Package: zeroc-ice-all-dev
Architecture: all
Section: devel
Depends: libzeroc-ice-dev (=${binary:Version}),
@@ -90,8 +93,7 @@ Package: libzeroc-ice-dev
Architecture: any
Multi-Arch: no
Section: devel
-Conflicts: libice++-dev
-Replaces: libice++-dev
+Replaces: libice++-dev, ice35-translators, libzeroc-ice35-dev
Depends: ${shlibs:Depends}, ${misc:Depends},
zeroc-ice-slice (=${binary:Version}),
libzeroc-ice@debmmver@ (=${binary:Version}),
@@ -103,8 +105,7 @@ Package: libzeroc-ice-java
Architecture: any
Multi-Arch: foreign
Section: devel
-Conflicts:libice-java-dev
-Replaces:libice-java-dev
+Replaces:libice-java-dev, ice35-translators, libzeroc-ice3.5-java
Depends: ${shlibs:Depends}, ${misc:Depends}, ${java:Depends},
zeroc-ice-slice (=${binary:Version}),
libzeroc-ice@debmmver@ (=${binary:Version}),
@@ -139,8 +140,7 @@ Package: php5-zeroc-ice
Architecture: any
Multi-Arch: no
Section: php
-Conflicts:libice3.5-php
-Replaces:libice3.5-php
+Replaces:libice3.5-php, php-zeroc-ice
Depends: ${shlibs:Depends}, ${misc:Depends},
libzeroc-ice@debmmver@ (=${binary:Version})
Description: The Ice run time for PHP
@@ -150,8 +150,7 @@ Package: php5-zeroc-ice-dev
Architecture: any
Multi-Arch: foreign
Section: devel
-Conflicts:libice-php-dev
-Replaces:libice-php-dev
+Replaces:libice-php-dev, ice35-translators
Depends: php5-cli | php5, ${shlibs:Depends},
zeroc-ice-slice (=${binary:Version}),
libzeroc-ice@debmmver@ (=${binary:Version}),
@@ -159,12 +158,12 @@ Depends: php5-cli | php5, ${shlibs:Depends},
Description: Tools for developing Ice applications in PHP
Tools for developing Ice applications in PHP.
+
Package: python-zeroc-ice
Architecture: any
Multi-Arch: no
Section: python
-Conflicts:libice-3.5-python
-Replaces:libice-3.5-python
+Replaces:libice-3.5-python, python-zeroc-ice (<=3.5.1)
Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends},
zeroc-ice-slice (=${binary:Version}),
libzeroc-ice@debmmver@ (=${binary:Version})
@@ -176,8 +175,7 @@ Package: python-zeroc-ice-dev
Architecture: any
Multi-Arch: foreign
Section: devel
-Conflicts:libice-python-dev
-Replaces:libice-python-dev
+Replaces:libice-python-dev, ice35-translators
Depends: ${shlibs:Depends}, ${misc:Depends},
zeroc-ice-slice (=${binary:Version}),
libzeroc-ice@debmmver@ (=${binary:Version}),
@@ -189,7 +187,6 @@ Package: ruby-zeroc-ice
Architecture: any
Multi-Arch: no
Section: ruby
-Conflicts:libice3.5-ruby
Replaces:libice3.5-ruby
Depends: ${shlibs:Depends}, ${misc:Depends}, ruby1.9.1,
zeroc-ice-slice (=${binary:Version}),
@@ -201,8 +198,7 @@ Package: ruby-zeroc-ice-dev
Architecture: any
Multi-Arch: foreign
Section: devel
-Conflicts:libice-ruby-dev
-Replaces:libice-ruby-dev
+Replaces:libice-ruby-dev, ice35-translators
Depends: ${shlibs:Depends}, ${misc:Depends},
zeroc-ice-slice (=${binary:Version}),
libzeroc-ice@debmmver@ (=${binary:Version}),
@@ -214,8 +210,7 @@ Package: zeroc-glacier2
Architecture: any
Multi-Arch: foreign
Section: web
-Conflicts:glacier2
-Replaces:glacier2
+Replaces:glacier2, ice35-services
Depends: ${shlibs:Depends}, ${misc:Depends},
libzeroc-ice@debmmver@ (=${binary:Version})
Description: The Glacier2 router daemon
@@ -226,8 +221,8 @@ Package: zeroc-icebox
Architecture: any
Multi-Arch: no
Section: web
-Conflicts:icebox
Replaces:icebox
+Provides:icebox
Depends: ${shlibs:Depends}, ${misc:Depends},
libzeroc-ice@debmmver@ (=${binary:Version})
Description: IceBox C++ server
@@ -237,8 +232,7 @@ Package: zeroc-icegrid
Architecture: any
Multi-Arch: foreign
Section: web
-Conflicts:icegrid
-Replaces:icegrid
+Replaces:icegrid, ice35-services
Depends: ${shlibs:Depends}, ${misc:Depends},
libzeroc-ice@debmmver@ (=${binary:Version}),
libzeroc-icestorm@debmmver@ (=${binary:Version}),
@@ -263,8 +257,7 @@ Package: zeroc-icepatch2
Architecture: any
Multi-Arch: foreign
Section: web
-Conflicts:icepatch2
-Replaces:icepatch2
+Replaces:icepatch2, ice35-services
Depends: ${shlibs:Depends}, ${misc:Depends},
libzeroc-ice@debmmver@ (=${binary:Version})
Description: The software distribution and patching service for Ice.
@@ -275,8 +268,7 @@ Package: zeroc-ice-utils
Architecture: any
Multi-Arch: foreign
Section: admin
-Conflicts:ice-utils
-Replaces:ice-utils
+Replaces:ice-utils, icebox, ice35-services
Depends: ${shlibs:Depends}, ${misc:Depends},
libzeroc-ice@debmmver@ (=${binary:Version}),
libzeroc-freeze@debmmver@ (=${binary:Version}),
@@ -287,8 +279,7 @@ Description: Ice utilities and admin tools
Package: zeroc-ice-utils-java
Architecture: all
Section: admin
-Conflicts:ice-utils
-Replaces:ice-utils
+Replaces:ice-utils, icegrid-gui
Depends: ${java:Depends}, ${misc:Depends}, ${python:Depends},
zeroc-ice-utils (=${binary:Version})
Description: IceGrid Admin graphical client for IceGrid
diff --git a/distribution/src/deb/debian/libjs-zeroc-ice.links b/distribution/src/deb/debian/libjs-zeroc-ice.links
index 4afa5662f0e..4f55f0ae66e 100644
--- a/distribution/src/deb/debian/libjs-zeroc-ice.links
+++ b/distribution/src/deb/debian/libjs-zeroc-ice.links
@@ -1 +1 @@
-/usr/share/doc/libjs-zeroc-ice-dev/copyright /usr/share/doc/libjs-zeroc-ice-dev/ICE_LICENSE \ No newline at end of file
+/usr/share/doc/libjs-zeroc-ice/copyright /usr/share/doc/libjs-zeroc-ice/ICE_LICENSE \ No newline at end of file
diff --git a/distribution/src/deb/debian/patches/ice-build.patch b/distribution/src/deb/debian/patches/ice-build.patch
index e88ed62361a..a4361911448 100644
--- a/distribution/src/deb/debian/patches/ice-build.patch
+++ b/distribution/src/deb/debian/patches/ice-build.patch
@@ -76,18 +76,18 @@
@for subdir in $(SUBDIRS); \
--- a/config/Make.common.rules
+++ b/config/Make.common.rules
-@@ -79,7 +79,10 @@
- cpp11libdirsuffix = /c++11
+@@ -82,7 +82,10 @@
cpp11libsuffix = ++11
cpp11sonamedir = ../
-+ cppsubdir = cpp11
+ binsuffix := $(binsuffix)$(cpp11libsuffix)
++ cppsubdir = cpp11
endif
+else
+ cppsubdir = cpp
endif
ifneq ($(findstring MINGW,$(UNAME)),)
-@@ -134,16 +137,16 @@
+@@ -137,16 +140,16 @@
ifneq ($(shell test -f $(ICE_HOME)/$(binsubdir)/$(slice_translator) && echo 0), 0)
$(error Unable to find $(slice_translator) in $(ICE_HOME)/$(binsubdir), please verify ICE_HOME is properly configured and Ice is correctly installed.)
endif
@@ -108,7 +108,7 @@
endif
endif
-@@ -162,16 +165,16 @@
+@@ -165,16 +168,16 @@
ifneq ($(shell test -f $(ICE_HOME)/$(binsubdir)/$(slice_translator) && echo 0), 0)
$(error Unable to find $(slice_translator) in $(ICE_HOME)/$(binsubdir), please verify ICE_HOME is properly configured and Ice is correctly installed.)
endif
@@ -129,7 +129,7 @@
endif
endif
endif
-@@ -262,7 +265,7 @@
+@@ -265,7 +268,7 @@
#
ifneq ($(ice_dir), /usr)
ifdef ice_src_dist
@@ -145,20 +145,20 @@
all:
- ./gradlew assemble
-+ ./gradlew -g$(HOME) assemble
++ ./gradlew -g$(GRADLE_HOME) assemble
dist:
- ./gradlew :Ice:assemble :Freeze:assemble :Glacier2:assemble :IceGrid:assemble :ant:assemble \
-+ ./gradlew -g$(HOME) :Ice:assemble :Freeze:assemble :Glacier2:assemble :IceGrid:assemble :ant:assemble \
++ ./gradlew -g$(GRADLE_HOME) :Ice:assemble :Freeze:assemble :Glacier2:assemble :IceGrid:assemble :ant:assemble \
:IceBox:assemble :IceDiscovery:assemble :IcePatch2:assemble :IceStorm:assemble :IceGridGUI:assemble
clean:
- ./gradlew clean
-+ ./gradlew -g$(HOME) clean
++ ./gradlew -g$(GRADLE_HOME) clean
install::
- ./gradlew $(INSTALL_FLAGS) install
-+ ./gradlew -g$(HOME) $(INSTALL_FLAGS) install
++ ./gradlew -g$(GRADLE_HOME) $(INSTALL_FLAGS) install
test::
@python ./allTests.py
diff --git a/distribution/src/deb/debian/rules b/distribution/src/deb/debian/rules
index e14ba61d472..b96c15647c5 100755
--- a/distribution/src/deb/debian/rules
+++ b/distribution/src/deb/debian/rules
@@ -13,9 +13,33 @@ export prefix=/usr
export CLASSPATH=/usr/share/java/proguard.jar
export DESTDIR=$(CURDIR)/debian/tmp
export NODE=nodejs
-export GRADLE_HOME=~/.gradle
+export GRADLE_HOME=$(HOME)/.gradle
export CLOSURE_COMPILER=/usr/share/java/closure-compiler.jar
+PACKAGE_NAMES = zeroc-ice \
+ zeroc-ice-dev \
+ zeroc-ice-slice \
+ libzeroc-ice@debmmver@ \
+ libzeroc-freeze@debmmver@ \
+ node-zeroc-ice \
+ php5-zeroc-ice \
+ python-zeroc-ice \
+ ruby-zeroc-ice \
+ zeroc-glacier2 \
+ zeroc-icebox \
+ zeroc-icegrid \
+ libzeroc-icestorm@debmmver@ \
+ zeroc-icepatch2 \
+ zeroc-ice-utils \
+ zeroc-ice-utils-java \
+ libzeroc-ice-dev \
+ libzeroc-ice-java \
+ libjs-zeroc-ice \
+ node-zeroc-ice-dev \
+ php5-zeroc-ice-dev \
+ python-zeroc-ice-dev \
+ ruby-zeroc-ice-dev
+
CPP11_DESTDIR = $(CURDIR)/debian/tmp-cpp11
CPP11_LIB_NAMES = libFreeze \
libGlacier2 \
@@ -41,10 +65,9 @@ ARTIFACT_NAMES = freeze \
icestorm
ifeq ($(DEB_HOST_MULTIARCH),i386-linux-gnu)
-
ICEBOX = icebox32
icebox_install:
- mv $(DESTDIR)$(prefix)/bin/icebox $(DESTDIR)$(prefix)/bin/$(ICEBOX)
+ mv $(DESTDIR)$(prefix)/bin/icebox++11 $(DESTDIR)$(prefix)/bin/$(ICEBOX)++11
@echo usr/bin/$(ICEBOX) > $(CURDIR)/debian/zeroc-icebox.install
@echo usr/bin/$(ICEBOX)++11 >> $(CURDIR)/debian/zeroc-icebox.install
@echo usr/share/man/man1/icebox.1 >> $(CURDIR)/debian/zeroc-icebox.install
@@ -62,7 +85,7 @@ endif
override_dh_auto_build:
cp -r cpp cpp11
cd cpp11/src && CPP11=yes $(MAKE) -j8
- $(MAKE) embedded_runpath_prefix="" PYTHON_LIBS="" -j8
+ $(MAKE) -j8 embedded_runpath_prefix="" PYTHON_LIBS=""
override_dh_auto_install:
cd cpp11 && DESTDIR=$(CPP11_DESTDIR) CPP11=yes $(MAKE) install
@@ -96,11 +119,11 @@ override_dh_install: icebox_install
#
for name in $(CPP11_LIB_NAMES) ; \
do \
- mv $(CPP11_DESTDIR)$(prefix)/lib/$$name++11*.so* $(DESTDIR)$(prefix)/lib/$(DEB_HOST_MULTIARCH) ; \
- mv $(CPP11_DESTDIR)$(prefix)/lib/c++11/$$name.so $(DESTDIR)$(prefix)/lib/$(DEB_HOST_MULTIARCH)/c++11/$$name.so ; \
+ cp $(CPP11_DESTDIR)$(prefix)/lib/$$name++11*.so* $(DESTDIR)$(prefix)/lib/$(DEB_HOST_MULTIARCH) ; \
+ cp $(CPP11_DESTDIR)$(prefix)/lib/c++11/$$name.so $(DESTDIR)$(prefix)/lib/$(DEB_HOST_MULTIARCH)/c++11/$$name.so ; \
done ;
- cp $(CPP11_DESTDIR)$(prefix)/bin/icebox $(DESTDIR)$(prefix)/bin/$(ICEBOX)++11
+ cp $(CPP11_DESTDIR)$(prefix)/bin/icebox++11 $(DESTDIR)$(prefix)/bin/$(ICEBOX)++11
mkdir -p $(DESTDIR)$(prefix)/bin
cp java/bin/icegridgui.deb $(DESTDIR)$(prefix)/bin/icegridgui && \
@@ -130,6 +153,17 @@ override_dh_install: icebox_install
# Continue with regular dh_install
#
dh_install
+
+ #
+ # Copy package readme
+ #
+ for name in $(PACKAGE_NAMES) ; \
+ do \
+ mkdir -p $(DESTDIR)$(prefix)/share/doc/$$name ; \
+ cp debian/README.Linux $(DESTDIR)$(prefix)/share/doc/$$name/README ; \
+ done ;
+
+ cp debian/JGOODIES_LICENSE $(DESTDIR)$(prefix)/share/doc/zeroc-ice-utils-java/JGOODIES_LICENSE
override_dh_clean:
dh_clean
diff --git a/distribution/src/deb/debian/zeroc-ice-all-dev.links b/distribution/src/deb/debian/zeroc-ice-all-dev.links
new file mode 100644
index 00000000000..3fcaa01e61a
--- /dev/null
+++ b/distribution/src/deb/debian/zeroc-ice-all-dev.links
@@ -0,0 +1 @@
+/usr/share/doc/zeroc-ice-all-dev/copyright /usr/share/doc/zeroc-ice-all-dev/ICE_LICENSE \ No newline at end of file
diff --git a/distribution/src/deb/debian/zeroc-ice-all-runtime.links b/distribution/src/deb/debian/zeroc-ice-all-runtime.links
new file mode 100644
index 00000000000..6d4a2bc64f5
--- /dev/null
+++ b/distribution/src/deb/debian/zeroc-ice-all-runtime.links
@@ -0,0 +1 @@
+/usr/share/doc/zeroc-ice-all-runtime/copyright /usr/share/doc/zeroc-ice-all-runtime/ICE_LICENSE \ No newline at end of file
diff --git a/js/src/IceStorm/Makefile b/js/src/IceStorm/Makefile
index 64b8a39ac09..3a2740cf45b 100644
--- a/js/src/IceStorm/Makefile
+++ b/js/src/IceStorm/Makefile
@@ -23,7 +23,7 @@ SDIR = $(slicedir)/IceStorm
GEN_SRCS = $(patsubst $(SDIR)/%.ice, %.js, $(SLICES))
SRCS := $(GEN_SRCS)
-INSTALL_SRCS := IceStorm.js $(GEN_SRCS)
+INSTALL_SRCS := $(SRCS)
include $(top_srcdir)/config/Make.rules.js