This is an automated email from the git hooks/post-receive script. ebourg-guest pushed a commit to branch master in repository netty-tcnative.
commit 357de7c079b69a2840c1d232616d1d263f8db41b Author: Emmanuel Bourg <[email protected]> Date: Sun Aug 2 23:17:49 2015 +0200 Initial packaging --- debian/README.source | 9 ++ debian/changelog | 5 + debian/compat | 1 + debian/control | 50 ++++++++ debian/copyright | 22 ++++ debian/libnetty-tcnative-java.poms | 28 +++++ debian/libnetty-tcnative-jni.lintian-overrides | 1 + debian/maven.ignoreRules | 6 + debian/maven.properties | 4 + debian/maven.rules | 2 + debian/native-build/Makefile.am | 53 ++++++++ debian/native-build/libnetty-tcnative.la | 24 ++++ debian/native-build/m4/jni.m4 | 163 +++++++++++++++++++++++++ debian/rules | 22 ++++ debian/source/format | 1 + debian/source/lintian-overrides | 1 + debian/watch | 2 + 17 files changed, 394 insertions(+) diff --git a/debian/README.source b/debian/README.source new file mode 100644 index 0000000..998743e --- /dev/null +++ b/debian/README.source @@ -0,0 +1,9 @@ +Information about netty-tcnative +-------------------------------- + +This package was debianized using the mh_make command +from the maven-debian-helper package. + +The build system uses Maven but prevents it from downloading +anything from the Internet, making the build compliant with +the Debian policy. diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..7117bc3 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +netty-tcnative (1.1.33.Fork4-1) unstable; urgency=medium + + * Initial release (Closes: #794368) + + -- Emmanuel Bourg <[email protected]> Sun, 02 Aug 2015 23:17:44 +0200 diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..ec63514 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..73b0cd3 --- /dev/null +++ b/debian/control @@ -0,0 +1,50 @@ +Source: netty-tcnative +Section: java +Priority: optional +Maintainer: Debian Java Maintainers <[email protected]> +Uploaders: Emmanuel Bourg <[email protected]> +Build-Depends: automake, + cdbs, + debhelper (>= 9), + default-jdk, + hardening-wrapper, + libapr1-dev, + libssl-dev, + libtool, + maven-debian-helper (>= 1.5) +Build-Depends-Indep: libmaven-antrun-plugin-java, libmaven-bundle-plugin-java +Standards-Version: 3.9.6 +Vcs-Git: git://anonscm.debian.org/pkg-java/netty-tcnative.git +Vcs-Browser: https://anonscm.debian.org/cgit/pkg-java/netty-tcnative.git +Homepage: https://github.com/netty/netty-tcnative/ + +Package: libnetty-tcnative-java +Architecture: all +Depends: libnetty-tcnative-jni (>= ${source:Version}), + ${maven:Depends}, + ${misc:Depends} +Suggests: ${maven:OptionalDepends} +Description: Tomcat native fork for Netty + netty-tcnative is a fork of Tomcat Native, the native interface used by Tomcat + to leverage the Apache Portable Runtime and provide superior scalability, + performance, and better integration with native server technologies. + . + netty-tcnative includes a set of changes contributed by Twitter, Inc, such as: + * Simplified distribution and linkage of native library + * Complete mavenization of the project + * Improved OpenSSL support + +Package: libnetty-tcnative-jni +Architecture: any +Depends: ${misc:Depends}, ${shlibs:Depends} +Description: Tomcat native fork for Netty (JNI library) + netty-tcnative is a fork of Tomcat Native, the native interface used by Tomcat + to leverage the Apache Portable Runtime and provide superior scalability, + performance, and better integration with native server technologies. + . + netty-tcnative includes a set of changes contributed by Twitter, Inc, such as: + * Simplified distribution and linkage of native library + * Complete mavenization of the project + * Improved OpenSSL support + . + This package contains the JNI library. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..b86b516 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,22 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Netty Tomcat Native +Source: https://github.com/netty/netty-tcnative/ + +Files: * +Copyright: 2004-2014, The Apache Software Foundation + 2014, The Netty Project +License: Apache-2.0 + +Files: debian/* +Copyright: 2015, Emmanuel Bourg <[email protected]> +License: Apache-2.0 + +Files: debian/native-build/m4/jni.m4 +Copyright: 2009-2011, FuseSource Corp. +License: Apache-2.0 +Comment: + This file comes from the hawtjni package. + +License: Apache-2.0 + On Debian systems, the full text of the Apache-2.0 license + can be found in the file '/usr/share/common-licenses/Apache-2.0' diff --git a/debian/libnetty-tcnative-java.poms b/debian/libnetty-tcnative-java.poms new file mode 100644 index 0000000..8545d14 --- /dev/null +++ b/debian/libnetty-tcnative-java.poms @@ -0,0 +1,28 @@ +# List of POM files for the package +# Format of this file is: +# <path to pom file> [option]* +# where option can be: +# --ignore: ignore this POM and its artifact if any +# --ignore-pom: don't install the POM. To use on POM files that are created +# temporarily for certain artifacts such as Javadoc jars. [mh_install, mh_installpoms] +# --no-parent: remove the <parent> tag from the POM +# --package=<package>: an alternative package to use when installing this POM +# and its artifact +# --has-package-version: to indicate that the original version of the POM is the same as the upstream part +# of the version for the package. +# --keep-elements=<elem1,elem2>: a list of XML elements to keep in the POM +# during a clean operation with mh_cleanpom or mh_installpom +# --artifact=<path>: path to the build artifact associated with this POM, +# it will be installed when using the command mh_install. [mh_install] +# --java-lib: install the jar into /usr/share/java to comply with Debian +# packaging guidelines +# --usj-name=<name>: name to use when installing the library in /usr/share/java +# --usj-version=<version>: version to use when installing the library in /usr/share/java +# --no-usj-versionless: don't install the versionless link in /usr/share/java +# --dest-jar=<path>: the destination for the real jar. +# It will be installed with mh_install. [mh_install] +# --classifier=<classifier>: Optional, the classifier for the jar. Empty by default. +# --site-xml=<location>: Optional, the location for site.xml if it needs to be installed. +# Empty by default. [mh_install] +# +pom.xml --no-parent diff --git a/debian/libnetty-tcnative-jni.lintian-overrides b/debian/libnetty-tcnative-jni.lintian-overrides new file mode 100644 index 0000000..4c983ff --- /dev/null +++ b/debian/libnetty-tcnative-jni.lintian-overrides @@ -0,0 +1 @@ +pkg-has-shlibs-control-file-but-no-actual-shared-libs diff --git a/debian/maven.ignoreRules b/debian/maven.ignoreRules new file mode 100644 index 0000000..d0f7d4b --- /dev/null +++ b/debian/maven.ignoreRules @@ -0,0 +1,6 @@ + +kr.motd.maven os-maven-plugin * * * * +org.apache.maven.plugins maven-antrun-plugin * * * * +org.apache.maven.plugins maven-enforcer-plugin * * * * +org.apache.maven.plugins maven-release-plugin * * * * +org.fusesource.hawtjni maven-hawtjni-plugin * * * * diff --git a/debian/maven.properties b/debian/maven.properties new file mode 100644 index 0000000..7c29bd7 --- /dev/null +++ b/debian/maven.properties @@ -0,0 +1,4 @@ +# Include here properties to pass to Maven during the build. +# For example: +# maven.test.skip=true + diff --git a/debian/maven.rules b/debian/maven.rules new file mode 100644 index 0000000..4e5def9 --- /dev/null +++ b/debian/maven.rules @@ -0,0 +1,2 @@ + +io.netty netty-tcnative jar s/.*/debian/ * * diff --git a/debian/native-build/Makefile.am b/debian/native-build/Makefile.am new file mode 100644 index 0000000..7b35842 --- /dev/null +++ b/debian/native-build/Makefile.am @@ -0,0 +1,53 @@ +# --------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# --------------------------------------------------------------------------- + +ACLOCAL_AMFLAGS = -I m4 + +lib_LTLIBRARIES = libnetty-tcnative.la +# libnetty_tcnative_la_CFLAGS = +#libnetty_tcnative_la_LDFLAGS = + +libnetty_tcnative_la_SOURCES = src/sslinfo.c\ + src/shm.c\ + src/misc.c\ + src/dir.c\ + src/lock.c\ + src/stdlib.c\ + src/multicast.c\ + src/os_win32_system.c\ + src/network.c\ + src/bb.c\ + src/os.c\ + src/file.c\ + src/address.c\ + src/user.c\ + src/thread.c\ + src/error.c\ + src/proc.c\ + src/poll.c\ + src/sslcontext.c\ + src/ssl.c\ + src/sslutils.c\ + src/sslnetwork.c\ + src/os_win32_ntpipe.c\ + src/mmap.c\ + src/info.c\ + src/os_win32_registry.c\ + src/jnilib.c\ + src/pool.c\ + src/os_unix_uxpipe.c\ + src/os_unix_system.c diff --git a/debian/native-build/libnetty-tcnative.la b/debian/native-build/libnetty-tcnative.la new file mode 100644 index 0000000..574f216 --- /dev/null +++ b/debian/native-build/libnetty-tcnative.la @@ -0,0 +1,24 @@ +# libnetty-tcnative.la - a libtool library file + +# The name that we can dlopen(3). +dlname='libnetty-tcnative-@[email protected]' + +# Names of this library. +library_names='libnetty-tcnative-@[email protected] libnetty-tcnative.so' + +# Linker flags that can not go in dependency_libs. +inherited_linker_flags=' -pthread' + +# Libraries that this one depends upon. +dependency_libs=' -lssl -lcrypto -lapr' + +# Version information for libnetty-tcnative. +current=0 +age=0 +revision=0 + +# Is this an already installed library? +installed=no + +# Should we warn about portability when linking against -modules? +shouldnotlink=no diff --git a/debian/native-build/m4/jni.m4 b/debian/native-build/m4/jni.m4 new file mode 100644 index 0000000..f353919 --- /dev/null +++ b/debian/native-build/m4/jni.m4 @@ -0,0 +1,163 @@ +dnl --------------------------------------------------------------------------- +dnl Copyright (C) 2009-2011 FuseSource Corp. +dnl http://fusesource.com +dnl +dnl Licensed under the Apache License, Version 2.0 (the "License"); +dnl you may not use this file except in compliance with the License. +dnl You may obtain a copy of the License at +dnl +dnl http://www.apache.org/licenses/LICENSE-2.0 +dnl +dnl Unless required by applicable law or agreed to in writing, software +dnl distributed under the License is distributed on an "AS IS" BASIS, +dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +dnl See the License for the specific language governing permissions and +dnl limitations under the License. +dnl --------------------------------------------------------------------------- +dnl --------------------------------------------------------------------------- +dnl SYNOPSIS: +dnl +dnl WITH_JNI_JDK() +dnl +dnl Adds the --with-jni-jdk=PATH option. If not provided, it searches +dnl for the JDK in the default OS locations. +dnl +dnl This macro calls: +dnl AC_SUBST(JNI_JDK) +dnl AC_SUBST(JNI_EXTRA_CFLAGS) +dnl AC_SUBST(JNI_EXTRA_LDFLAGS) +dnl +dnl AUTHOR: <a href="http://hiramchirino.com">Hiram Chrino</a> +dnl --------------------------------------------------------------------------- + +AC_DEFUN([WITH_JNI_JDK], +[ + AC_PREREQ([2.61]) + AC_ARG_WITH(jni-jdk, + [AS_HELP_STRING([--with-jni-jdk=PATH], + [Location of the Java Development Kit. Defaults to your JAVA_HOME setting and falls back to where it is typically installed on your OS])], + [ + if test "$withval" = "no" || test "$withval" = "yes"; then + AC_MSG_ERROR([--with-jni-jdk: PATH to JDK not supplied]) + fi + CHECK_JNI_JDK([$withval], [], [AC_MSG_ERROR([JDK not found. Invalid --with-jni-jdk PATH])]) + ],[ + + if test -n "$JAVA_HOME" ; then + AC_MSG_NOTICE([JAVA_HOME was set, checking to see if it's a JDK we can use...]) + CHECK_JNI_JDK([$JAVA_HOME], [], []) + fi + + __JNI_GUESS=`which javac` + AS_IF(test -z "$JNI_JDK" && test -n "$__JNI_GUESS", [ + AC_MSG_NOTICE([javac was on your path, checking to see if it's part of a JDK we can use...]) + # transitively resolve the symbolic links to javac + while file -h "$__JNI_GUESS" 2>/dev/null | grep " symbolic link to " >/dev/null; do + __JNI_LINK=$( file -h $__JNI_GUESS | sed 's/.*symbolic link to //' | sed "s/'$//" | sed 's/^`//' ) + __JNI_GUESS=$(cd $(dirname $__JNI_GUESS); cd $(dirname $__JNI_LINK); echo "$(pwd)/$(basename $__JNI_LINK)") + done + # move 2 dirs up to the home dir... + __JNI_GUESS=$(dirname $(dirname $__JNI_GUESS)) + CHECK_JNI_JDK([$__JNI_GUESS], [], [],[]) + ],[]) + + AS_IF(test -z "$JNI_JDK", [ + case "$host_os" in + darwin*) __JNI_GUESS="/System/Library/Frameworks/JavaVM.framework";; + *) __JNI_GUESS="/usr";; + esac + AC_MSG_NOTICE([Taking a guess as to where your OS installs the JDK by default...]) + CHECK_JNI_JDK([$__JNI_GUESS], [], [AC_MSG_ERROR([JDK not found. Please use the --with-jni-jdk option])]) + ],[]) + ]) +]) + +dnl --------------------------------------------------------------------------- +dnl +dnl JNI_CHECK_JDK_HOME(PATH, [ACTION-SUCCESS], [ACTION-FAILURE]) +dnl +dnl Tests to see if the given path is a valid JDK home location with +dnl with a JNI headers and library that can be compiled against. +dnl +dnl This macro calls: +dnl +dnl AC_SUBST(JNI_JDK) +dnl AC_SUBST(JNI_EXTRA_CFLAGS) +dnl AC_SUBST(JNI_EXTRA_LDFLAGS) +dnl +dnl AUTHOR: <a href="http://hiramchirino.com">Hiram Chrino</a> +dnl --------------------------------------------------------------------------- +AC_DEFUN([CHECK_JNI_JDK],[ + AC_PREREQ([2.61]) + __JNI_JDK_HOME="$1" + AC_MSG_CHECKING(if '$__JNI_JDK_HOME' is a JDK) + + __JNI_INCLUDE="$__JNI_JDK_HOME/include" + + # OSX had to be a little different. + AS_IF(test -r "$__JNI_JDK_HOME/Headers/jni.h",[ + __JNI_INCLUDE="$__JNI_JDK_HOME/Headers" + ]) + + AS_IF(test -r "$__JNI_INCLUDE/jni.h",[ + + AS_IF(test -r "$__JNI_JDK_HOME/Headers/jni.h",[ + __JNI_INCLUDE="$__JNI_JDK_HOME/Headers" + ]) + + # Also include the os specific include dirs in the JNI_CFLAGS + __JNI_CFLAGS="-I$__JNI_INCLUDE" + case "$host_os" in + bsdi*) __JNI_INCLUDE_EXTRAS="bsdos";; + linux*) __JNI_INCLUDE_EXTRAS="linux genunix";; + osf*) __JNI_INCLUDE_EXTRAS="alpha";; + solaris*) __JNI_INCLUDE_EXTRAS="solaris";; + mingw*) __JNI_INCLUDE_EXTRAS="win32";; + cygwin*) __JNI_INCLUDE_EXTRAS="win32";; + darwin*) __JNI_INCLUDE_EXTRAS="darwin";; + *) __JNI_INCLUDE_EXTRAS="genunix";; + esac + + for f in $__JNI_INCLUDE_EXTRAS ; do + if test -d "$__JNI_INCLUDE/$f"; then + __JNI_CFLAGS="$__JNI_CFLAGS -I$__JNI_INCLUDE/$f" + fi + done + + saved_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $__JNI_CFLAGS" + JNI_VERSION="1_2" + AC_LANG_PUSH(C) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[@%:@include <jni.h>]],[[ + #ifndef JNI_VERSION_$JNI_VERSION + # error JNI version $JNI_VERSION is not supported. + #endif + ]]) + ],[ + + JNI_JDK=$"$__JNI_JDK_HOME" + JNI_EXTRA_CFLAGS="$__JNI_CFLAGS" + AC_SUBST(JNI_JDK) + AC_SUBST(JNI_EXTRA_CFLAGS) + case $host_os in + darwin*) + JNI_EXTRA_LDFLAGS="-shrext .jnilib -dynamiclib" ;; + esac + AC_SUBST(JNI_EXTRA_LDFLAGS) + + + AC_MSG_RESULT([yes]) + $2 + ],[ + AC_MSG_RESULT([no]) + $3 + ]) + AC_LANG_POP() + CPPFLAGS="$saved_CPPFLAGS" + ],[ + AC_MSG_RESULT([no]) + $3 + ]) +]) + diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..ca794f8 --- /dev/null +++ b/debian/rules @@ -0,0 +1,22 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/class/maven.mk + +JAVA_HOME := /usr/lib/jvm/default-java + +export DEB_BUILD_HARDENING=1 + +common-build-arch:: + mkdir -p target/native-build/src + cp -Rvp src/main/native-package/* target/native-build/ + cp -Rvp src/main/c/* target/native-build/src/ + cp -Rvp debian/native-build/* target/native-build/ + cd target/native-build/ ; autoreconf --force --install -I m4 ; ./configure ; make + +common-install-arch:: + mv target/native-build/.libs/libnetty-tcnative-@[email protected] target/native-build/.libs/libnetty-tcnative.so + dh_install -p libnetty-tcnative-jni target/native-build/.libs/libnetty-tcnative.so usr/lib/${DEB_HOST_MULTIARCH}/jni + +get-orig-source: + uscan --download-current-version --force-download --no-symlink diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides new file mode 100644 index 0000000..748fa14 --- /dev/null +++ b/debian/source/lintian-overrides @@ -0,0 +1 @@ +build-depends-on-obsolete-package build-depends: hardening-wrapper* diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..5ef652b --- /dev/null +++ b/debian/watch @@ -0,0 +1,2 @@ +version=3 +https://github.com/netty/netty-tcnative/tags .*/netty-tcnative-(.*).tar.gz -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/netty-tcnative.git _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

