gnustep: init
Adding new library: gnustep-startup, which packages the core libraries necessary for GNUstep: gnustep-make, gnustep-base, gnustep-gui, gnustep-backend.
This commit is contained in:
parent
2709079569
commit
a28c729766
@ -39,6 +39,7 @@
|
|||||||
aristid = "Aristid Breitkreuz <aristidb@gmail.com>";
|
aristid = "Aristid Breitkreuz <aristidb@gmail.com>";
|
||||||
arobyn = "Alexei Robyn <shados@shados.net>";
|
arobyn = "Alexei Robyn <shados@shados.net>";
|
||||||
artuuge = "Artur E. Ruuge <artuuge@gmail.com>";
|
artuuge = "Artur E. Ruuge <artuuge@gmail.com>";
|
||||||
|
ashalkhakov = "Artyom Shalkhakov <artyom.shalkhakov@gmail.com>";
|
||||||
asppsa = "Alastair Pharo <asppsa@gmail.com>";
|
asppsa = "Alastair Pharo <asppsa@gmail.com>";
|
||||||
astsmtl = "Alexander Tsamutali <astsmtl@yandex.ru>";
|
astsmtl = "Alexander Tsamutali <astsmtl@yandex.ru>";
|
||||||
aszlig = "aszlig <aszlig@redmoonstudios.org>";
|
aszlig = "aszlig <aszlig@redmoonstudios.org>";
|
||||||
|
83
pkgs/development/libraries/gnustep-startup/default.nix
Normal file
83
pkgs/development/libraries/gnustep-startup/default.nix
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
{ stdenv, fetchurl, pkgconfig
|
||||||
|
, aspell
|
||||||
|
, cups
|
||||||
|
, audiofile, portaudio
|
||||||
|
, clang, libobjc2
|
||||||
|
, libjpeg, libtiff, libpng, giflib, libungif
|
||||||
|
, libxml2, libxslt, libiconv
|
||||||
|
, libffi
|
||||||
|
, gnutls, libgcrypt
|
||||||
|
, icu
|
||||||
|
, xlibs, x11
|
||||||
|
, freetype
|
||||||
|
, which
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
version = "0.32.0";
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "gnustep-core-${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-startup-${version}.tar.gz";
|
||||||
|
sha256 = "1f24lggaind43jhp6gy5zspljbha5l2gnys1ddxjdxkiwqfkznc6";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ clang libobjc2 cups audiofile portaudio aspell libjpeg libtiff libpng giflib libungif libxml2 libxslt libiconv gnutls libgcrypt icu pkgconfig x11 libffi freetype which ];
|
||||||
|
# TODO: what's this for?
|
||||||
|
# nativeBuildInputs = [ ];
|
||||||
|
# propagatedBuildInputs = [ ];
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
./InstallGNUstep --batch --prefix=$out
|
||||||
|
'';
|
||||||
|
|
||||||
|
# TODO: add:
|
||||||
|
# . $out/System/Library/Makefiles/GNUstep.sh
|
||||||
|
# to bashrc prior to building any GNUstep package
|
||||||
|
# TODO: could simply make the installPhase = "";
|
||||||
|
installPhase = ''
|
||||||
|
echo Do not forget to source $out/System/Library/Makefiles/GNUstep.sh!
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "GNUstep is a free, object-oriented, cross-platform development environment that strives for simplicity and elegance. GNUstep is based on and strives to be completely compatible with the Cocoa specification developed by Apple (Previously NeXT Software, Inc.).";
|
||||||
|
|
||||||
|
longDescription = ''
|
||||||
|
GNUstep is...
|
||||||
|
|
||||||
|
...an object-oriented tool development kit
|
||||||
|
|
||||||
|
GNUstep-make and GNUstep-base make up the core libraries contain
|
||||||
|
a complete system for writing non-graphic tools in Objective-C. The
|
||||||
|
make package allows you to setup a simple and powerful system for
|
||||||
|
building, installing and packaging your tools. The base package
|
||||||
|
includes all the classes necessary for writing an incredible array of
|
||||||
|
tools, from wrappers for system tools to tools for communicating with
|
||||||
|
web and other types of servers.
|
||||||
|
|
||||||
|
...and a graphical development kit
|
||||||
|
|
||||||
|
The core libraries contain classes for developing a complete
|
||||||
|
graphical application for almost any purpose. Along with our
|
||||||
|
object-oriented, graphical development applications,
|
||||||
|
ProjectCenter and Gorm it's simple to write very complex
|
||||||
|
commercial applications in weeks or months, rather than years
|
||||||
|
(or often, never) in the case of other development environments.
|
||||||
|
|
||||||
|
...and a cross platform development environment
|
||||||
|
|
||||||
|
GNUstep can, currently, allow you to build applications on
|
||||||
|
GNU/Linux, Windows, FreeBSD, OpenBSD, NetBSD, Solaris and any
|
||||||
|
POSIX compliant UNIX based operating system.
|
||||||
|
'';
|
||||||
|
|
||||||
|
homepage = http://gnustep.org/;
|
||||||
|
|
||||||
|
license = stdenv.lib.licenses.lgpl2Plus;
|
||||||
|
|
||||||
|
maintainers = with stdenv.lib.maintainers; [ ashalkhakov ];
|
||||||
|
platforms = stdenv.lib.platforms.all;
|
||||||
|
};
|
||||||
|
}
|
49
pkgs/development/libraries/libobjc2/default.nix
Normal file
49
pkgs/development/libraries/libobjc2/default.nix
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
{ stdenv, fetchurl,
|
||||||
|
clang,
|
||||||
|
cmake
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
version = "1.7";
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "libobjc2-${version}";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://download.gna.org/gnustep/libobjc2-1.7.tar.bz2";
|
||||||
|
sha256 = "1h9wkm1x9wrzd3alm99bx710lrs9nb8h2x5jpxbqwgbgzzv4l6rs";
|
||||||
|
};
|
||||||
|
buildInputs = [ clang cmake ];
|
||||||
|
|
||||||
|
# since we don't support Objective-C++, we don't interoperate
|
||||||
|
# with C++ either
|
||||||
|
patches = [ ./removeCXXtests.patch ];
|
||||||
|
|
||||||
|
# build phase:
|
||||||
|
# mkdir Build
|
||||||
|
# cd Build
|
||||||
|
# cmake ..
|
||||||
|
# make -j8
|
||||||
|
# make install
|
||||||
|
#
|
||||||
|
# probably useful:
|
||||||
|
cmakeFlags = [ "-DCMAKE_INSTALL_LIBDIR=lib" ];
|
||||||
|
#
|
||||||
|
# cmakeDir = "../src"; # Build?
|
||||||
|
# postInstall = ''
|
||||||
|
# mkdir Build
|
||||||
|
# cd Build
|
||||||
|
# cmake -DCMAKE_INSTALL_PREFIX=$out -DGNUSTEP_INSTALL_TYPE=NONE ..
|
||||||
|
# make install
|
||||||
|
# '';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Objective-C runtime for use with GNUstep";
|
||||||
|
|
||||||
|
homepage = http://gnustep.org/;
|
||||||
|
|
||||||
|
license = stdenv.lib.licenses.mit;
|
||||||
|
|
||||||
|
maintainers = with stdenv.lib.maintainers; [ ashalkhakov ];
|
||||||
|
platforms = stdenv.lib.platforms.all;
|
||||||
|
};
|
||||||
|
}
|
20
pkgs/development/libraries/libobjc2/removeCXXtests.patch
Normal file
20
pkgs/development/libraries/libobjc2/removeCXXtests.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
diff -c libobjc2-1.7/Test/CMakeLists.txt libobjc2-1.7-patched/Test/CMakeLists.txt
|
||||||
|
*** libobjc2-1.7/Test/CMakeLists.txt 2014-11-17 13:38:30.000000000 +0600
|
||||||
|
--- libobjc2-1.7-patched/Test/CMakeLists.txt 2014-11-17 13:38:56.000000000 +0600
|
||||||
|
***************
|
||||||
|
*** 49,54 ****
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
# Tests that are more than a single file.
|
||||||
|
! addtest_flags(CXXExceptions "-O0" "CXXException.m;CXXException.cc")
|
||||||
|
! addtest_flags(CXXExceptions_optimised "-O3" "CXXException.m;CXXException.cc")
|
||||||
|
|
||||||
|
--- 49,54 ----
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
# Tests that are more than a single file.
|
||||||
|
! #addtest_flags(CXXExceptions "-O0" "CXXException.m;CXXException.cc")
|
||||||
|
! #addtest_flags(CXXExceptions_optimised "-O3" "CXXException.m;CXXException.cc")
|
||||||
|
|
||||||
|
Only in libobjc2-1.7-patched/Test: CMakeLists.txt~
|
||||||
|
Common subdirectories: libobjc2-1.7/Test/RuntimeTest.xcodeproj and libobjc2-1.7-patched/Test/RuntimeTest.xcodeproj
|
@ -7586,6 +7586,11 @@ in
|
|||||||
|
|
||||||
gnome-sharp = callPackage ../development/libraries/gnome-sharp {};
|
gnome-sharp = callPackage ../development/libraries/gnome-sharp {};
|
||||||
|
|
||||||
|
gnustep_startup = callPackage ../development/libraries/gnustep-startup/default.nix {
|
||||||
|
stdenv = clangStdenv;
|
||||||
|
giflib = giflib_4_1;
|
||||||
|
};
|
||||||
|
|
||||||
granite = callPackage ../development/libraries/granite { };
|
granite = callPackage ../development/libraries/granite { };
|
||||||
|
|
||||||
gtk2 = callPackage ../development/libraries/gtk+/2.x.nix {
|
gtk2 = callPackage ../development/libraries/gtk+/2.x.nix {
|
||||||
@ -8388,6 +8393,8 @@ in
|
|||||||
|
|
||||||
libnxml = callPackage ../development/libraries/libnxml { };
|
libnxml = callPackage ../development/libraries/libnxml { };
|
||||||
|
|
||||||
|
libobjc2 = callPackage ../development/libraries/libobjc2 { stdenv = clangStdenv; };
|
||||||
|
|
||||||
libodfgen = callPackage ../development/libraries/libodfgen { };
|
libodfgen = callPackage ../development/libraries/libodfgen { };
|
||||||
|
|
||||||
libofa = callPackage ../development/libraries/libofa { };
|
libofa = callPackage ../development/libraries/libofa { };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user