portmidi: New package in version 217.

This uses a patch from Gentoo to disable Java support for now, as it is
not needed for supporting Mixxx (which is the package I'm preparing).
Hopefully, the patch will be applied upstream so we can safely drop it
here.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
This commit is contained in:
aszlig 2013-10-28 03:09:10 +01:00
parent a80598b535
commit 46b2bd427c
No known key found for this signature in database
GPG Key ID: D0EBD0EC8C2DC961
2 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,54 @@
{ stdenv, fetchurl, unzip, cmake, /*openjdk,*/ alsaLib }:
stdenv.mkDerivation rec {
name = "portmidi-${version}";
version = "217";
src = fetchurl {
url = "mirror://sourceforge/portmedia/portmidi-src-${version}.zip";
sha256 = "03rfsk7z6rdahq2ihy5k13qjzgx757f75yqka88v3gc0pn9ais88";
};
cmakeFlags = let
#base = "${openjdk}/jre/lib/${openjdk.architecture}";
in [
"-DPORTMIDI_ENABLE_JAVA=0"
/* TODO: Fix Java support.
"-DJAVA_AWT_LIBRARY=${base}/libawt.so"
"-DJAVA_JVM_LIBRARY=${base}/server/libjvm.so"
*/
"-DCMAKE_ARCHIVE_OUTPUT_DIRECTORY=Release"
"-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=Release"
"-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=Release"
];
# XXX: This is to deactivate Java support.
patches = stdenv.lib.singleton (fetchurl rec {
url = "https://raw.github.com/Rogentos/argent-gentoo/master/media-libs/"
+ "portmidi/files/portmidi-217-cmake-libdir-java-opts.patch";
sha256 = "1jbjwan61iqq9fqfpq2a4fd30k3clg7a6j0gfgsw87r8c76kqf6h";
});
postPatch = ''
sed -i -e 's|/usr/local/|'"$out"'|' -e 's|/usr/share/|'"$out"'/share/|' \
pm_common/CMakeLists.txt pm_dylib/CMakeLists.txt pm_java/CMakeLists.txt
sed -i \
-e 's|-classpath .|-classpath '"$(pwd)"'/pm_java|' \
-e 's|pmdefaults/|'"$(pwd)"'/pm_java/&|g' \
-e 's|jportmidi/|'"$(pwd)"'/pm_java/&|g' \
-e 's/WORKING_DIRECTORY pm_java//' \
pm_java/CMakeLists.txt
'';
postInstall = ''
ln -s libportmidi.so "$out/lib/libporttime.so"
'';
buildInputs = [ unzip cmake /*openjdk*/ alsaLib ];
meta = {
homepage = "http://portmedia.sourceforge.net/portmidi/";
description = "Platform independent library for MIDI I/O";
license = stdenv.lib.licenses.mit;
};
}

View File

@ -5416,6 +5416,8 @@ let
portaudioSVN = callPackage ../development/libraries/portaudio/svn-head.nix { };
portmidi = callPackage ../development/libraries/portmidi {};
prison = callPackage ../development/libraries/prison { };
proj = callPackage ../development/libraries/proj { };