The sole consumer in Nixpkgs of `releaseTools.antBuild` is `pkgs/development/libraries/junit`, which has been broken since 2015-09-08. The sole consumer in Nixpkgs of `junit` is `pkgs/development/libraries/junixsocket`, which hasn't built due to `junit` since 2015-09-08. All three are removed due to their obvious lack of use. All other packages in Nixpkgs depending on junit consume `pkgs/development/java-modules/junit`, which is not broken. Any downstreams that have kept using these `junit` or `junixsocket` packages since 2015-09-08 have basically already vendored the packages via patching them, so no aliases are provided.main
parent
29fedf210f
commit
a1ed62e586
@ -1,123 +0,0 @@ |
||||
{ src |
||||
, pkgs |
||||
, lib |
||||
, stdenv ? pkgs.stdenv |
||||
, name |
||||
, antTargets ? [] |
||||
, jars ? [] |
||||
, jarWrappers ? [] |
||||
, antProperties ? [] |
||||
, antBuildInputs ? [] |
||||
, buildfile ? "build.xml" |
||||
, ant ? pkgs.ant |
||||
, jre ? pkgs.jdk |
||||
, hydraAntLogger ? pkgs.hydraAntLogger |
||||
, zip ? pkgs.zip |
||||
, unzip ? pkgs.unzip |
||||
, ... } @ args: |
||||
|
||||
let |
||||
antFlags = "-f ${buildfile} " + lib.concatMapStrings ({name, value}: "-D${name}=${value} " ) antProperties ; |
||||
in |
||||
stdenv.mkDerivation ( |
||||
|
||||
{ |
||||
inherit jre ant; |
||||
showBuildStats = true; |
||||
|
||||
postPhases = |
||||
["generateWrappersPhase" "finalPhase"]; |
||||
|
||||
prePhases = |
||||
["antSetupPhase"]; |
||||
|
||||
antSetupPhase = with lib; '' |
||||
if test "$hydraAntLogger" != "" ; then |
||||
export ANT_ARGS="-logger org.hydra.ant.HydraLogger -lib `ls $hydraAntLogger/share/java/*.jar | head -1`" |
||||
fi |
||||
for abi in ${concatStringsSep " " (map (f: "`find ${f} -name '*.jar'`") antBuildInputs)}; do |
||||
export ANT_ARGS="$ANT_ARGS -lib $abi" |
||||
done |
||||
''; |
||||
|
||||
installPhase = '' |
||||
runHook preInstall |
||||
|
||||
mkdir -p $out/share/java |
||||
${ if jars == [] then '' |
||||
find . -name "*.jar" | xargs -I{} cp -v {} $out/share/java |
||||
'' else lib.concatMapStrings (j: '' |
||||
cp -v ${j} $out/share/java |
||||
'') jars } |
||||
|
||||
. ${./functions.sh} |
||||
for j in $out/share/java/*.jar ; do |
||||
canonicalizeJar $j |
||||
echo file jar $j >> $out/nix-support/hydra-build-products |
||||
done |
||||
|
||||
runHook postInstall |
||||
''; |
||||
|
||||
generateWrappersPhase = |
||||
let |
||||
cp = w: "-cp '${lib.optionalString (w ? classPath) w.classPath}${lib.optionalString (w ? mainClass) ":$out/share/java/*"}'"; |
||||
in |
||||
'' |
||||
header "Generating jar wrappers" |
||||
'' + (lib.concatMapStrings (w: '' |
||||
|
||||
mkdir -p $out/bin |
||||
cat >> $out/bin/${w.name} <<EOF |
||||
#!${pkgs.runtimeShell} |
||||
export JAVA_HOME=$jre |
||||
$jre/bin/java ${cp w} ${if w ? mainClass then w.mainClass else "-jar ${w.jar}"} \$@ |
||||
EOF |
||||
|
||||
chmod a+x $out/bin/${w.name} || exit 1 |
||||
'') jarWrappers) + '' |
||||
closeNest |
||||
''; |
||||
|
||||
buildPhase = '' |
||||
runHook preBuild |
||||
'' + (if antTargets == [] then '' |
||||
header "Building default ant target" |
||||
ant ${antFlags} |
||||
closeNest |
||||
'' else lib.concatMapStrings (t: '' |
||||
header "Building '${t}' target" |
||||
ant ${antFlags} ${t} |
||||
closeNest |
||||
'') antTargets) + '' |
||||
runHook postBuild |
||||
''; |
||||
|
||||
finalPhase = |
||||
'' |
||||
# Propagate the release name of the source tarball. This is |
||||
# to get nice package names in channels. |
||||
if test -e $origSrc/nix-support/hydra-release-name; then |
||||
cp $origSrc/nix-support/hydra-release-name $out/nix-support/hydra-release-name |
||||
fi |
||||
''; |
||||
} |
||||
|
||||
// removeAttrs args ["antProperties" "buildInputs" "pkgs" "lib" "jarWrappers"] // |
||||
|
||||
{ |
||||
name = name + (if src ? version then "-" + src.version else ""); |
||||
|
||||
nativeBuildInputs = [ unzip ]; |
||||
buildInputs = [ant jre zip] ++ lib.optional (args ? buildInputs) args.buildInputs ; |
||||
|
||||
postHook = '' |
||||
mkdir -p $out/nix-support |
||||
echo "$system" > $out/nix-support/system |
||||
. ${./functions.sh} |
||||
|
||||
origSrc=$src |
||||
src=$(findTarball $src) |
||||
''; |
||||
} |
||||
) |
@ -1,28 +0,0 @@ |
||||
{ lib, antBuild, fetchgit, perl }: |
||||
|
||||
let |
||||
version = "4.11"; |
||||
in antBuild { |
||||
name = "junit-${version}"; |
||||
|
||||
# I think this is only used to generate the docs, and will likely disappear |
||||
# with the next release of junit since its build system completely changes. |
||||
buildInputs = [perl]; |
||||
|
||||
src = fetchgit { |
||||
url = "https://github.com/junit-team/junit.git"; |
||||
sha256 = "1cn5dhs6vpbfbcmnm2vb1212n0kblv8cxrvnwmksjxd6bzlkac1k"; |
||||
rev = "c2e4d911fadfbd64444fb285342a8f1b72336169"; |
||||
}; |
||||
|
||||
antProperties = [ |
||||
{ name = "version"; value = version; } |
||||
]; |
||||
|
||||
meta = { |
||||
homepage = "http://www.junit.org/"; |
||||
description = "A framework for repeatable tests in Java"; |
||||
license = lib.licenses.epl10; |
||||
broken = true; |
||||
}; |
||||
} |
@ -1,20 +0,0 @@ |
||||
diff -rc junixsocket-1.3/src/main/org/newsclub/net/unix/NativeUnixSocket.java junixsocket-1.3-new/src/main/org/newsclub/net/unix/NativeUnixSocket.java
|
||||
*** junixsocket-1.3/src/main/org/newsclub/net/unix/NativeUnixSocket.java Tue Jul 20 14:59:41 2010
|
||||
--- junixsocket-1.3-new/src/main/org/newsclub/net/unix/NativeUnixSocket.java Sun May 27 22:26:15 2012
|
||||
***************
|
||||
*** 43,49 ****
|
||||
String prefix = "lib";
|
||||
String suffix = ".so";
|
||||
String os = osName.replaceAll("[^A-Za-z0-9]", "").toLowerCase();
|
||||
! if ("macosx".equals(os)) {
|
||||
suffix = ".dylib";
|
||||
} else if ("linux".equals(os) || "freebsd".equals(os)
|
||||
|| "sunos".equals(os)) {
|
||||
--- 43,49 ----
|
||||
String prefix = "lib";
|
||||
String suffix = ".so";
|
||||
String os = osName.replaceAll("[^A-Za-z0-9]", "").toLowerCase();
|
||||
! if ("macosx".equals(os) || "darwin".equals(os)) {
|
||||
suffix = ".dylib";
|
||||
} else if ("linux".equals(os) || "freebsd".equals(os)
|
||||
|| "sunos".equals(os)) {
|
@ -1,42 +0,0 @@ |
||||
{ lib, stdenv, fetchurl, ant, jdk, junit }: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
name = "junixsocket-1.3"; |
||||
|
||||
src = fetchurl { |
||||
url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/junixsocket/${name}-src.tar.bz2"; |
||||
sha256 = "0c6p8vmiv5nk8i6g1hgivnl3mpb2k3lhjjz0ss9dlirisfrxf1ym"; |
||||
}; |
||||
|
||||
patches = [ ./darwin.patch ]; |
||||
|
||||
buildInputs = [ ant jdk junit ]; |
||||
|
||||
preConfigure = |
||||
'' |
||||
substituteInPlace src/main/org/newsclub/net/unix/NativeUnixSocketConfig.java \ |
||||
--replace /opt/newsclub/lib-native $out/lib |
||||
''; |
||||
|
||||
buildPhase = "ant"; |
||||
|
||||
ANT_ARGS = |
||||
# Note that our OpenJDK on Darwin is currently 32-bit, so we have to build a 32-bit dylib. |
||||
(if stdenv.is64bit then [ "-Dskip32=true" ] else [ "-Dskip64=true" ]) |
||||
++ [ "-Dgcc=${stdenv.cc.targetPrefix}cc" "-Dant.build.javac.source=1.6" ] |
||||
++ lib.optional stdenv.isDarwin "-DisMac=true"; |
||||
|
||||
installPhase = |
||||
'' |
||||
mkdir -p $out/share/java $out/lib |
||||
cp -v dist/*.jar $out/share/java |
||||
cp -v lib-native/*.so lib-native/*.dylib $out/lib/ |
||||
''; |
||||
|
||||
meta = { |
||||
description = "A Java/JNI library for using Unix Domain Sockets from Java"; |
||||
homepage = "https://github.com/kohlschutter/junixsocket"; |
||||
license = lib.licenses.asl20; |
||||
platforms = lib.platforms.linux ++ lib.platforms.darwin; |
||||
}; |
||||
} |
Loading…
Reference in new issue