[med-svn] r19954 - in trunk/packages/libsis-base-java/trunk/debian: . build_native patches
Olivier Sallou
osallou at moszumanska.debian.org
Sun Aug 16 07:42:57 UTC 2015
Author: osallou
Date: 2015-08-16 07:42:56 +0000 (Sun, 16 Aug 2015)
New Revision: 19954
Added:
trunk/packages/libsis-base-java/trunk/debian/build_native/
trunk/packages/libsis-base-java/trunk/debian/build_native/Makefile.am
trunk/packages/libsis-base-java/trunk/debian/build_native/configure.ac
trunk/packages/libsis-base-java/trunk/debian/get-orig-source
trunk/packages/libsis-base-java/trunk/debian/libsis-base-java.jlibs
trunk/packages/libsis-base-java/trunk/debian/libsis-base.install
trunk/packages/libsis-base-java/trunk/debian/patches/fix_tests.patch
trunk/packages/libsis-base-java/trunk/debian/patches/load_native_debian.patch
Removed:
trunk/packages/libsis-base-java/trunk/debian/jlibs
Modified:
trunk/packages/libsis-base-java/trunk/debian/README.Debian
trunk/packages/libsis-base-java/trunk/debian/changelog
trunk/packages/libsis-base-java/trunk/debian/control
trunk/packages/libsis-base-java/trunk/debian/copyright
trunk/packages/libsis-base-java/trunk/debian/patches/remove_ch_rinn_imports.patch
trunk/packages/libsis-base-java/trunk/debian/patches/series
trunk/packages/libsis-base-java/trunk/debian/rules
Log:
add get-orig-source and update rules/patches to compile native libraries, watch file not yet set
Modified: trunk/packages/libsis-base-java/trunk/debian/README.Debian
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/README.Debian 2015-08-15 18:22:34 UTC (rev 19953)
+++ trunk/packages/libsis-base-java/trunk/debian/README.Debian 2015-08-16 07:42:56 UTC (rev 19954)
@@ -5,3 +5,8 @@
It does not seem to have a web page and does not seem to be used outside of
internal ETH SIS projects.
+
+
+native libraries are put in /usr/lib/sis-base
+Jar files need "native.libpath" system property to be set to find the library:
+ java ... -Dnative.libpath=/usr/lib/sis-base ...
Added: trunk/packages/libsis-base-java/trunk/debian/build_native/Makefile.am
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/build_native/Makefile.am (rev 0)
+++ trunk/packages/libsis-base-java/trunk/debian/build_native/Makefile.am 2015-08-16 07:42:56 UTC (rev 19954)
@@ -0,0 +1,7 @@
+AM_CFLAGS=-I/usr/lib/jvm/default-java/include -I/usr/lib/jvm/default-java/include/linux -DMACHINE_BYTE_ORDER=1
+
+lib_LTLIBRARIES = libcisd_unix.la libcisd_nativedata.la
+libcisd_unix_la_SOURCES = unix.c
+#libcisd_unix_la_LD_FLAGS =
+libcisd_nativedata_la_SOURCES = copyByteChar.c copyByteDouble.c copyByteFloat.c copyByteInt.c copyByteLong.c copyByteShort.c copyCommon.c
+#libcisd_nativedata_la_LDFLAGS = -DMACHINE_BYTE_ORDER=1
Added: trunk/packages/libsis-base-java/trunk/debian/build_native/configure.ac
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/build_native/configure.ac (rev 0)
+++ trunk/packages/libsis-base-java/trunk/debian/build_native/configure.ac 2015-08-16 07:42:56 UTC (rev 19954)
@@ -0,0 +1,28 @@
+# -*- Autoconf -*-
+# Process this file with autoconf to produce a configure script.
+
+AC_PREREQ([2.69])
+AC_INIT([iscd], [1.14], [osallou at debian.org])
+AC_CONFIG_SRCDIR([copyByteFloat.c])
+AC_CONFIG_HEADERS([config.h])
+AM_INIT_AUTOMAKE
+LT_INIT
+
+# Checks for programs.
+AC_PROG_CC
+
+# Checks for libraries.
+
+# Checks for header files.
+AC_CHECK_HEADERS([string.h unistd.h])
+
+# Checks for typedefs, structures, and compiler characteristics.
+AC_CHECK_MEMBERS([struct stat.st_blksize])
+AC_STRUCT_ST_BLOCKS
+
+# Checks for library functions.
+AC_FUNC_CHOWN
+AC_CHECK_FUNCS([strerror])
+
+AC_CONFIG_FILES([Makefile])
+AC_OUTPUT
Modified: trunk/packages/libsis-base-java/trunk/debian/changelog
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/changelog 2015-08-15 18:22:34 UTC (rev 19953)
+++ trunk/packages/libsis-base-java/trunk/debian/changelog 2015-08-16 07:42:56 UTC (rev 19954)
@@ -1,5 +1,6 @@
-libsis-base-java (14.12.0-0biolinux1) trusty; urgency=medium
+libsis-base-java (14.12.0-1) UNRELEASED; urgency=medium
- * Build for Trusty
+ [ Team upload]
+ * First package (Closes: #TODO)
-- Tim Booth <tbooth at ceh.ac.uk> Wed, 12 Aug 2015 12:15:17 +0100
Modified: trunk/packages/libsis-base-java/trunk/debian/control
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/control 2015-08-15 18:22:34 UTC (rev 19953)
+++ trunk/packages/libsis-base-java/trunk/debian/control 2015-08-16 07:42:56 UTC (rev 19954)
@@ -1,15 +1,28 @@
Source: libsis-base-java
Section: java
Priority: extra
-Maintainer: Tim Booth <tbooth at ceh.ac.uk>
+Maintainer: Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
+Uploaders: Tim Booth <tbooth at ceh.ac.uk>, Olivier Sallou <osallou at debian.org>
Build-Depends: debhelper (>= 9), default-jdk, javahelper,
libcommons-lang-java,
libcommons-io-java,
- testng
-Standards-Version: 3.9.5
+ testng,
+ autotools-dev, dh-autoreconf, libtool
+Standards-Version: 3.9.6
+Homepage: http://svncisd.ethz.ch/repos/cisd/base/tags/release/14.12.x/14.12.0/base
+Vcs-Svn: svn://anonscm.debian.org/debian-med/trunk/packages/libsis-base-java/trunk/
+Vcs-Browser: http://anonscm.debian.org/viewvc/debian-med/trunk/packages/libsis-base-java/trunk/
+
Package: libsis-base-java
Architecture: all
-Depends: ${misc:Depends}, ${java:Depends}
+Depends: ${misc:Depends}, ${java:Depends}, libsis-base
Description: Base libraries used by software from the SIS division at ETH Zurich
This library supplies some utility classes needed for libraries like sis-jhdf5
+
+Package: libsis-base
+Architecture: any
+Section: libs
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Native libraries used by libsis-base-java
+ Those library are called via JNI by linsis-base-java jar files.
Modified: trunk/packages/libsis-base-java/trunk/debian/copyright
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/copyright 2015-08-15 18:22:34 UTC (rev 19953)
+++ trunk/packages/libsis-base-java/trunk/debian/copyright 2015-08-16 07:42:56 UTC (rev 19954)
@@ -10,5 +10,9 @@
License in ‘/usr/share/common-licenses/Apache-2.0’.
Files: debian/*
-Copyright: © Tim Booth <tbooth at ceh.ac.uk>
-License: Whatever
+Copyright: 2015 Tim Booth <tbooth at ceh.ac.uk>
+ 2015 Olivier Sallou <osallou at debian.org>
+License: GPL-3
+ On Debian systems, the full text of the GNU General Public
+ License version 3 can be found in the file
+ `/usr/share/common-licenses/GPL-3'
Added: trunk/packages/libsis-base-java/trunk/debian/get-orig-source
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/get-orig-source (rev 0)
+++ trunk/packages/libsis-base-java/trunk/debian/get-orig-source 2015-08-16 07:42:56 UTC (rev 19954)
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+set -e
+
+PKG=`dpkg-parsechangelog | awk '/^Source/ { print $2 }'`
+
+VERSION=`dpkg-parsechangelog | awk '/^Version:/ { print $2 }' | sed 's/\([0-9\.]\+\)-[0-9]\+$/\1/'`
+
+cd ..
+mkdir -p tarballs
+cd tarballs
+
+svn export http://svncisd.ethz.ch/repos/cisd/base/tags/release/14.12.x/14.12.0/base ${PKG}-${VERSION}
+
+GZIP="--best --no-name" tar --owner=root --group=root --mode=a+rX --exclude-vcs -caf "$PKG"_"$VERSION".orig.tar.xz "$PKG"-"$VERSION"
+rm -rf "$PKG"-"$VERSION"
+
Property changes on: trunk/packages/libsis-base-java/trunk/debian/get-orig-source
___________________________________________________________________
Added: svn:executable
+ *
Deleted: trunk/packages/libsis-base-java/trunk/debian/jlibs
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/jlibs 2015-08-15 18:22:34 UTC (rev 19953)
+++ trunk/packages/libsis-base-java/trunk/debian/jlibs 2015-08-16 07:42:56 UTC (rev 19954)
@@ -1 +0,0 @@
-*.jar
Copied: trunk/packages/libsis-base-java/trunk/debian/libsis-base-java.jlibs (from rev 19953, trunk/packages/libsis-base-java/trunk/debian/jlibs)
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/libsis-base-java.jlibs (rev 0)
+++ trunk/packages/libsis-base-java/trunk/debian/libsis-base-java.jlibs 2015-08-16 07:42:56 UTC (rev 19954)
@@ -0,0 +1 @@
+sis-base.jar
Added: trunk/packages/libsis-base-java/trunk/debian/libsis-base.install
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/libsis-base.install (rev 0)
+++ trunk/packages/libsis-base-java/trunk/debian/libsis-base.install 2015-08-16 07:42:56 UTC (rev 19954)
@@ -0,0 +1 @@
+source/c/.libs/lib*.so.* usr/lib/sis-base/
Added: trunk/packages/libsis-base-java/trunk/debian/patches/fix_tests.patch
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/patches/fix_tests.patch (rev 0)
+++ trunk/packages/libsis-base-java/trunk/debian/patches/fix_tests.patch 2015-08-16 07:42:56 UTC (rev 19954)
@@ -0,0 +1,65 @@
+Subject: Tests made assumption of locale english language
+Description: some tests checks the Unix error message content,
+ which causes an error when locale is not english. This patch
+ disable those tests.
+ Update also uid/gid tests assuming non root user.
+Forwarded: yes
+Author: Olivier Sallou <osallou at debian.org>
+--- a/sourceTest/java/ch/systemsx/cisd/base/unix/UnixTests.java
++++ b/sourceTest/java/ch/systemsx/cisd/base/unix/UnixTests.java
+@@ -115,7 +115,7 @@
+ assertTrue(info.isSymbolicLink());
+ final Stat info2 = Unix.tryGetFileInfo(s.getAbsolutePath());
+ assertNull(info2);
+- assertEquals("No such file or directory", Unix.getLastError());
++ //assertEquals("No such file or directory", Unix.getLastError());
+ }
+
+ @Test(groups =
+@@ -125,10 +125,10 @@
+ final File s = new File(workingDirectory, "nonExistent");
+ final Stat info = Unix.tryGetLinkInfo(s.getAbsolutePath());
+ assertNull(info);
+- assertEquals("No such file or directory", Unix.getLastError());
++ //assertEquals("No such file or directory", Unix.getLastError());
+ final Stat info2 = Unix.tryGetFileInfo(s.getAbsolutePath());
+ assertNull(info2);
+- assertEquals("No such file or directory", Unix.getLastError());
++ //assertEquals("No such file or directory", Unix.getLastError());
+ }
+
+ @Test(groups =
+@@ -164,14 +164,14 @@
+ { "requires_unix" })
+ public void testGetUid()
+ {
+- assertTrue(Unix.getUid() > 0);
++ assertTrue(Unix.getUid() >= 0);
+ }
+
+ @Test(groups =
+ { "requires_unix" })
+ public void testGetEuid()
+ {
+- assertTrue(Unix.getEuid() > 0);
++ assertTrue(Unix.getEuid() >= 0);
+ assertEquals(Unix.getUid(), Unix.getEuid());
+ }
+
+@@ -179,14 +179,14 @@
+ { "requires_unix" })
+ public void testGetGid()
+ {
+- assertTrue(Unix.getGid() > 0);
++ assertTrue(Unix.getGid() >= 0);
+ }
+
+ @Test(groups =
+ { "requires_unix" })
+ public void testGetEgid()
+ {
+- assertTrue(Unix.getEgid() > 0);
++ assertTrue(Unix.getEgid() >= 0);
+ assertEquals(Unix.getGid(), Unix.getEgid());
+ }
+
Added: trunk/packages/libsis-base-java/trunk/debian/patches/load_native_debian.patch
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/patches/load_native_debian.patch (rev 0)
+++ trunk/packages/libsis-base-java/trunk/debian/patches/load_native_debian.patch 2015-08-16 07:42:56 UTC (rev 19954)
@@ -0,0 +1,17 @@
+Subject: fix way to load native libraries
+Description: upstream loads .so file (not using .so.0 and search in a
+ directory containing specific arch name. Modify it to use .so.0 and
+ search in native.libpath directly.
+--- a/source/java/ch/systemsx/cisd/base/utilities/NativeLibraryUtilities.java
++++ b/source/java/ch/systemsx/cisd/base/utilities/NativeLibraryUtilities.java
+@@ -147,8 +147,8 @@
+
+ private static String getLibPath(final String prefix, final String libraryName)
+ {
+- return String.format("%s/%s/%s/%s%s.%s", prefix, libraryName, OSUtilities
+- .getCompatibleComputerPlatform(), JNI_LIB_PREFIX, libraryName, JNI_LIB_EXTENSION);
++ return String.format("%s/%cisd_%s.%s.0", prefix,
++ JNI_LIB_PREFIX, libraryName, JNI_LIB_EXTENSION);
+ }
+
+ }
Modified: trunk/packages/libsis-base-java/trunk/debian/patches/remove_ch_rinn_imports.patch
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/patches/remove_ch_rinn_imports.patch 2015-08-15 18:22:34 UTC (rev 19953)
+++ trunk/packages/libsis-base-java/trunk/debian/patches/remove_ch_rinn_imports.patch 2015-08-16 07:42:56 UTC (rev 19954)
@@ -1,8 +1,8 @@
We don't care if the interface is private or public, as it makes no
difference to the running code.
I have no idea where the code for this decorator is in any case.
---- a/ch/systemsx/cisd/base/unix/Unix.java
-+++ b/ch/systemsx/cisd/base/unix/Unix.java
+--- a/source/java/ch/systemsx/cisd/base/unix/Unix.java
++++ b/source/java/ch/systemsx/cisd/base/unix/Unix.java
@@ -19,7 +19,6 @@
import java.io.File;
import java.io.IOException;
@@ -25,3 +25,21 @@
static boolean isProcessRunningPS(int pid)
{
try
+--- a/sourceTest/java/ch/systemsx/cisd/base/unix/UnixTests.java
++++ b/sourceTest/java/ch/systemsx/cisd/base/unix/UnixTests.java
+@@ -24,7 +24,6 @@
+ import org.apache.commons.io.FileUtils;
+ import org.testng.annotations.Test;
+
+-import ch.rinn.restrictions.Friend;
+ import ch.systemsx.cisd.base.BuildAndEnvironmentInfo;
+ import ch.systemsx.cisd.base.tests.AbstractFileSystemTestCase;
+ import ch.systemsx.cisd.base.unix.Unix.Group;
+@@ -36,7 +35,6 @@
+ *
+ * @author Bernd Rinn
+ */
+- at Friend(toClasses = Unix.class)
+ public class UnixTests extends AbstractFileSystemTestCase
+ {
+
Modified: trunk/packages/libsis-base-java/trunk/debian/patches/series
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/patches/series 2015-08-15 18:22:34 UTC (rev 19953)
+++ trunk/packages/libsis-base-java/trunk/debian/patches/series 2015-08-16 07:42:56 UTC (rev 19954)
@@ -1 +1,3 @@
remove_ch_rinn_imports.patch
+load_native_debian.patch
+fix_tests.patch
Modified: trunk/packages/libsis-base-java/trunk/debian/rules
===================================================================
--- trunk/packages/libsis-base-java/trunk/debian/rules 2015-08-15 18:22:34 UTC (rev 19953)
+++ trunk/packages/libsis-base-java/trunk/debian/rules 2015-08-16 07:42:56 UTC (rev 19954)
@@ -5,15 +5,42 @@
export CLASSPATH=/usr/share/java/commons-lang.jar:/usr/share/java/commons-io.jar:/usr/share/java/testng.jar
+DPKG_EXPORT_BUILDFLAGS = 1
+include /usr/share/dpkg/buildflags.mk
+
+get-orig-source:
+ . debian/get-orig-source
+
%:
dh $@ --with javahelper
+override_dh_auto_configure:
+ cp debian/build_native/* source/c
+ cd source/c && autoreconf -i
+ dh_auto_configure
+
+#override_dh_auto_install:
+# cd source/c && make install
+# dh_auto_install
+
override_dh_auto_clean:
- rm -rf src lib build *.jar
+# cp debian/build_native/* source/c
+# cd source/c && autoreconf -i && ./configure
+# cd source/c ; make clean
+ if test -e source/c/Makefile; then cd source/c; make clean; fi
+ rm -rf source/c/configure* source/c/Makefile* source/c/autom4te.cache
+ rm -rf src lib build *.jar test
#find test -name '*.class' -delete
override_dh_auto_build:
# Avoids jh_build thinking that files in .svn or .pc are things it
# needs to compile.
- mkdir src ; cp -r ch src
+ mkdir src ; cp -r source/java/ch src
jh_build sis-base.jar src
+ cd source/c ; ./configure && make
+
+override_dh_auto_test:
+ dh_auto_test
+ mkdir test ; cp -r source/java/ch test ; cp -r sourceTest/java/ch test
+ jh_build sis-base-test.jar test
+ java -Dnative.libpath=source/c/.libs -classpath sis-base-test.jar ch.systemsx.cisd.base.AllTests
More information about the debian-med-commit
mailing list