]> Pileus Git - ~andy/sunrise/commitdiff
net-p2p/freenet: New upstream release + moved some precompiled libs into their own...
authorThomas Sachau <tommy@gentoo.org>
Tue, 26 Feb 2008 21:23:19 +0000 (21:23 +0000)
committerThomas Sachau <tommy@gentoo.org>
Tue, 26 Feb 2008 21:23:19 +0000 (21:23 +0000)
svn path=/sunrise/; revision=5764

net-p2p/freenet/ChangeLog
net-p2p/freenet/Manifest
net-p2p/freenet/files/freenet-libNativeThreadpath.patch [new file with mode: 0644]
net-p2p/freenet/files/freenet-libfec8path.patch [new file with mode: 0644]
net-p2p/freenet/freenet-0.7_beta_pre1114.ebuild [moved from net-p2p/freenet/freenet-0.7_beta_pre1112.ebuild with 77% similarity]

index 4feb98e1388ab451a34bbe10fe16b8ba144e9df6..aa47c8c96e76f155bde27985bd0bb9b3d872cff8 100644 (file)
@@ -2,6 +2,12 @@
 # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  26 Feb 2008; (Tommy[D]) tommy100@gmx.de -freenet-0.7_beta_pre1112.ebuild,
+  +freenet-0.7_beta_pre1114.ebuild,
+  +files/freenet-libNativeThreadpath.patch,
+  +files/freenet-libfec8path.patch:
+  New upstream release + moved some precompiled libs into their own ebuilds
+
   19 Feb 2008; (Tommy[D]) tommy100@gmx.de -freenet-0.7_beta_pre1111.ebuild,
   +freenet-0.7_beta_pre1112.ebuild:
   New upstream release
index 396f82570565f5a8b49b3e9b9a01b4b205759e3c..0cf08b1da4b12361fbe98c1a9ba982eb4d823dd3 100644 (file)
@@ -1,5 +1,7 @@
 AUX freenet 416 RMD160 95efeda98fe723027c74729b03fd293ca29bdc7a SHA1 796d336341796d081454ebcc45248e90fffaed91 SHA256 d3b665e8d619d995ef9cb67ed4006c96bc4fdf80e6b7923247e022268ab8bae5
-DIST freenet-sources-0.7_beta_pre1112.tar.bz2 19266249 RMD160 64d8f9ba6dde0bbf524017d6efe6688aa1e451b0 SHA1 6fcc9c1ad9974c2caa5e6260d65df0aa137a2359 SHA256 a3485ec781166b9939e243a101624006011a5b53eb51770693a330689bd19f60
-EBUILD freenet-0.7_beta_pre1112.ebuild 1389 RMD160 4b9b7c6be97feef7958e8f2cad7beadb1a986f2c SHA1 141e43094fd2822f77ad0111376434ea557e7d58 SHA256 23bfc9f87dc90559daaf38e1a4f37620f577d33e9dc6549a8110896bd99b7eb2
-MISC ChangeLog 4992 RMD160 5c7bf78ad4c5a6295a75c23f4838dd6920ff50e3 SHA1 4f6d63ef66b9568d2afb673efdbab898a0aa0f39 SHA256 8fa0a4506e5240e37455f4b4db712363357434e8addaefaf66c2c657b02bdfe3
+AUX freenet-libNativeThreadpath.patch 2186 RMD160 88d9cf4d41c4aa3002cbcd70a044ae1a999e6ba9 SHA1 a70cc47690982c34378f1125cdab61196e091d8e SHA256 46df56ccb00fe4a2730eef28f2a84bcb57415ea8cc9caea5d9949480ad2b3856
+AUX freenet-libfec8path.patch 1052 RMD160 9e54f57ea087b6b1d3c31b509c7e066c454d8d0f SHA1 2483e0bd6fff40443c4041e880dc8c20abf5b2ca SHA256 3d6ff32f4536549bcde462bf3814568687130a0858f2e610014b7b7f75568573
+DIST freenet-sources-0.7_beta_pre1114.tar.bz2 18991003 RMD160 b13b4de0ab4ca85dcfaff73db80fb58ee1e5762f SHA1 98dcb0981ee9025866453a7b855fb33fd35f0f35 SHA256 376d1e61f4902fa8ce0bf55b3c0eb6c6e849c1175615b44750e6ae7430ab61f3
+EBUILD freenet-0.7_beta_pre1114.ebuild 1759 RMD160 123fe0a2c0f865c2317974fd4b88b543781e8956 SHA1 915f87b73ecb1687c1870c6c18603a20951be183 SHA256 0d9b8f1853d33135b2d2a0498c5967a6e37ded93fc9ad80d38aff8207cb6098b
+MISC ChangeLog 5261 RMD160 5980b5269a582bd0bf88eea2003860646759c9a1 SHA1 661fb98e46297cf0b48212241e228e02dd561a65 SHA256 004e6424d6d89a3d776b795d530d2ed3f715991f817fbe97d3b2202e51112998
 MISC metadata.xml 170 RMD160 645927a396fdc21cdeb089fe42c5397332420ea6 SHA1 ac7f48a14fec325926f9ce1be8fbf1f311b4f2e4 SHA256 d797a2ec6f9dc516c9f9c1a758ee87ad3e8c43101b5dc76c2f872d5bd4639b42
diff --git a/net-p2p/freenet/files/freenet-libNativeThreadpath.patch b/net-p2p/freenet/files/freenet-libNativeThreadpath.patch
new file mode 100644 (file)
index 0000000..368bc0d
--- /dev/null
@@ -0,0 +1,56 @@
+--- freenet/src/freenet/support/LibraryLoader.java     2008-02-26 18:01:40.000000000 +0100
++++ freenet/src/freenet/support/LibraryLoader.java.new 2008-02-26 20:39:02.000000000 +0100
+@@ -18,50 +18,12 @@
+  */
+ public class LibraryLoader {
+       
+-      public static String getSimplifiedArchitecture() {
+-              String arch;
+-              if(System.getProperty("os.arch").toLowerCase().matches("(i?[x0-9]86_64|amd64)")) {
+-                      arch = "amd64";
+-              } else if(System.getProperty("os.arch").toLowerCase().matches("(ppc)")) {
+-                      arch = "ppc";
+-              } else {
+-                      arch = "i386";
+-              }
+-              
+-              return arch;
+-      }
+-      
+       public static void loadNative(String path, String libraryName) {
+-              final boolean isWindows = File.pathSeparatorChar == '\\';
+-              final String libraryNameWithPrefix = (isWindows ? "" : "lib") + libraryName;
+-              final String libraryNameWithPrefixAndArch = libraryNameWithPrefix + '-' + getSimplifiedArchitecture();
+-              final String libraryNameWithPrefixAndArchAndSuffix = libraryNameWithPrefixAndArch + (isWindows ? ".dll" : ".so");
+-              String resourceName = path + libraryNameWithPrefixAndArchAndSuffix;
+               
+               try {
+-                      // Get the resource
+-                      URL resource = LibraryLoader.class.getResource(resourceName);
+-                      
+-                      // Get input stream from jar resource
+-                      InputStream inputStream = resource.openStream();
+-
+-                      // Copy resource to filesystem in a temp folder with a unique name
+-                      File temporaryLib = File.createTempFile(libraryNameWithPrefixAndArch, ".tmp");
+-                      
+-                      // Delete on exit the dll
+-                      temporaryLib.deleteOnExit();
+-                      
+-                      FileOutputStream outputStream = new FileOutputStream(temporaryLib);
+-                      byte[] array = new byte[2048];
+-                      int read = 0;
+-                      while((read = inputStream.read(array)) > 0) {
+-                              outputStream.write(array, 0, read);
+-                      }
+-                      outputStream.close();
+-
+-                      // Finally, load the dll
+-                      System.out.println("Attempting to load the "+libraryName+" library ["+resource+']');
+-                      System.load(temporaryLib.getPath());
++                      File temporaryLib=new File("lib/lib"+libraryName+".so");
++                      System.out.println("Attempting to load the NativeThread library ["+temporaryLib.getAbsolutePath()+']');
++                      System.load(temporaryLib.getAbsolutePath());
+               } catch(Throwable e) {
+                       e.printStackTrace();
+               }
diff --git a/net-p2p/freenet/files/freenet-libfec8path.patch b/net-p2p/freenet/files/freenet-libfec8path.patch
new file mode 100644 (file)
index 0000000..7a08e55
--- /dev/null
@@ -0,0 +1,28 @@
+--- contrib/fec/fec_src/com/onionnetworks/fec/Native8Code.java.old     2008-02-21 19:46:43.000000000 +0100
++++ contrib/fec/fec_src/com/onionnetworks/fec/Native8Code.java 2008-02-21 19:27:10.000000000 +0100
+@@ -3,6 +3,7 @@
+ //import java.security.AccessController;
+ //import sun.security.action.*;
+ import com.onionnetworks.util.*;
++import java.io.File;
+ /**
+  * This class is the frontend for the JNI wrapper for the C implementation of
+@@ -21,14 +22,9 @@
+     private int code;
+     
+     static {
+-        String path = NativeDeployer.getLibraryPath
+-            (Native8Code.class.getClassLoader(),"fec8");
+-        if (path != null) {
+-            System.load(path);
+-        } else {
+-            System.out.println("Unable to find native library for fec8 for platform "+NativeDeployer.OS_ARCH);
+-          System.out.println(path);
+-        }
++                      File path = new File("lib/libfec8.so");
++                      System.out.println("Loading FEC lib ["+path.getAbsolutePath()+']');
++                      System.load(path.getAbsolutePath());
+     }
+     
+     public Native8Code(int k, int n) {
similarity index 77%
rename from net-p2p/freenet/freenet-0.7_beta_pre1112.ebuild
rename to net-p2p/freenet/freenet-0.7_beta_pre1114.ebuild
index 0cd1d9a9fc6e4a4ed1adc1565072877981cef45c..df8a0a9925e8e3699efe484fcc99c350e0fab9c2 100644 (file)
@@ -3,7 +3,6 @@
 # $Header: $
 
 inherit eutils
-
 DESCRIPTION="An encrypted network without censorship"
 HOMEPAGE="http://www.freenetproject.org/"
 SRC_URI="http://dev.gentooexperimental.org/~tommy/${PN}-sources-${PV}.tar.bz2"
@@ -15,8 +14,10 @@ IUSE=""
 
 DEPEND="dev-java/sun-jdk
        dev-java/ant"
-RDEPEND="virtual/jre"
-
+RDEPEND="virtual/jre
+       net-p2p/fec
+       net-p2p/nativebiginteger"
+PDEPEND="net-p2p/NativeThread"
 S="${WORKDIR}/${PN}"
 
 QA_TEXTRELS="opt/freenet/lib/libwrapper-linux-x86-32.so"
@@ -26,10 +27,20 @@ pkg_setup() {
        enewuser freenet -1 -1 /opt/freenet freenet
 }
 
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+       epatch "${FILESDIR}"/freenet-libNativeThreadpath.patch "${FILESDIR}"/freenet-libfec8path.patch
+}
+
 src_install() {
        emake install || die "emake install failed"
        doinitd "${FILESDIR}"/freenet
        dodoc license/README license/LICENSE.Mantissa license/LICENSE.Freenet
+       rm "${D}"opt/freenet/{bin,lib}/*wrapper* "${D}"opt/freenet/wrapper.jar
+       into /opt/freenet
+       dobin bin/wrapper-linux-x86-32
+       dolib.so lib/libwrapper-linux-x86-32.so
 }
 
 pkg_postinst () {