From a28c729766b1ed47e62b8c43b5d87a52c5b78922 Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Mon, 17 Nov 2014 17:32:49 +0600 Subject: [PATCH 01/23] gnustep: init Adding new library: gnustep-startup, which packages the core libraries necessary for GNUstep: gnustep-make, gnustep-base, gnustep-gui, gnustep-backend. --- lib/maintainers.nix | 1 + .../libraries/gnustep-startup/default.nix | 83 +++++++++++++++++++ .../libraries/libobjc2/default.nix | 49 +++++++++++ .../libraries/libobjc2/removeCXXtests.patch | 20 +++++ pkgs/top-level/all-packages.nix | 7 ++ 5 files changed, 160 insertions(+) create mode 100644 pkgs/development/libraries/gnustep-startup/default.nix create mode 100644 pkgs/development/libraries/libobjc2/default.nix create mode 100644 pkgs/development/libraries/libobjc2/removeCXXtests.patch diff --git a/lib/maintainers.nix b/lib/maintainers.nix index af43ae639ea..fde07ca493f 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -39,6 +39,7 @@ aristid = "Aristid Breitkreuz "; arobyn = "Alexei Robyn "; artuuge = "Artur E. Ruuge "; + ashalkhakov = "Artyom Shalkhakov "; asppsa = "Alastair Pharo "; astsmtl = "Alexander Tsamutali "; aszlig = "aszlig "; diff --git a/pkgs/development/libraries/gnustep-startup/default.nix b/pkgs/development/libraries/gnustep-startup/default.nix new file mode 100644 index 00000000000..77a9fa439cc --- /dev/null +++ b/pkgs/development/libraries/gnustep-startup/default.nix @@ -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; + }; +} diff --git a/pkgs/development/libraries/libobjc2/default.nix b/pkgs/development/libraries/libobjc2/default.nix new file mode 100644 index 00000000000..a3f45b5cc23 --- /dev/null +++ b/pkgs/development/libraries/libobjc2/default.nix @@ -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; + }; +} \ No newline at end of file diff --git a/pkgs/development/libraries/libobjc2/removeCXXtests.patch b/pkgs/development/libraries/libobjc2/removeCXXtests.patch new file mode 100644 index 00000000000..48c17c1d760 --- /dev/null +++ b/pkgs/development/libraries/libobjc2/removeCXXtests.patch @@ -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 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e5ee0608839..45f410c770a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7586,6 +7586,11 @@ in 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 { }; gtk2 = callPackage ../development/libraries/gtk+/2.x.nix { @@ -8388,6 +8393,8 @@ in libnxml = callPackage ../development/libraries/libnxml { }; + libobjc2 = callPackage ../development/libraries/libobjc2 { stdenv = clangStdenv; }; + libodfgen = callPackage ../development/libraries/libodfgen { }; libofa = callPackage ../development/libraries/libofa { }; From 52d17a5f41e70a1774681c6afb13ac41431674b8 Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Mon, 1 Dec 2014 16:56:13 +0600 Subject: [PATCH 02/23] gnustep: packageg libs separately Packing gnustep libs separately, with no use of gnustep-startup. Also, fixed a bug in WindowMaker package (some imaging dependencies were not supplied). --- pkgs/applications/editors/gorm/default.nix | 31 +++++++ .../editors/projectcenter/default.nix | 31 +++++++ .../libraries/gnustep-back/default.nix | 77 +++++++++++++++++ .../libraries/gnustep-back/fixup-tools.patch | 15 ++++ .../libraries/gnustep-base/default.nix | 85 +++++++++++++++++++ .../fixup-base-makefile-installdir.patch | 29 +++++++ .../libraries/gnustep-gui/default.nix | 73 ++++++++++++++++ .../fixup-gui-makefile-installdir.patch | 28 ++++++ .../fixup-gui-textconverters-preamble.patch | 11 +++ .../fixup-gui-tools-preamble.patch | 14 +++ .../libraries/gnustep-startup/default.nix | 12 ++- .../build-managers/gnustep-make/default.nix | 23 +++++ pkgs/top-level/all-packages.nix | 11 +++ 13 files changed, 437 insertions(+), 3 deletions(-) create mode 100644 pkgs/applications/editors/gorm/default.nix create mode 100644 pkgs/applications/editors/projectcenter/default.nix create mode 100644 pkgs/development/libraries/gnustep-back/default.nix create mode 100644 pkgs/development/libraries/gnustep-back/fixup-tools.patch create mode 100644 pkgs/development/libraries/gnustep-base/default.nix create mode 100644 pkgs/development/libraries/gnustep-base/fixup-base-makefile-installdir.patch create mode 100644 pkgs/development/libraries/gnustep-gui/default.nix create mode 100644 pkgs/development/libraries/gnustep-gui/fixup-gui-makefile-installdir.patch create mode 100644 pkgs/development/libraries/gnustep-gui/fixup-gui-textconverters-preamble.patch create mode 100644 pkgs/development/libraries/gnustep-gui/fixup-gui-tools-preamble.patch create mode 100644 pkgs/development/tools/build-managers/gnustep-make/default.nix diff --git a/pkgs/applications/editors/gorm/default.nix b/pkgs/applications/editors/gorm/default.nix new file mode 100644 index 00000000000..ccd038534a7 --- /dev/null +++ b/pkgs/applications/editors/gorm/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, gnustep_startup }: + +let + version = "1.2.18"; +in +stdenv.mkDerivation rec { + name = "gorm-${version}"; + + src = fetchurl { + url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz"; + sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq"; + }; + + buildInputs = [ gnustep_startup ]; + buildPhase = '' + . ${gnustep_startup}/System/Library/Makefiles/GNUstep.sh + make + ''; + + meta = { + description = "Gorm stands for Graphical Object Relationship Modeller and is an easy-to-use interface designer for GNUstep"; + + homepage = http://www.gnustep.org/experience/Gorm.html; + + license = stdenv.lib.licenses.lgpl2Plus; + + maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + platforms = stdenv.lib.platforms.all; + broken = true; + }; +} \ No newline at end of file diff --git a/pkgs/applications/editors/projectcenter/default.nix b/pkgs/applications/editors/projectcenter/default.nix new file mode 100644 index 00000000000..2b403dffc70 --- /dev/null +++ b/pkgs/applications/editors/projectcenter/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, gnustep_startup }: + +let + version = "0.6.2"; +in +stdenv.mkDerivation rec { + name = "projectcenter-${version}"; + src = fetchurl { + url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/ProjectCenter-${version}.tar.gz"; + sha256 = "0wwlbpqf541apw192jb633d634zkpjhcrrkd1j80y9hihphll465"; + }; + + buildInputs = [ gnustep_startup ]; + + buildPhase = '' + . $gnustep_startup/GNUstep/System/Library/Makefiles/GNUstep.sh + make + ''; + + meta = { + description = "ProjectCenter is GNUstep's integrated development environment (IDE) and allows a rapid development and easy managment of ProjectCenter running on GNUstep applications, tools and frameworks."; + + homepage = http://www.gnustep.org/experience/ProjectCenter.html; + + license = stdenv.lib.licenses.lgpl2Plus; + + maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + platforms = stdenv.lib.platforms.all; + broken = true; + }; +} \ No newline at end of file diff --git a/pkgs/development/libraries/gnustep-back/default.nix b/pkgs/development/libraries/gnustep-back/default.nix new file mode 100644 index 00000000000..e6691c8709d --- /dev/null +++ b/pkgs/development/libraries/gnustep-back/default.nix @@ -0,0 +1,77 @@ +{ buildEnv +, cairo +, clang +, fetchurl +, gnustep_base, gnustep_make, gnustep_gui +, xlibs +, x11 +, freetype +, pkgconfig +, stdenv +}: +let + version = "0.24.0"; +in +stdenv.mkDerivation rec { + name = "gnustep-back-${version}"; + src = fetchurl { + url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-0.24.0.tar.gz"; + sha256 = "0qixbilkkrqxrhhj9hnp7ygd5gs23b3qbbgk3gaxj73d0xqfvhjz"; + }; + buildInputs = [ cairo clang freetype gnustep_base gnustep_make gnustep_gui pkgconfig x11 ]; + propagatedBuildInputs = [ ]; + GNUSTEP_env = buildEnv { + name = "gnustep-back-env"; + paths = [ gnustep_make gnustep_base gnustep_gui ]; + pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ]; + }; + GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; + GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; + ADDITIONAL_CPPFLAGS = "-DGNUSTEP"; + patches = [ ./fixup-tools.patch ]; + dontBuild = true; + installPhase = '' + export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include + ./configure + make \ + GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \ + GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \ + GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \ + GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \ + GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \ + GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ + GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \ + GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \ + GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \ + GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ + messages=yes + make install \ + GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ + GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ + GNUSTEP_SYSTEM_TOOLS=$out/bin \ + GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ + GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ + GNUSTEP_SYSTEM_HEADERS=$out/include \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ + GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ + GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_HEADERS=$out/include \ + DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles + ''; + meta = { + description = "GNUstep-back is a generic backend for GNUstep."; + + homepage = http://gnustep.org/; + + license = stdenv.lib.licenses.lgpl2Plus; + + maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/libraries/gnustep-back/fixup-tools.patch b/pkgs/development/libraries/gnustep-back/fixup-tools.patch new file mode 100644 index 00000000000..edbdcaa7d17 --- /dev/null +++ b/pkgs/development/libraries/gnustep-back/fixup-tools.patch @@ -0,0 +1,15 @@ +diff -c gnustep-back-0.24.0/Tools/GNUmakefile.preamble gnustep-back-0.24.0.patched/Tools/GNUmakefile.preamble +--- gnustep-back-0.24.0/Tools/GNUmakefile.preamble 2013-07-04 22:44:28.000000000 +0600 ++++ gnustep-back-0.24.0.patched/Tools/GNUmakefile.preamble 2014-12-01 16:40:37.000000000 +0600 +@@ -52,6 +52,9 @@ + # Additional libraries when linking applications + #ADDITIONAL_GUI_LIBS += + ++# Additional libraries when linking tools ++gpbs_TOOL_LIBS += -lgnustep-gui -lgnustep-base $(SYSTEM_LIBS) ++ + # + # Flags dealing with installing and uninstalling + # + +Diff finished. Mon Dec 1 16:41:02 2014 diff --git a/pkgs/development/libraries/gnustep-base/default.nix b/pkgs/development/libraries/gnustep-base/default.nix new file mode 100644 index 00000000000..2df93e6bb8f --- /dev/null +++ b/pkgs/development/libraries/gnustep-base/default.nix @@ -0,0 +1,85 @@ +{ aspell, audiofile +, buildEnv +, clang, cups +, fetchurl +, gmp, gnustep_make, gnutls +, libffi +, libjpeg, libtiff, libpng, giflib, libungif +, libxml2, libxslt, libiconv +, libobjc2, libgcrypt +, icu +, pkgconfig, portaudio +, stdenv +, which +}: +let + version = "1.24.7"; +in +stdenv.mkDerivation rec { + name = "gnustep-base-${version}"; + src = fetchurl { + url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-1.24.7.tar.gz"; + sha256 = "0qhphw61ksyzf04a4apmvx8000alws6d92x8ila1mi5bapcpv41s"; + }; + buildInputs = [ + aspell audiofile + clang cups + gmp gnustep_make gnutls + libffi + libjpeg libtiff libpng giflib libungif + libxml2 libxslt libiconv + libobjc2 libgcrypt + icu + pkgconfig portaudio + which + ]; + propagatedBuildInputs = [ + aspell audiofile + cups + gmp gnutls + libffi + libjpeg libtiff libpng giflib libungif + libxml2 libxslt libiconv + libobjc2 libgcrypt + icu + portaudio + ]; + GNUSTEP_env = buildEnv { + name = "gnustep-make-env"; + paths = [ gnustep_make ]; + }; + GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; + GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; + patches = [ ./fixup-base-makefile-installdir.patch ]; + dontBuild = true; + installPhase = '' + ./configure --disable-importing-config-file + make + make install \ + GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ + GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ + GNUSTEP_SYSTEM_TOOLS=$out/bin \ + GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ + GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ + GNUSTEP_SYSTEM_HEADERS=$out/include \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ + GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ + GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_HEADERS=$out/include \ + DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles + ''; + meta = { + description = "GNUstep-base is an implementation of AppKit and Foundation libraries of OPENSTEP and Cocoa."; + + homepage = http://gnustep.org/; + + license = stdenv.lib.licenses.lgpl2Plus; + + maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/libraries/gnustep-base/fixup-base-makefile-installdir.patch b/pkgs/development/libraries/gnustep-base/fixup-base-makefile-installdir.patch new file mode 100644 index 00000000000..482c72a5190 --- /dev/null +++ b/pkgs/development/libraries/gnustep-base/fixup-base-makefile-installdir.patch @@ -0,0 +1,29 @@ +--- gnustep-base-1.24.7/Makefile.postamble 2011-07-15 19:53:45.000000000 +0600 ++++ gnustep-base-1.24.7.patched/Makefile.postamble 2014-11-29 22:25:07.000000000 +0600 +@@ -38,13 +38,13 @@ + # Things to do after compiling + # after-all:: + +-$(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional: +- $(ECHO_CREATING)$(MKDIRS) $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional$(END_ECHO) ++$(DESTDIR_GNUSTEP_MAKEFILES)/Additional: ++ $(ECHO_CREATING)$(MKDIRS) $(DESTDIR_GNUSTEP_MAKEFILES)/Additional$(END_ECHO) + + # Things to do before installing +-before-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional ++before-install:: $(DESTDIR_GNUSTEP_MAKEFILES)/Additional + $(ECHO_NOTHING)$(INSTALL_DATA) base.make \ +- $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO) ++ $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO) + + # Things to do after installing + # after-install:: +@@ -54,7 +54,7 @@ + + # Things to do after uninstalling + after-uninstall:: +- $(ECHO_NOTHING)rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO) ++ $(ECHO_NOTHING)rm -f $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO) + + # Things to do before cleaning + # before-clean:: diff --git a/pkgs/development/libraries/gnustep-gui/default.nix b/pkgs/development/libraries/gnustep-gui/default.nix new file mode 100644 index 00000000000..c27ad3105d5 --- /dev/null +++ b/pkgs/development/libraries/gnustep-gui/default.nix @@ -0,0 +1,73 @@ +{ buildEnv +, clang +, fetchurl +, gnustep_base, gnustep_make +#, xlibs, x11, freetype +#, pkgconfig +, stdenv }: +let + version = "0.24.0"; +in +stdenv.mkDerivation rec { + name = "gnustep-gui-${version}"; + src = fetchurl { + url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-0.24.0.tar.gz"; + sha256 = "0d6jzfcyacxjzrr2p398ysvs1akv1fcmngfzxxbfxa947miydjxg"; + }; + buildInputs = [ clang gnustep_base gnustep_make ]; + propagatedBuildInputs = [ ]; + GNUSTEP_env = buildEnv { + name = "gnustep-gui-env"; + paths = [ gnustep_make gnustep_base ]; + pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ]; + }; + GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; + GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; + ADDITIONAL_CPPFLAGS = "-DGNUSTEP"; + patches = [ ./fixup-gui-makefile-installdir.patch ./fixup-gui-tools-preamble.patch ./fixup-gui-textconverters-preamble.patch ]; + dontBuild = true; + installPhase = '' + export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include + ./configure + make \ + GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \ + GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \ + GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \ + GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \ + GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \ + GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ + GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \ + GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \ + GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \ + GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ + messages=yes + make install \ + GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ + GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ + GNUSTEP_SYSTEM_TOOLS=$out/bin \ + GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ + GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ + GNUSTEP_SYSTEM_HEADERS=$out/include \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ + GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ + GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_HEADERS=$out/include \ + DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles + ''; + meta = { + description = "GNUstep-gui is a GUI class library of GNUstep."; + + homepage = http://gnustep.org/; + + license = stdenv.lib.licenses.lgpl2Plus; + + maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/libraries/gnustep-gui/fixup-gui-makefile-installdir.patch b/pkgs/development/libraries/gnustep-gui/fixup-gui-makefile-installdir.patch new file mode 100644 index 00000000000..30c6f56c032 --- /dev/null +++ b/pkgs/development/libraries/gnustep-gui/fixup-gui-makefile-installdir.patch @@ -0,0 +1,28 @@ +--- gnustep-gui-0.24.0/GNUmakefile.postamble 2010-05-17 22:38:59.000000000 +0600 ++++ gnustep-gui-0.24.0.patched/GNUmakefile.postamble 2014-12-01 13:44:05.000000000 +0600 +@@ -40,20 +40,20 @@ + # The following rule is important mainly for packaging, because in that case + # you install into a fake system tree, and the directory is not there. + # +-$(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional: +- $(MKDIRS) $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional ++$(DESTDIR_GNUSTEP_MAKEFILES)/Additional: ++ $(MKDIRS) $(DESTDIR_GNUSTEP_MAKEFILES)/Additional + + # Things to do before installing +-before-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional ++before-install:: $(DESTDIR_GNUSTEP_MAKEFILES)/Additional + $(INSTALL_DATA) gui.make \ +- $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/gui.make ++ $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/gui.make + + # Things to do after installing + # after-install:: + + # Things to do before uninstalling + before-uninstall:: +- rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/gui.make ++ rm -f $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/gui.make + + # Things to do after uninstalling + # after-uninstall:: diff --git a/pkgs/development/libraries/gnustep-gui/fixup-gui-textconverters-preamble.patch b/pkgs/development/libraries/gnustep-gui/fixup-gui-textconverters-preamble.patch new file mode 100644 index 00000000000..23ec2db0fbd --- /dev/null +++ b/pkgs/development/libraries/gnustep-gui/fixup-gui-textconverters-preamble.patch @@ -0,0 +1,11 @@ +--- gnustep-gui-0.24.0/TextConverters/RTF/GNUmakefile.preamble 2008-06-10 10:01:49.000000000 +0600 ++++ gnustep-gui-0.24.0.patched/TextConverters/RTF/GNUmakefile.preamble 2014-12-01 13:02:11.000000000 +0600 +@@ -49,7 +49,7 @@ + ADDITIONAL_INCLUDE_DIRS +=-I../../Headers/Additions -I../../Headers + + # Additional LDFLAGS to pass to the linker +-#ADDITIONAL_LDFLAGS += ++ADDITIONAL_LDFLAGS += -lgnustep-gui + + # Additional library directories the linker should search + ADDITIONAL_LIB_DIRS += -L../../Source/$(GNUSTEP_OBJ_DIR) diff --git a/pkgs/development/libraries/gnustep-gui/fixup-gui-tools-preamble.patch b/pkgs/development/libraries/gnustep-gui/fixup-gui-tools-preamble.patch new file mode 100644 index 00000000000..e57ddec75ad --- /dev/null +++ b/pkgs/development/libraries/gnustep-gui/fixup-gui-tools-preamble.patch @@ -0,0 +1,14 @@ +--- gnustep-gui-0.24.0/Tools/GNUmakefile.preamble 2006-02-22 12:43:48.000000000 +0600 ++++ gnustep-gui-0.24.0.patched/Tools/GNUmakefile.preamble 2014-12-01 12:52:41.000000000 +0600 +@@ -32,9 +32,11 @@ + ADDITIONAL_LIB_DIRS += -L../Source/$(GNUSTEP_OBJ_DIR) -L../Model/$(GNUSTEP_OBJ_DIR) + + # Additional libraries when linking tools ++make_services_TOOL_LIBS += -lgnustep-base + gpbs_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS) + set_show_service_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS) + gopen_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS) ++gclose_TOOL_LIBS += -lgnustep-base + gcloseall_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS) + GSspell_TOOL_LIBS += $(ADDITIONAL_DEPENDS) + diff --git a/pkgs/development/libraries/gnustep-startup/default.nix b/pkgs/development/libraries/gnustep-startup/default.nix index 77a9fa439cc..d45fa8fda9b 100644 --- a/pkgs/development/libraries/gnustep-startup/default.nix +++ b/pkgs/development/libraries/gnustep-startup/default.nix @@ -3,6 +3,7 @@ , cups , audiofile, portaudio , clang, libobjc2 +, gmp , libjpeg, libtiff, libpng, giflib, libungif , libxml2, libxslt, libiconv , libffi @@ -25,9 +26,8 @@ stdenv.mkDerivation rec { }; 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 = [ ]; + # TODO: libobjc2 is a propagated (compile-time/runtime) dependency + propagatedBuildInputs = [ libobjc2 cups audiofile portaudio aspell libjpeg libtiff libpng giflib libungif libxml2 libxslt libgcrypt icu gmp libiconv gnutls icu libffi ]; buildPhase = '' ./InstallGNUstep --batch --prefix=$out @@ -36,6 +36,12 @@ stdenv.mkDerivation rec { # TODO: add: # . $out/System/Library/Makefiles/GNUstep.sh # to bashrc prior to building any GNUstep package + # TODO: need a development environment for GNUstep packages + # - it would set various settings appropriately + # - similarly to what Python is doing + # ~/proj/nix/nixpkgs/pkgs/top-level/python-packages.nix: wrapPython? + # - buildPythonPackage: ~/proj/nix/nixpkgs/pkgs/development/python-modules/generic/default.nix + # # TODO: could simply make the installPhase = ""; installPhase = '' echo Do not forget to source $out/System/Library/Makefiles/GNUstep.sh! diff --git a/pkgs/development/tools/build-managers/gnustep-make/default.nix b/pkgs/development/tools/build-managers/gnustep-make/default.nix new file mode 100644 index 00000000000..a782526d509 --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep-make/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchurl, clang, which, libobjc2 }: +let + version = "2.6.6"; +in +stdenv.mkDerivation rec { + name = "gnustep-make-${version}"; + src = fetchurl { + url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-make-2.6.6.tar.gz"; + sha256 = "07cqr8x17bia9w6clbmiv7ay6r9nplrjz2cyzinv4w7zfpc19vxw"; + }; + configureFlags = "--with-layout=fhs-system"; + buildInputs = [ clang which libobjc2 ]; + meta = { + description = "GNUstep-make is a build manager for GNUstep."; + + homepage = http://gnustep.org/; + + license = stdenv.lib.licenses.lgpl2Plus; + + maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 45f410c770a..0e0ca28a652 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6444,6 +6444,11 @@ in gnumake42 = callPackage ../development/tools/build-managers/gnumake/4.2 { }; gnumake = self.gnumake42; + gnustep_back = callPackage ../development/libraries/gnustep-back { stdenv = clangStdenv; }; + gnustep_base = callPackage ../development/libraries/gnustep-base { stdenv = clangStdenv; giflib = giflib_4_1; }; + gnustep_make = callPackage ../development/tools/build-managers/gnustep-make { stdenv = clangStdenv; }; + gnustep_gui = callPackage ../development/libraries/gnustep-gui { stdenv = clangStdenv; }; + gob2 = callPackage ../development/tools/misc/gob2 { }; gocd-agent = callPackage ../development/tools/continuous-integration/gocd-agent { }; @@ -7590,6 +7595,12 @@ in stdenv = clangStdenv; giflib = giflib_4_1; }; + gorm = callPackage ../applications/editors/gorm/default.nix { + stdenv = clangStdenv; + }; + projectcenter = callPackage ../applications/editors/projectcenter/default.nix { + stdenv = clangStdenv; + }; granite = callPackage ../development/libraries/granite { }; From 5db3f3ee61428047dfe4cc2365814124af8dc52c Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Mon, 1 Dec 2014 20:59:49 +0600 Subject: [PATCH 03/23] gnustep: remove gnustep-startup Removing gnustep-startup (not needed anymore). Adding Gorm and ProjectCenter applications (these mostly work, provided the environment is set up manually). --- pkgs/applications/editors/gorm/default.nix | 53 +++++++++-- .../editors/projectcenter/default.nix | 55 ++++++++++-- .../projectcenter/fixup-preamble.patch | 14 +++ .../libraries/gnustep-startup/default.nix | 89 ------------------- pkgs/top-level/all-packages.nix | 4 - 5 files changed, 108 insertions(+), 107 deletions(-) create mode 100644 pkgs/applications/editors/projectcenter/fixup-preamble.patch delete mode 100644 pkgs/development/libraries/gnustep-startup/default.nix diff --git a/pkgs/applications/editors/gorm/default.nix b/pkgs/applications/editors/gorm/default.nix index ccd038534a7..fd0b88322cd 100644 --- a/pkgs/applications/editors/gorm/default.nix +++ b/pkgs/applications/editors/gorm/default.nix @@ -1,5 +1,6 @@ -{ stdenv, fetchurl, gnustep_startup }: - +{ buildEnv +, stdenv, fetchurl, gnustep_base, gnustep_make, gnustep_back, gnustep_gui +}: let version = "1.2.18"; in @@ -10,11 +11,49 @@ stdenv.mkDerivation rec { url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz"; sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq"; }; - - buildInputs = [ gnustep_startup ]; - buildPhase = '' - . ${gnustep_startup}/System/Library/Makefiles/GNUstep.sh - make + GNUSTEP_env = buildEnv { + name = "gnustep-gorm-env"; + paths = [ gnustep_make gnustep_back gnustep_base gnustep_gui ]; + pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ]; + }; + GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; + GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; + ADDITIONAL_CPPFLAGS = "-DGNUSTEP"; + + buildInputs = [ gnustep_base gnustep_back gnustep_make gnustep_gui ]; + dontBuild = true; + installPhase = '' + export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include + make \ + GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \ + GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \ + GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \ + GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \ + GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \ + GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ + GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \ + GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \ + GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \ + GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ + messages=yes + make install \ + GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ + GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ + GNUSTEP_SYSTEM_TOOLS=$out/bin \ + GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ + GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ + GNUSTEP_SYSTEM_HEADERS=$out/include \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ + GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ + GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_HEADERS=$out/include \ + DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles ''; meta = { diff --git a/pkgs/applications/editors/projectcenter/default.nix b/pkgs/applications/editors/projectcenter/default.nix index 2b403dffc70..56c4a0535c2 100644 --- a/pkgs/applications/editors/projectcenter/default.nix +++ b/pkgs/applications/editors/projectcenter/default.nix @@ -1,5 +1,7 @@ -{ stdenv, fetchurl, gnustep_startup }: - +{ buildEnv +, stdenv, fetchurl +, gnustep_base, gnustep_make, gnustep_back, gnustep_gui +}: let version = "0.6.2"; in @@ -9,12 +11,51 @@ stdenv.mkDerivation rec { url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/ProjectCenter-${version}.tar.gz"; sha256 = "0wwlbpqf541apw192jb633d634zkpjhcrrkd1j80y9hihphll465"; }; - - buildInputs = [ gnustep_startup ]; - buildPhase = '' - . $gnustep_startup/GNUstep/System/Library/Makefiles/GNUstep.sh - make + GNUSTEP_env = buildEnv { + name = "gnustep-projectcenter-env"; + paths = [ gnustep_make gnustep_back gnustep_base gnustep_gui ]; + pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ]; + }; + GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; + GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; + ADDITIONAL_CPPFLAGS = "-DGNUSTEP"; + + patches = [ ./fixup-preamble.patch ]; + buildInputs = [ gnustep_base gnustep_back gnustep_make gnustep_gui ]; + dontBuild = true; + + installPhase = '' + export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include + make \ + GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \ + GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \ + GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \ + GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \ + GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \ + GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ + GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \ + GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \ + GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \ + GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ + messages=yes + make install \ + GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ + GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ + GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ + GNUSTEP_SYSTEM_TOOLS=$out/bin \ + GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ + GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ + GNUSTEP_SYSTEM_HEADERS=$out/include \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ + GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ + GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ + GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ + GNUSTEP_HEADERS=$out/include ''; meta = { diff --git a/pkgs/applications/editors/projectcenter/fixup-preamble.patch b/pkgs/applications/editors/projectcenter/fixup-preamble.patch new file mode 100644 index 00000000000..3fe19a6a58b --- /dev/null +++ b/pkgs/applications/editors/projectcenter/fixup-preamble.patch @@ -0,0 +1,14 @@ +diff -c ProjectCenter-0.6.2/GNUmakefile.preamble ProjectCenter-0.6.2.patched/GNUmakefile.preamble +--- ProjectCenter-0.6.2/GNUmakefile.preamble 2010-08-08 03:56:04.000000000 +0600 ++++ artyom/ProjectCenter-0.6.2.patched/GNUmakefile.preamble 2014-12-01 20:08:31.000000000 +0600 +@@ -39,7 +39,7 @@ + ADDITIONAL_INCLUDE_DIRS += -I./ -I./Headers + + # Additional LDFLAGS to pass to the linker +-ADDITIONAL_LDFLAGS += ++ADDITIONAL_LDFLAGS += -lgnustep-base -lgnustep-gui + + # Additional library directories the linker should search + ADDITIONAL_LIB_DIRS += -L./Framework/ProjectCenter.framework/$(GNUSTEP_TARGET_LDIR) + +Diff finished. Mon Dec 1 20:08:50 2014 diff --git a/pkgs/development/libraries/gnustep-startup/default.nix b/pkgs/development/libraries/gnustep-startup/default.nix deleted file mode 100644 index d45fa8fda9b..00000000000 --- a/pkgs/development/libraries/gnustep-startup/default.nix +++ /dev/null @@ -1,89 +0,0 @@ -{ stdenv, fetchurl, pkgconfig -, aspell -, cups -, audiofile, portaudio -, clang, libobjc2 -, gmp -, 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: libobjc2 is a propagated (compile-time/runtime) dependency - propagatedBuildInputs = [ libobjc2 cups audiofile portaudio aspell libjpeg libtiff libpng giflib libungif libxml2 libxslt libgcrypt icu gmp libiconv gnutls icu libffi ]; - - buildPhase = '' - ./InstallGNUstep --batch --prefix=$out - ''; - - # TODO: add: - # . $out/System/Library/Makefiles/GNUstep.sh - # to bashrc prior to building any GNUstep package - # TODO: need a development environment for GNUstep packages - # - it would set various settings appropriately - # - similarly to what Python is doing - # ~/proj/nix/nixpkgs/pkgs/top-level/python-packages.nix: wrapPython? - # - buildPythonPackage: ~/proj/nix/nixpkgs/pkgs/development/python-modules/generic/default.nix - # - # 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; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0e0ca28a652..6dc478945c8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7591,10 +7591,6 @@ in gnome-sharp = callPackage ../development/libraries/gnome-sharp {}; - gnustep_startup = callPackage ../development/libraries/gnustep-startup/default.nix { - stdenv = clangStdenv; - giflib = giflib_4_1; - }; gorm = callPackage ../applications/editors/gorm/default.nix { stdenv = clangStdenv; }; From d39e5372dcaedd415f243b85adf5176a5c5511be Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Sun, 7 Dec 2014 22:52:03 +0600 Subject: [PATCH 04/23] gnustep: cleanup Cleaning up. Adding GNUstep package builder for abstracting out GNUstep compilation specifics (with thanks to GitHub user lethalman). The rules for using build_gnustep_package are as simple: any GNUstep-based package that the package being compiled depends upon are to be put in [deps] (this is used for setting up a buildEnv), while other dependencies are put into [buildInputs] as usual. --- .../libraries/gnustep-back/default.nix | 53 +------- .../libraries/gnustep-base/default.nix | 36 +---- .../libraries/gnustep-gui/default.nix | 56 +------- .../build-managers/gnustep-make/GNUstep.conf | 126 ++++++++++++++++++ .../gnustep-make/build-gnustep-package.nix | 44 ++++++ .../build-managers/gnustep-make/default.nix | 5 +- pkgs/top-level/all-packages.nix | 8 +- 7 files changed, 195 insertions(+), 133 deletions(-) create mode 100644 pkgs/development/tools/build-managers/gnustep-make/GNUstep.conf create mode 100644 pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix diff --git a/pkgs/development/libraries/gnustep-back/default.nix b/pkgs/development/libraries/gnustep-back/default.nix index e6691c8709d..b19beb9d690 100644 --- a/pkgs/development/libraries/gnustep-back/default.nix +++ b/pkgs/development/libraries/gnustep-back/default.nix @@ -3,6 +3,7 @@ , clang , fetchurl , gnustep_base, gnustep_make, gnustep_gui +, gnustep_builder , xlibs , x11 , freetype @@ -12,58 +13,14 @@ let version = "0.24.0"; in -stdenv.mkDerivation rec { +gnustep_builder.mkDerivation rec { name = "gnustep-back-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-0.24.0.tar.gz"; sha256 = "0qixbilkkrqxrhhj9hnp7ygd5gs23b3qbbgk3gaxj73d0xqfvhjz"; }; - buildInputs = [ cairo clang freetype gnustep_base gnustep_make gnustep_gui pkgconfig x11 ]; - propagatedBuildInputs = [ ]; - GNUSTEP_env = buildEnv { - name = "gnustep-back-env"; - paths = [ gnustep_make gnustep_base gnustep_gui ]; - pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ]; - }; - GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; - GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; - ADDITIONAL_CPPFLAGS = "-DGNUSTEP"; - patches = [ ./fixup-tools.patch ]; - dontBuild = true; - installPhase = '' - export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include - ./configure - make \ - GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \ - GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \ - GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \ - GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \ - GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \ - GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ - GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \ - GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \ - GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \ - GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ - messages=yes - make install \ - GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ - GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ - GNUSTEP_SYSTEM_TOOLS=$out/bin \ - GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ - GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ - GNUSTEP_SYSTEM_HEADERS=$out/include \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ - GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ - GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_HEADERS=$out/include \ - DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles - ''; + buildInputs = [ cairo clang freetype pkgconfig x11 ]; + deps = [ gnustep_make gnustep_base gnustep_gui ]; meta = { description = "GNUstep-back is a generic backend for GNUstep."; @@ -72,6 +29,6 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.lgpl2Plus; maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.all; + platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep-base/default.nix b/pkgs/development/libraries/gnustep-base/default.nix index 2df93e6bb8f..7def6e6f8db 100644 --- a/pkgs/development/libraries/gnustep-base/default.nix +++ b/pkgs/development/libraries/gnustep-base/default.nix @@ -1,5 +1,5 @@ { aspell, audiofile -, buildEnv +, gnustep_builder , clang, cups , fetchurl , gmp, gnustep_make, gnutls @@ -15,7 +15,7 @@ let version = "1.24.7"; in -stdenv.mkDerivation rec { +gnustep_builder.mkDerivation { name = "gnustep-base-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-1.24.7.tar.gz"; @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { buildInputs = [ aspell audiofile clang cups - gmp gnustep_make gnutls + gmp gnutls libffi libjpeg libtiff libpng giflib libungif libxml2 libxslt libiconv @@ -44,34 +44,8 @@ stdenv.mkDerivation rec { icu portaudio ]; - GNUSTEP_env = buildEnv { - name = "gnustep-make-env"; - paths = [ gnustep_make ]; - }; - GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; - GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; + deps = [ gnustep_make ]; patches = [ ./fixup-base-makefile-installdir.patch ]; - dontBuild = true; - installPhase = '' - ./configure --disable-importing-config-file - make - make install \ - GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ - GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ - GNUSTEP_SYSTEM_TOOLS=$out/bin \ - GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ - GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ - GNUSTEP_SYSTEM_HEADERS=$out/include \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ - GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ - GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_HEADERS=$out/include \ - DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles - ''; meta = { description = "GNUstep-base is an implementation of AppKit and Foundation libraries of OPENSTEP and Cocoa."; @@ -80,6 +54,6 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.lgpl2Plus; maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.all; + platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep-gui/default.nix b/pkgs/development/libraries/gnustep-gui/default.nix index c27ad3105d5..a4a84d4fa8c 100644 --- a/pkgs/development/libraries/gnustep-gui/default.nix +++ b/pkgs/development/libraries/gnustep-gui/default.nix @@ -1,65 +1,23 @@ -{ buildEnv -, clang +{ + clang , fetchurl , gnustep_base, gnustep_make +, gnustep_builder #, xlibs, x11, freetype #, pkgconfig , stdenv }: let version = "0.24.0"; in -stdenv.mkDerivation rec { +gnustep_builder.mkDerivation rec { name = "gnustep-gui-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-0.24.0.tar.gz"; sha256 = "0d6jzfcyacxjzrr2p398ysvs1akv1fcmngfzxxbfxa947miydjxg"; }; - buildInputs = [ clang gnustep_base gnustep_make ]; - propagatedBuildInputs = [ ]; - GNUSTEP_env = buildEnv { - name = "gnustep-gui-env"; - paths = [ gnustep_make gnustep_base ]; - pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ]; - }; - GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; - GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; - ADDITIONAL_CPPFLAGS = "-DGNUSTEP"; + buildInputs = [ clang ]; + deps = [ gnustep_base gnustep_make ]; patches = [ ./fixup-gui-makefile-installdir.patch ./fixup-gui-tools-preamble.patch ./fixup-gui-textconverters-preamble.patch ]; - dontBuild = true; - installPhase = '' - export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include - ./configure - make \ - GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \ - GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \ - GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \ - GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \ - GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \ - GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ - GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \ - GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \ - GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \ - GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ - messages=yes - make install \ - GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ - GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ - GNUSTEP_SYSTEM_TOOLS=$out/bin \ - GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ - GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ - GNUSTEP_SYSTEM_HEADERS=$out/include \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ - GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ - GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_HEADERS=$out/include \ - DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles - ''; meta = { description = "GNUstep-gui is a GUI class library of GNUstep."; @@ -68,6 +26,6 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.lgpl2Plus; maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.all; + platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/tools/build-managers/gnustep-make/GNUstep.conf b/pkgs/development/tools/build-managers/gnustep-make/GNUstep.conf new file mode 100644 index 00000000000..f4e0e3b8162 --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep-make/GNUstep.conf @@ -0,0 +1,126 @@ +# These GNUSTEP_*_ROOT variables are obsolete, and will be removed. +#GNUSTEP_SYSTEM_ROOT=/nix/store/ky64z3j9l18wjcssb9pxnc792ihh3bvw-gnustep-make-2.6.6/System +#GNUSTEP_LOCAL_ROOT=/nix/store/ky64z3j9l18wjcssb9pxnc792ihh3bvw-gnustep-make-2.6.6/Local +#GNUSTEP_NETWORK_ROOT=/nix/store/ky64z3j9l18wjcssb9pxnc792ihh3bvw-gnustep-make-2.6.6/Network + +# The name of the user config file. This file can override +# some settings in this file. Usually used by users that want +# to install things into their GNUstep user domain and/or have +# many such domains. +GNUSTEP_USER_CONFIG_FILE=.GNUstep.conf + +# The name of the user directory, if any. This is obsolete, +# and will be removed. +GNUSTEP_USER_DIR=GNUstep + +# The name of the user directory where defaults (eg, preferences) are +# stored. If it does not start with a '/', it will be considered +# relative to the user home directory. +GNUSTEP_USER_DEFAULTS_DIR=GNUstep/Defaults + + +# This is where the gnustep-make Makefiles are installed. +# Traditionally, this is /usr/GNUstep/System/Library/Makefiles +GNUSTEP_MAKEFILES=@gnustepMakefiles@ + +# This is where the user home directories are. Only used to provide +# NSUserDirectory in gnustep-base. Never used anywhere else. +GNUSTEP_SYSTEM_USERS_DIR=/home +GNUSTEP_NETWORK_USERS_DIR=/home +GNUSTEP_LOCAL_USERS_DIR=/home + + +# This is where System GUI Applications get installed. +# Traditionally it is /usr/GNUstep/System/Applications. +GNUSTEP_SYSTEM_APPS=@systemApps@ + +# This is where System GUI Applications that only the +# Administrator can use get installed. +# Traditionally it is /usr/GNUstep/System/Applications/Admin. +GNUSTEP_SYSTEM_ADMIN_APPS=@systemAdminApps@ + +# This is where System Web Applications (GSWeb, SOPE) get +# installed. +# Traditionally it is /usr/GNUstep/System/Library/WebApplications. +GNUSTEP_SYSTEM_WEB_APPS=@systemWebApps@ + +# This is where System Command-Line Tools get installed. +# Traditionally it is /usr/GNUstep/System/Tools. +GNUSTEP_SYSTEM_TOOLS=@systemTools@ + +# This is where System Command-Line Tools that only the +# Administrator can use get installed. Important: this +# should not be in the PATH of normal users. +# Traditionally it is /usr/GNUstep/System/Tools/Admin. +GNUSTEP_SYSTEM_ADMIN_TOOLS=@systemAdminTools@ + +# This is where System resources get installed. This directory will +# contain a lot of executable code since *step traditionally likes to +# bundle executables and resources together. +# Traditionally it is /usr/GNUstep/System/Library. +GNUSTEP_SYSTEM_LIBRARY=@systemLibrary@ + +# This is where System headers get installed. They are the +# library .h headers. +# Traditionally it is /usr/GNUstep/System/Library/Headers. +GNUSTEP_SYSTEM_HEADERS=@systemHeaders@ + +# This is where System libraries get installed. By libraries we mean +# the shared/static object files that you can link into programs. +# Traditionally it is /usr/GNUstep/System/Library/Libraries. +GNUSTEP_SYSTEM_LIBRARIES=@systemLibraries@ + +# This is where System documentation get installed. This is known +# not to contain any executable, so we keep it separate. +# Traditionally it is /usr/GNUstep/System/Library/Documentation. +GNUSTEP_SYSTEM_DOC=@systemDoc@ + +# This is where System man pages get installed. +# Traditionally it is /usr/GNUstep/System/Library/Documentation/man. +GNUSTEP_SYSTEM_DOC_MAN=@systemDocMan@ + +# This is where System info pages get installed. +# Traditionally it is /usr/GNUstep/System/Library/Documentation/info. +GNUSTEP_SYSTEM_DOC_INFO=@systemDocInfo@ + + +GNUSTEP_NETWORK_APPS=@systemApps@ +GNUSTEP_NETWORK_ADMIN_APPS=@systemAdminApps@ +GNUSTEP_NETWORK_WEB_APPS=@systemWebApps@ +GNUSTEP_NETWORK_TOOLS=@systemTools@ +GNUSTEP_NETWORK_ADMIN_TOOLS=@systemAdminTools@ +GNUSTEP_NETWORK_LIBRARY=@systemLibrary@ +GNUSTEP_NETWORK_HEADERS=@systemHeaders@ +GNUSTEP_NETWORK_LIBRARIES=@systemLibraries@ +GNUSTEP_NETWORK_DOC=@systemDoc@ +GNUSTEP_NETWORK_DOC_MAN=@systemDocMan@ +GNUSTEP_NETWORK_DOC_INFO=@systemDocInfo@ + +GNUSTEP_LOCAL_APPS=@systemApps@ +GNUSTEP_LOCAL_ADMIN_APPS=@systemAdminApps@ +GNUSTEP_LOCAL_WEB_APPS=@systemWebApps@ +GNUSTEP_LOCAL_TOOLS=@systemTools@ +GNUSTEP_LOCAL_ADMIN_TOOLS=@systemAdminTools@ +GNUSTEP_LOCAL_LIBRARY=@systemLibrary@ +GNUSTEP_LOCAL_HEADERS=@systemHeaders@ +GNUSTEP_LOCAL_LIBRARIES=@systemLibraries@ +GNUSTEP_LOCAL_DOC=@systemDoc@ +GNUSTEP_LOCAL_DOC_MAN=@systemDocMan@ +GNUSTEP_LOCAL_DOC_INFO=@systemDocInfo@ + +# Important: settings in the User should normally be relative paths, +# and will be interpreted as relative to the user's directory. This +# allows each user to have their own domain to install things. You +# can set them to be absolute, mostly if you want to disable them +# by setting them equal to the ones in the Network domain. +GNUSTEP_USER_DIR_APPS=GNUstep/Applications +GNUSTEP_USER_DIR_ADMIN_APPS=GNUstep/Applications/Admin +GNUSTEP_USER_DIR_WEB_APPS=GNUstep/WebApplications +GNUSTEP_USER_DIR_TOOLS=GNUstep/Tools +GNUSTEP_USER_DIR_ADMIN_TOOLS=GNUstep/Tools/Admin +GNUSTEP_USER_DIR_LIBRARY=GNUstep/Library +GNUSTEP_USER_DIR_HEADERS=GNUstep/Library/Headers +GNUSTEP_USER_DIR_LIBRARIES=GNUstep/Library/Libraries +GNUSTEP_USER_DIR_DOC=GNUstep/Library/Documentation +GNUSTEP_USER_DIR_DOC_MAN=GNUstep/Library/Documentation/man +GNUSTEP_USER_DIR_DOC_INFO=GNUstep/Library/Documentation/info diff --git a/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix b/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix new file mode 100644 index 00000000000..8c106cc9242 --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix @@ -0,0 +1,44 @@ +{ stdenv, gnustep_make, buildEnv}: + +with stdenv.lib; + +{ + mkDerivation = + args @ { name, src, deps ? [], buildInputs, ... }: + let + GNUSTEP_env = + # buildEnv fails if there is only one path to symlink + if deps == null || length deps < 2 then gnustep_make + else buildEnv { + name = "gnustep-env-${name}"; + paths = deps; + pathsToLink = [ "/bin" "/sbin" "/lib" "/include" "/share" ]; + }; + in + stdenv.mkDerivation (args // { + GNUSTEP_conf = gnustep_make.gnustepConfigTemplate; + inherit GNUSTEP_env; + GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; + GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; + buildInputs = args.buildInputs ++ deps; + preConfigure = '' + cp $GNUSTEP_conf $(pwd)/GNUstep-build.conf + substituteInPlace $(pwd)/GNUstep-build.conf \ + --subst-var-by gnustepMakefiles $GNUSTEP_MAKEFILES \ + --subst-var-by systemApps "$GNUSTEP_env/lib/GNUstep/Applications" \ + --subst-var-by systemAdminApps "$GNUSTEP_env/lib/GNUstep/Applications" \ + --subst-var-by systemWebApps "$GNUSTEP_env/lib/GNUstep/WebApplications" \ + --subst-var-by systemTools "$GNUSTEP_env/bin" \ + --subst-var-by systemAdminTools "$GNUSTEP_env/sbin" \ + --subst-var-by systemLibrary "$GNUSTEP_env/lib" \ + --subst-var-by systemHeaders "$GNUSTEP_env/include" \ + --subst-var-by systemLibraries "$GNUSTEP_env/lib" \ + --subst-var-by systemDoc "$GNUSTEP_env/share/GNUstep/Documentation" \ + --subst-var-by systemDocMan "$GNUSTEP_env/share/man" \ + --subst-var-by systemDocInfo "$GNUSTEP_env/share/info" + export GNUSTEP_CONFIG_FILE=$(pwd)/GNUstep-build.conf + . $GNUSTEP_MAKEFILES/GNUstep.sh + ''; + installFlags = "GNUSTEP_SYSTEM_APPS=\${out}/lib/GNUstep/Applications GNUSTEP_SYSTEM_ADMIN_APPS=\${out}/lib/GNUstep/Applications GNUSTEP_SYSTEM_WEB_APPS=\${out}/lib/GNUstep/WebApplications GNUSTEP_SYSTEM_TOOLS=\${out}/bin GNUSTEP_SYSTEM_ADMIN_TOOLS=\${out}/sbin GNUSTEP_SYSTEM_LIBRARY=\${out}/lib GNUSTEP_SYSTEM_HEADERS=\${out}/include GNUSTEP_SYSTEM_LIBRARIES=\${out}/lib GNUSTEP_SYSTEM_DOC=\${out}/share/GNUstep/Documentation GNUSTEP_SYSTEM_DOC_MAN=\${out}/share/man GNUSTEP_SYSTEM_DOC_INFO=\${out}/share/info GNUSTEP_SYSTEM_LIBRARIES=\${out}/lib GNUSTEP_HEADERS=\${out}/include DESTDIR_GNUSTEP_MAKEFILES=\${out}/share/GNUstep/Makefiles"; + }); +} diff --git a/pkgs/development/tools/build-managers/gnustep-make/default.nix b/pkgs/development/tools/build-managers/gnustep-make/default.nix index a782526d509..158411d3082 100644 --- a/pkgs/development/tools/build-managers/gnustep-make/default.nix +++ b/pkgs/development/tools/build-managers/gnustep-make/default.nix @@ -8,8 +8,9 @@ stdenv.mkDerivation rec { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-make-2.6.6.tar.gz"; sha256 = "07cqr8x17bia9w6clbmiv7ay6r9nplrjz2cyzinv4w7zfpc19vxw"; }; - configureFlags = "--with-layout=fhs-system"; + configureFlags = "--with-installation-domain=SYSTEM"; buildInputs = [ clang which libobjc2 ]; + gnustepConfigTemplate = ./GNUstep.conf; meta = { description = "GNUstep-make is a build manager for GNUstep."; @@ -18,6 +19,6 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.lgpl2Plus; maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.all; + platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6dc478945c8..a07b7cc536a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6444,10 +6444,12 @@ in gnumake42 = callPackage ../development/tools/build-managers/gnumake/4.2 { }; gnumake = self.gnumake42; - gnustep_back = callPackage ../development/libraries/gnustep-back { stdenv = clangStdenv; }; - gnustep_base = callPackage ../development/libraries/gnustep-base { stdenv = clangStdenv; giflib = giflib_4_1; }; + gnustep_builder = import ../development/tools/build-managers/gnustep-make/build-gnustep-package.nix { stdenv = clangStdenv; inherit gnustep_make; inherit buildEnv; }; + + gnustep_back = callPackage ../development/libraries/gnustep-back { }; + gnustep_base = callPackage ../development/libraries/gnustep-base { giflib = giflib_4_1; }; gnustep_make = callPackage ../development/tools/build-managers/gnustep-make { stdenv = clangStdenv; }; - gnustep_gui = callPackage ../development/libraries/gnustep-gui { stdenv = clangStdenv; }; + gnustep_gui = callPackage ../development/libraries/gnustep-gui { }; gob2 = callPackage ../development/tools/misc/gob2 { }; From 4cbeef463c53877f9756d02d81bfd93fe187ccd0 Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Mon, 8 Dec 2014 22:25:47 +0600 Subject: [PATCH 05/23] gnustep: use gnustep_builder Built ProjectCenter and Gorm with the new gnustep_builder. Had to go back and fix a few things. --- pkgs/applications/editors/gorm/default.nix | 49 ++--------------- .../editors/projectcenter/default.nix | 52 ++----------------- .../libraries/gnustep-back/default.nix | 4 +- .../libraries/gnustep-base/default.nix | 3 +- .../libraries/gnustep-gui/default.nix | 4 +- .../gnustep-make/build-gnustep-package.nix | 15 +++--- 6 files changed, 22 insertions(+), 105 deletions(-) diff --git a/pkgs/applications/editors/gorm/default.nix b/pkgs/applications/editors/gorm/default.nix index fd0b88322cd..571c4f1b55e 100644 --- a/pkgs/applications/editors/gorm/default.nix +++ b/pkgs/applications/editors/gorm/default.nix @@ -1,60 +1,17 @@ { buildEnv -, stdenv, fetchurl, gnustep_base, gnustep_make, gnustep_back, gnustep_gui +, stdenv, fetchurl, gnustep_builder, gnustep_base, gnustep_back, gnustep_gui }: let version = "1.2.18"; in -stdenv.mkDerivation rec { +gnustep_builder.mkDerivation rec { name = "gorm-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz"; sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq"; }; - GNUSTEP_env = buildEnv { - name = "gnustep-gorm-env"; - paths = [ gnustep_make gnustep_back gnustep_base gnustep_gui ]; - pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ]; - }; - GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; - GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; - ADDITIONAL_CPPFLAGS = "-DGNUSTEP"; - - buildInputs = [ gnustep_base gnustep_back gnustep_make gnustep_gui ]; - dontBuild = true; - installPhase = '' - export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include - make \ - GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \ - GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \ - GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \ - GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \ - GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \ - GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ - GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \ - GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \ - GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \ - GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ - messages=yes - make install \ - GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ - GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ - GNUSTEP_SYSTEM_TOOLS=$out/bin \ - GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ - GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ - GNUSTEP_SYSTEM_HEADERS=$out/include \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ - GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ - GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_HEADERS=$out/include \ - DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles - ''; + deps = [ gnustep_base gnustep_back gnustep_gui ]; meta = { description = "Gorm stands for Graphical Object Relationship Modeller and is an easy-to-use interface designer for GNUstep"; diff --git a/pkgs/applications/editors/projectcenter/default.nix b/pkgs/applications/editors/projectcenter/default.nix index 56c4a0535c2..a52a2cf70e3 100644 --- a/pkgs/applications/editors/projectcenter/default.nix +++ b/pkgs/applications/editors/projectcenter/default.nix @@ -1,62 +1,20 @@ { buildEnv , stdenv, fetchurl -, gnustep_base, gnustep_make, gnustep_back, gnustep_gui +, gnustep_builder +, gnustep_base, gnustep_back, gnustep_gui }: let version = "0.6.2"; in -stdenv.mkDerivation rec { +gnustep_builder.mkDerivation rec { name = "projectcenter-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/ProjectCenter-${version}.tar.gz"; sha256 = "0wwlbpqf541apw192jb633d634zkpjhcrrkd1j80y9hihphll465"; }; - GNUSTEP_env = buildEnv { - name = "gnustep-projectcenter-env"; - paths = [ gnustep_make gnustep_back gnustep_base gnustep_gui ]; - pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ]; - }; - GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; - GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; - ADDITIONAL_CPPFLAGS = "-DGNUSTEP"; - - patches = [ ./fixup-preamble.patch ]; - buildInputs = [ gnustep_base gnustep_back gnustep_make gnustep_gui ]; - dontBuild = true; - - installPhase = '' - export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include - make \ - GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \ - GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \ - GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \ - GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \ - GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \ - GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ - GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \ - GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \ - GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \ - GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \ - messages=yes - make install \ - GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ - GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \ - GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \ - GNUSTEP_SYSTEM_TOOLS=$out/bin \ - GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \ - GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \ - GNUSTEP_SYSTEM_HEADERS=$out/include \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \ - GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \ - GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \ - GNUSTEP_SYSTEM_LIBRARIES=$out/lib \ - GNUSTEP_HEADERS=$out/include - ''; +# patches = [ ./fixup-preamble.patch ]; + deps = [ gnustep_base gnustep_back gnustep_gui ]; meta = { description = "ProjectCenter is GNUstep's integrated development environment (IDE) and allows a rapid development and easy managment of ProjectCenter running on GNUstep applications, tools and frameworks."; diff --git a/pkgs/development/libraries/gnustep-back/default.nix b/pkgs/development/libraries/gnustep-back/default.nix index b19beb9d690..826c284fa21 100644 --- a/pkgs/development/libraries/gnustep-back/default.nix +++ b/pkgs/development/libraries/gnustep-back/default.nix @@ -2,7 +2,7 @@ , cairo , clang , fetchurl -, gnustep_base, gnustep_make, gnustep_gui +, gnustep_base, gnustep_gui , gnustep_builder , xlibs , x11 @@ -20,7 +20,7 @@ gnustep_builder.mkDerivation rec { sha256 = "0qixbilkkrqxrhhj9hnp7ygd5gs23b3qbbgk3gaxj73d0xqfvhjz"; }; buildInputs = [ cairo clang freetype pkgconfig x11 ]; - deps = [ gnustep_make gnustep_base gnustep_gui ]; + deps = [ gnustep_base gnustep_gui ]; meta = { description = "GNUstep-back is a generic backend for GNUstep."; diff --git a/pkgs/development/libraries/gnustep-base/default.nix b/pkgs/development/libraries/gnustep-base/default.nix index 7def6e6f8db..90ead68f16b 100644 --- a/pkgs/development/libraries/gnustep-base/default.nix +++ b/pkgs/development/libraries/gnustep-base/default.nix @@ -2,7 +2,7 @@ , gnustep_builder , clang, cups , fetchurl -, gmp, gnustep_make, gnutls +, gmp, gnutls , libffi , libjpeg, libtiff, libpng, giflib, libungif , libxml2, libxslt, libiconv @@ -44,7 +44,6 @@ gnustep_builder.mkDerivation { icu portaudio ]; - deps = [ gnustep_make ]; patches = [ ./fixup-base-makefile-installdir.patch ]; meta = { description = "GNUstep-base is an implementation of AppKit and Foundation libraries of OPENSTEP and Cocoa."; diff --git a/pkgs/development/libraries/gnustep-gui/default.nix b/pkgs/development/libraries/gnustep-gui/default.nix index a4a84d4fa8c..08dd8a712dc 100644 --- a/pkgs/development/libraries/gnustep-gui/default.nix +++ b/pkgs/development/libraries/gnustep-gui/default.nix @@ -1,7 +1,7 @@ { clang , fetchurl -, gnustep_base, gnustep_make +, gnustep_base , gnustep_builder #, xlibs, x11, freetype #, pkgconfig @@ -16,7 +16,7 @@ gnustep_builder.mkDerivation rec { sha256 = "0d6jzfcyacxjzrr2p398ysvs1akv1fcmngfzxxbfxa947miydjxg"; }; buildInputs = [ clang ]; - deps = [ gnustep_base gnustep_make ]; + deps = [ gnustep_base ]; patches = [ ./fixup-gui-makefile-installdir.patch ./fixup-gui-tools-preamble.patch ./fixup-gui-textconverters-preamble.patch ]; meta = { description = "GNUstep-gui is a GUI class library of GNUstep."; diff --git a/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix b/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix index 8c106cc9242..8351bcfeb72 100644 --- a/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix +++ b/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix @@ -4,14 +4,14 @@ with stdenv.lib; { mkDerivation = - args @ { name, src, deps ? [], buildInputs, ... }: + args @ { name, src, deps ? [], buildInputs ? [], propagatedBuildInputs ? [], ... }: let GNUSTEP_env = # buildEnv fails if there is only one path to symlink - if deps == null || length deps < 2 then gnustep_make + if deps == null || length deps < 1 then gnustep_make else buildEnv { - name = "gnustep-env-${name}"; - paths = deps; + name = "gnustep-env-for-${name}"; + paths = [ gnustep_make ] ++ deps; pathsToLink = [ "/bin" "/sbin" "/lib" "/include" "/share" ]; }; in @@ -20,7 +20,8 @@ with stdenv.lib; inherit GNUSTEP_env; GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; - buildInputs = args.buildInputs ++ deps; + buildInputs = buildInputs ++ deps ++ [ gnustep_make ]; + propagatedBuildInputs = propagatedBuildInputs ++ deps; preConfigure = '' cp $GNUSTEP_conf $(pwd)/GNUstep-build.conf substituteInPlace $(pwd)/GNUstep-build.conf \ @@ -38,7 +39,9 @@ with stdenv.lib; --subst-var-by systemDocInfo "$GNUSTEP_env/share/info" export GNUSTEP_CONFIG_FILE=$(pwd)/GNUstep-build.conf . $GNUSTEP_MAKEFILES/GNUstep.sh - ''; + ''; + buildFlags = "GNUSTEP_MAKEFILES=${GNUSTEP_env}/share/GNUstep/Makefiles"; + configureFlags = "GNUSTEP_MAKEFILES=${GNUSTEP_env}/share/GNUstep/Makefiles"; installFlags = "GNUSTEP_SYSTEM_APPS=\${out}/lib/GNUstep/Applications GNUSTEP_SYSTEM_ADMIN_APPS=\${out}/lib/GNUstep/Applications GNUSTEP_SYSTEM_WEB_APPS=\${out}/lib/GNUstep/WebApplications GNUSTEP_SYSTEM_TOOLS=\${out}/bin GNUSTEP_SYSTEM_ADMIN_TOOLS=\${out}/sbin GNUSTEP_SYSTEM_LIBRARY=\${out}/lib GNUSTEP_SYSTEM_HEADERS=\${out}/include GNUSTEP_SYSTEM_LIBRARIES=\${out}/lib GNUSTEP_SYSTEM_DOC=\${out}/share/GNUstep/Documentation GNUSTEP_SYSTEM_DOC_MAN=\${out}/share/man GNUSTEP_SYSTEM_DOC_INFO=\${out}/share/info GNUSTEP_SYSTEM_LIBRARIES=\${out}/lib GNUSTEP_HEADERS=\${out}/include DESTDIR_GNUSTEP_MAKEFILES=\${out}/share/GNUstep/Makefiles"; }); } From ea3dcb3264e8b8d6f6b9b257ed44f55ce92ff274 Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Wed, 10 Dec 2014 22:28:55 +0600 Subject: [PATCH 06/23] gnustep: add setup hook for make Adding a setup-hook for gnustep-make. --- pkgs/applications/editors/gorm/default.nix | 12 +- .../editors/gorm/fix-gs-makefiles.patch | 28 ++++ .../editors/projectcenter/default.nix | 15 +- .../libraries/gnustep-back/default.nix | 8 +- .../libraries/gnustep-base/default.nix | 6 +- .../libraries/gnustep-gui/default.nix | 8 +- .../gnustep-make/build-gnustep-package.nix | 47 ------ .../build-managers/gnustep-make/default.nix | 3 +- .../gs-makefiles-additional.patch | 154 ++++++++++++++++++ .../build-managers/gnustep-make/setup-hook.sh | 29 ++++ pkgs/top-level/all-packages.nix | 8 +- 11 files changed, 238 insertions(+), 80 deletions(-) create mode 100644 pkgs/applications/editors/gorm/fix-gs-makefiles.patch delete mode 100644 pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix create mode 100644 pkgs/development/tools/build-managers/gnustep-make/gs-makefiles-additional.patch create mode 100644 pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh diff --git a/pkgs/applications/editors/gorm/default.nix b/pkgs/applications/editors/gorm/default.nix index 571c4f1b55e..aaa31289341 100644 --- a/pkgs/applications/editors/gorm/default.nix +++ b/pkgs/applications/editors/gorm/default.nix @@ -1,17 +1,18 @@ -{ buildEnv -, stdenv, fetchurl, gnustep_builder, gnustep_base, gnustep_back, gnustep_gui +{ stdenv, fetchurl, gnustep_base, gnustep_back, gnustep_make, gnustep_gui }: let version = "1.2.18"; in -gnustep_builder.mkDerivation rec { +stdenv.mkDerivation rec { name = "gorm-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz"; sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq"; }; - deps = [ gnustep_base gnustep_back gnustep_gui ]; + patches = [ ./fix-gs-makefiles.patch ]; + buildInputs = [ gnustep_make gnustep_base gnustep_back gnustep_gui ]; + propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui ]; meta = { description = "Gorm stands for Graphical Object Relationship Modeller and is an easy-to-use interface designer for GNUstep"; @@ -21,7 +22,6 @@ gnustep_builder.mkDerivation rec { license = stdenv.lib.licenses.lgpl2Plus; maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.all; - broken = true; + platforms = stdenv.lib.platforms.linux; }; } \ No newline at end of file diff --git a/pkgs/applications/editors/gorm/fix-gs-makefiles.patch b/pkgs/applications/editors/gorm/fix-gs-makefiles.patch new file mode 100644 index 00000000000..cf395d32c63 --- /dev/null +++ b/pkgs/applications/editors/gorm/fix-gs-makefiles.patch @@ -0,0 +1,28 @@ +diff -ru gorm-1.2.20/GNUmakefile gorm-1.2.20.patched/GNUmakefile +--- gorm-1.2.20/GNUmakefile 2010-05-30 12:55:26.000000000 +0600 ++++ gorm-1.2.20.patched/GNUmakefile 2014-12-10 22:21:18.000000000 +0600 +@@ -24,6 +24,23 @@ + # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + # + ++ifeq ($(GNUSTEP_MAKEFILES),) ++ GNUSTEP_MAKEFILES := $(shell gnustep-config --variable=GNUSTEP_MAKEFILES 2>/dev/null) ++ ifeq ($(GNUSTEP_MAKEFILES),) ++ $(warning ) ++ $(warning Unable to obtain GNUSTEP_MAKEFILES setting from gnustep-config!) ++ $(warning Perhaps gnustep-make is not properly installed,) ++ $(warning so gnustep-config is not in your PATH.) ++ $(warning ) ++ $(warning Your PATH is currently $(PATH)) ++ $(warning ) ++ endif ++endif ++ ++ifeq ($(GNUSTEP_MAKEFILES),) ++ $(error You need to set GNUSTEP_MAKEFILES before compiling!) ++endif ++ + PACKAGE_NAME = gorm + export PACKAGE_NAME + include $(GNUSTEP_MAKEFILES)/common.make +Only in gorm-1.2.20.patched/: GNUmakefile~ diff --git a/pkgs/applications/editors/projectcenter/default.nix b/pkgs/applications/editors/projectcenter/default.nix index a52a2cf70e3..2de8df9bf29 100644 --- a/pkgs/applications/editors/projectcenter/default.nix +++ b/pkgs/applications/editors/projectcenter/default.nix @@ -1,20 +1,18 @@ -{ buildEnv -, stdenv, fetchurl -, gnustep_builder -, gnustep_base, gnustep_back, gnustep_gui +{ stdenv, fetchurl +, gnustep_base, gnustep_back, gnustep_make, gnustep_gui }: let version = "0.6.2"; in -gnustep_builder.mkDerivation rec { +stdenv.mkDerivation rec { name = "projectcenter-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/ProjectCenter-${version}.tar.gz"; sha256 = "0wwlbpqf541apw192jb633d634zkpjhcrrkd1j80y9hihphll465"; }; -# patches = [ ./fixup-preamble.patch ]; - deps = [ gnustep_base gnustep_back gnustep_gui ]; + buildInputs = [ gnustep_make gnustep_base gnustep_back gnustep_gui ]; + propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui ]; meta = { description = "ProjectCenter is GNUstep's integrated development environment (IDE) and allows a rapid development and easy managment of ProjectCenter running on GNUstep applications, tools and frameworks."; @@ -24,7 +22,6 @@ gnustep_builder.mkDerivation rec { license = stdenv.lib.licenses.lgpl2Plus; maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.all; - broken = true; + platforms = stdenv.lib.platforms.linux; }; } \ No newline at end of file diff --git a/pkgs/development/libraries/gnustep-back/default.nix b/pkgs/development/libraries/gnustep-back/default.nix index 826c284fa21..49948263547 100644 --- a/pkgs/development/libraries/gnustep-back/default.nix +++ b/pkgs/development/libraries/gnustep-back/default.nix @@ -2,8 +2,7 @@ , cairo , clang , fetchurl -, gnustep_base, gnustep_gui -, gnustep_builder +, gnustep_base, gnustep_make, gnustep_gui , xlibs , x11 , freetype @@ -13,14 +12,13 @@ let version = "0.24.0"; in -gnustep_builder.mkDerivation rec { +stdenv.mkDerivation rec { name = "gnustep-back-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-0.24.0.tar.gz"; sha256 = "0qixbilkkrqxrhhj9hnp7ygd5gs23b3qbbgk3gaxj73d0xqfvhjz"; }; - buildInputs = [ cairo clang freetype pkgconfig x11 ]; - deps = [ gnustep_base gnustep_gui ]; + buildInputs = [ cairo clang gnustep_base gnustep_gui gnustep_make freetype pkgconfig x11 ]; meta = { description = "GNUstep-back is a generic backend for GNUstep."; diff --git a/pkgs/development/libraries/gnustep-base/default.nix b/pkgs/development/libraries/gnustep-base/default.nix index 90ead68f16b..67fd7fecf1d 100644 --- a/pkgs/development/libraries/gnustep-base/default.nix +++ b/pkgs/development/libraries/gnustep-base/default.nix @@ -1,5 +1,5 @@ { aspell, audiofile -, gnustep_builder +, gnustep_make , clang, cups , fetchurl , gmp, gnutls @@ -15,7 +15,7 @@ let version = "1.24.7"; in -gnustep_builder.mkDerivation { +stdenv.mkDerivation { name = "gnustep-base-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-1.24.7.tar.gz"; @@ -24,7 +24,7 @@ gnustep_builder.mkDerivation { buildInputs = [ aspell audiofile clang cups - gmp gnutls + gmp gnustep_make gnutls libffi libjpeg libtiff libpng giflib libungif libxml2 libxslt libiconv diff --git a/pkgs/development/libraries/gnustep-gui/default.nix b/pkgs/development/libraries/gnustep-gui/default.nix index 08dd8a712dc..fffa95320c9 100644 --- a/pkgs/development/libraries/gnustep-gui/default.nix +++ b/pkgs/development/libraries/gnustep-gui/default.nix @@ -1,22 +1,22 @@ { clang , fetchurl +, gnustep_make , gnustep_base -, gnustep_builder #, xlibs, x11, freetype #, pkgconfig , stdenv }: let version = "0.24.0"; in -gnustep_builder.mkDerivation rec { +stdenv.mkDerivation rec { name = "gnustep-gui-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-0.24.0.tar.gz"; sha256 = "0d6jzfcyacxjzrr2p398ysvs1akv1fcmngfzxxbfxa947miydjxg"; }; - buildInputs = [ clang ]; - deps = [ gnustep_base ]; + buildInputs = [ clang gnustep_make gnustep_base ]; + propagatedBuildInputs = [ gnustep_base ]; patches = [ ./fixup-gui-makefile-installdir.patch ./fixup-gui-tools-preamble.patch ./fixup-gui-textconverters-preamble.patch ]; meta = { description = "GNUstep-gui is a GUI class library of GNUstep."; diff --git a/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix b/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix deleted file mode 100644 index 8351bcfeb72..00000000000 --- a/pkgs/development/tools/build-managers/gnustep-make/build-gnustep-package.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ stdenv, gnustep_make, buildEnv}: - -with stdenv.lib; - -{ - mkDerivation = - args @ { name, src, deps ? [], buildInputs ? [], propagatedBuildInputs ? [], ... }: - let - GNUSTEP_env = - # buildEnv fails if there is only one path to symlink - if deps == null || length deps < 1 then gnustep_make - else buildEnv { - name = "gnustep-env-for-${name}"; - paths = [ gnustep_make ] ++ deps; - pathsToLink = [ "/bin" "/sbin" "/lib" "/include" "/share" ]; - }; - in - stdenv.mkDerivation (args // { - GNUSTEP_conf = gnustep_make.gnustepConfigTemplate; - inherit GNUSTEP_env; - GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles"; - GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM"; - buildInputs = buildInputs ++ deps ++ [ gnustep_make ]; - propagatedBuildInputs = propagatedBuildInputs ++ deps; - preConfigure = '' - cp $GNUSTEP_conf $(pwd)/GNUstep-build.conf - substituteInPlace $(pwd)/GNUstep-build.conf \ - --subst-var-by gnustepMakefiles $GNUSTEP_MAKEFILES \ - --subst-var-by systemApps "$GNUSTEP_env/lib/GNUstep/Applications" \ - --subst-var-by systemAdminApps "$GNUSTEP_env/lib/GNUstep/Applications" \ - --subst-var-by systemWebApps "$GNUSTEP_env/lib/GNUstep/WebApplications" \ - --subst-var-by systemTools "$GNUSTEP_env/bin" \ - --subst-var-by systemAdminTools "$GNUSTEP_env/sbin" \ - --subst-var-by systemLibrary "$GNUSTEP_env/lib" \ - --subst-var-by systemHeaders "$GNUSTEP_env/include" \ - --subst-var-by systemLibraries "$GNUSTEP_env/lib" \ - --subst-var-by systemDoc "$GNUSTEP_env/share/GNUstep/Documentation" \ - --subst-var-by systemDocMan "$GNUSTEP_env/share/man" \ - --subst-var-by systemDocInfo "$GNUSTEP_env/share/info" - export GNUSTEP_CONFIG_FILE=$(pwd)/GNUstep-build.conf - . $GNUSTEP_MAKEFILES/GNUstep.sh - ''; - buildFlags = "GNUSTEP_MAKEFILES=${GNUSTEP_env}/share/GNUstep/Makefiles"; - configureFlags = "GNUSTEP_MAKEFILES=${GNUSTEP_env}/share/GNUstep/Makefiles"; - installFlags = "GNUSTEP_SYSTEM_APPS=\${out}/lib/GNUstep/Applications GNUSTEP_SYSTEM_ADMIN_APPS=\${out}/lib/GNUstep/Applications GNUSTEP_SYSTEM_WEB_APPS=\${out}/lib/GNUstep/WebApplications GNUSTEP_SYSTEM_TOOLS=\${out}/bin GNUSTEP_SYSTEM_ADMIN_TOOLS=\${out}/sbin GNUSTEP_SYSTEM_LIBRARY=\${out}/lib GNUSTEP_SYSTEM_HEADERS=\${out}/include GNUSTEP_SYSTEM_LIBRARIES=\${out}/lib GNUSTEP_SYSTEM_DOC=\${out}/share/GNUstep/Documentation GNUSTEP_SYSTEM_DOC_MAN=\${out}/share/man GNUSTEP_SYSTEM_DOC_INFO=\${out}/share/info GNUSTEP_SYSTEM_LIBRARIES=\${out}/lib GNUSTEP_HEADERS=\${out}/include DESTDIR_GNUSTEP_MAKEFILES=\${out}/share/GNUstep/Makefiles"; - }); -} diff --git a/pkgs/development/tools/build-managers/gnustep-make/default.nix b/pkgs/development/tools/build-managers/gnustep-make/default.nix index 158411d3082..a9214934577 100644 --- a/pkgs/development/tools/build-managers/gnustep-make/default.nix +++ b/pkgs/development/tools/build-managers/gnustep-make/default.nix @@ -10,7 +10,8 @@ stdenv.mkDerivation rec { }; configureFlags = "--with-installation-domain=SYSTEM"; buildInputs = [ clang which libobjc2 ]; - gnustepConfigTemplate = ./GNUstep.conf; + patches = [ ./gs-makefiles-additional.patch ]; + setupHook = ./setup-hook.sh; meta = { description = "GNUstep-make is a build manager for GNUstep."; diff --git a/pkgs/development/tools/build-managers/gnustep-make/gs-makefiles-additional.patch b/pkgs/development/tools/build-managers/gnustep-make/gs-makefiles-additional.patch new file mode 100644 index 00000000000..aeefcb53e2b --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep-make/gs-makefiles-additional.patch @@ -0,0 +1,154 @@ +diff -ru gnustep-make-2.6.6/common.make gnustep-make-2.6.6.patched/common.make +--- gnustep-make-2.6.6/common.make 2013-03-04 17:21:55.000000000 +0600 ++++ gnustep-make-2.6.6.patched/common.make 2014-12-09 21:29:10.000000000 +0600 +@@ -135,7 +135,9 @@ + endif + # Then include makefiles with flags/config options installed by the + # libraries themselves +--include $(GNUSTEP_MAKEFILES)/Additional/*.make ++ifneq ($(NIX_GNUSTEP_MAKEFILES_ADDITIONAL),) ++-include $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL) ++endif + + # + # Determine target specific settings +Only in gnustep-make-2.6.6.patched/: common.make~ +Only in gnustep-make-2.6.6.patched/: configure.ac~ +diff -ru gnustep-make-2.6.6/GNUmakefile.in gnustep-make-2.6.6.patched/GNUmakefile.in +--- gnustep-make-2.6.6/GNUmakefile.in 2013-09-20 12:13:15.000000000 +0600 ++++ gnustep-make-2.6.6.patched/GNUmakefile.in 2014-12-07 20:35:27.000000000 +0600 +@@ -173,7 +173,6 @@ + "$(makedir)/$(GNUSTEP_TARGET_CPU)" \ + "$(makedir)/$(GNUSTEP_TARGET_DIR)" \ + "$(makedir)/$(GNUSTEP_TARGET_LDIR)" \ +- "$(makedir)/Additional" \ + "$(makedir)/Auxiliary" \ + "$(makedir)/Master" \ + "$(makedir)/Instance" \ +@@ -314,7 +313,6 @@ + -rmdir "$(makedir)/Instance" + -rmdir "$(makedir)/Master" + -rmdir "$(makedir)/Auxiliary" +- -rmdir "$(makedir)/Additional" + -rmdir "$(makedir)/$(GNUSTEP_TARGET_LDIR)" + -rmdir "$(makedir)/$(GNUSTEP_TARGET_DIR)" + -rmdir "$(makedir)/$(GNUSTEP_TARGET_CPU)" +diff -ru gnustep-make-2.6.6/gnustep-config.in gnustep-make-2.6.6.patched/gnustep-config.in +--- gnustep-make-2.6.6/gnustep-config.in 2013-07-02 16:06:24.000000000 +0600 ++++ gnustep-make-2.6.6.patched/gnustep-config.in 2014-12-09 21:29:49.000000000 +0600 +@@ -66,6 +66,7 @@ + echo " --variable=OBJCXX" + echo " --variable=GNUMAKE" + echo " --variable=GNUSTEP_MAKEFILES" ++ echo " --variable=NIX_GNUSTEP_MAKEFILES_ADDITIONAL" + echo " --variable=GNUSTEP_USER_DEFAULTS_DIR" + echo " --variable=GNUSTEP_HOST" + echo " --variable=GNUSTEP_HOST_CPU" +@@ -153,6 +154,8 @@ + + export GNUSTEP_MAKEFILES + ++export NIX_GNUSTEP_MAKEFILES_ADDITIONAL ++ + # + # If all they want to know if GNUSTEP_MAKEFILES or anything that + # we can compute only using GNUSTEP_MAKEFILES, we can print it out +@@ -168,6 +171,8 @@ + exit 0;; + --variable=GNUSTEP_MAKEFILES) echo "$GNUSTEP_MAKEFILES" + exit 0;; ++ --variable=NIX_GNUSTEP_MAKEFILES_ADDITIONAL) echo "$NIX_GNUSTEP_MAKEFILES_ADDITIONAL" ++ exit 0;; + --variable=GNUMAKE) echo "@GNUMAKE@" + exit 0;; + --debug-flags) @GNUMAKE@ -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-objc-flags quiet=yes debug=yes 2>/dev/null +Only in gnustep-make-2.6.6.patched/: gnustep-config.in~ +diff -ru gnustep-make-2.6.6/GNUstep.csh.in gnustep-make-2.6.6.patched/GNUstep.csh.in +--- gnustep-make-2.6.6/GNUstep.csh.in 2011-05-03 13:40:10.000000000 +0600 ++++ gnustep-make-2.6.6.patched/GNUstep.csh.in 2014-12-09 20:14:05.000000000 +0600 +@@ -130,6 +130,10 @@ + setenv GNUSTEP_MAKEFILES "@GNUSTEP_MAKEFILES@" + endif + ++if ( ! ${?NIX_GNUSTEP_MAKEFILES_ADDITIONAL} ) then ++ setenv NIX_GNUSTEP_MAKEFILES_ADDITIONAL "@NIX_GNUSTEP_MAKEFILES_ADDITIONAL@" ++endif ++ + if ( "${GNUSTEP_MAKE_STRICT_V2_MODE}" == "yes" ) then + unsetenv GNUSTEP_USER_DIR + unsetenv GNUSTEP_USER_ROOT +Only in gnustep-make-2.6.6.patched/: GNUstep.csh.in~ +diff -ru gnustep-make-2.6.6/GNUstep.sh.in gnustep-make-2.6.6.patched/GNUstep.sh.in +--- gnustep-make-2.6.6/GNUstep.sh.in 2012-02-21 20:21:38.000000000 +0600 ++++ gnustep-make-2.6.6.patched/GNUstep.sh.in 2014-12-09 20:14:19.000000000 +0600 +@@ -173,6 +173,10 @@ + fi + export GNUSTEP_MAKEFILES + ++if [ -z "$NIX_GNUSTEP_MAKEFILES_ADDITIONAL" ]; then ++ NIX_GNUSTEP_MAKEFILES_ADDITIONAL=@NIX_GNUSTEP_MAKEFILES_ADDITIONAL@ ++fi ++export NIX_GNUSTEP_MAKEFILES_ADDITIONAL + + if [ "$GNUSTEP_MAKE_STRICT_V2_MODE" = "yes" ]; then + # Make sure this is never set in gnustep-make v2 strict mode; it +Only in gnustep-make-2.6.6.patched/: GNUstep.sh.in~ +diff -ru gnustep-make-2.6.6/GNUstep-strict-v2.conf.in gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in +--- gnustep-make-2.6.6/GNUstep-strict-v2.conf.in 2008-01-15 20:35:36.000000000 +0600 ++++ gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in 2014-12-07 22:04:56.000000000 +0600 +@@ -47,7 +47,6 @@ + # Traditionally, this is /usr/GNUstep/System/Library/Makefiles + GNUSTEP_MAKEFILES=@GNUSTEP_MAKEFILES@ + +- + # This is where the user home directories are. Only used to provide + # NSUserDirectory in gnustep-base. Never used anywhere else. + GNUSTEP_SYSTEM_USERS_DIR=@GNUSTEP_SYSTEM_USERS_DIR@ +Only in gnustep-make-2.6.6.patched/: GNUstep-strict-v2.conf.in~ +diff -ru gnustep-make-2.6.6/library-combo.make gnustep-make-2.6.6.patched/library-combo.make +--- gnustep-make-2.6.6/library-combo.make 2012-02-21 19:53:02.000000000 +0600 ++++ gnustep-make-2.6.6.patched/library-combo.make 2014-12-09 20:15:05.000000000 +0600 +@@ -142,7 +142,7 @@ + # + # Third-party foundations not using make package + # Our own foundation will install a base.make file into +-# $GNUSTEP_MAKEFILES/Additional/ to set the needed flags ++# $NIX_GNUSTEP_MAKEFILES_ADDITIONAL to set the needed flags + # + ifeq ($(FOUNDATION_LIB), nx) + # -framework Foundation is used both to find headers, and to link +@@ -166,7 +166,7 @@ + + # + # FIXME - Ask Helge to move this inside his libFoundation, and have +-# it installed as a $(GNUSTEP_MAKEFILES)/Additional/libFoundation.make ++# it installed as a $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)/libFoundation.make + # + ifeq ($(FOUNDATION_LIB),fd) + -include $(GNUSTEP_MAKEFILES)/libFoundation.make +@@ -193,7 +193,7 @@ + GUI_LIBS = + # + # Third-party GUI libraries - our own sets its flags into +-# $(GNUSTEP_MAKEFILES)/Additional/gui.make ++# $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)/gui.make + # + ifeq ($(GUI_LIB), nx) + GUI_DEFINE = -DNeXT_GUI_LIBRARY=1 +Only in gnustep-make-2.6.6.patched/: library-combo.make~ +Only in gnustep-make-2.6.6.patched/: result +diff -ru gnustep-make-2.6.6/rules.make gnustep-make-2.6.6.patched/rules.make +--- gnustep-make-2.6.6/rules.make 2013-07-04 16:05:44.000000000 +0600 ++++ gnustep-make-2.6.6.patched/rules.make 2014-12-09 21:31:04.000000000 +0600 +@@ -667,7 +667,9 @@ + exit 1$(END_ECHO) + endif + +-$(GNUSTEP_MAKEFILES)/Additional/*.make: ; ++ifneq ($(NIX_GNUSTEP_MAKEFILES_ADDITIONAL),) ++$(NIX_GNUSTEP_MAKEFILES_ADDITIONAL): ; ++endif + + $(GNUSTEP_MAKEFILES)/Master/*.make: ; + +Only in gnustep-make-2.6.6.patched/: rules.make~ diff --git a/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh b/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh new file mode 100644 index 00000000000..fa70b9ab5ca --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh @@ -0,0 +1,29 @@ +# this path is used by some packages to install additional makefiles +export DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles + +installFlagsArray=( \ + "GNUSTEP_INSTALLATION_DOMAIN=SYSTEM" \ + "GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications" \ + "GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications" \ + "GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications" \ + "GNUSTEP_SYSTEM_TOOLS=$out/bin" \ + "GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin" \ + "GNUSTEP_SYSTEM_LIBRARY=$out/lib" \ + "GNUSTEP_SYSTEM_HEADERS=$out/include" \ + "GNUSTEP_SYSTEM_LIBRARIES=$out/lib" \ + "GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation" \ + "GNUSTEP_SYSTEM_DOC_MAN=$out/share/man" \ + "GNUSTEP_SYSTEM_DOC_INFO=$out/share/info" \ + "GNUSTEP_SYSTEM_LIBRARIES=$out/lib" \ + "GNUSTEP_HEADERS=$out/include" \ +) + +addGSMakefilesPath () { + local filename + + for filename in $1/share/GNUstep/Makefiles/Additional/*.make ; do + export NIX_GNUSTEP_MAKEFILES_ADDITIONAL="$NIX_GNUSTEP_MAKEFILES_ADDITIONAL $filename" + done +} + +envHooks=(${envHooks[@]} addGSMakefilesPath) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a07b7cc536a..6dc478945c8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6444,12 +6444,10 @@ in gnumake42 = callPackage ../development/tools/build-managers/gnumake/4.2 { }; gnumake = self.gnumake42; - gnustep_builder = import ../development/tools/build-managers/gnustep-make/build-gnustep-package.nix { stdenv = clangStdenv; inherit gnustep_make; inherit buildEnv; }; - - gnustep_back = callPackage ../development/libraries/gnustep-back { }; - gnustep_base = callPackage ../development/libraries/gnustep-base { giflib = giflib_4_1; }; + gnustep_back = callPackage ../development/libraries/gnustep-back { stdenv = clangStdenv; }; + gnustep_base = callPackage ../development/libraries/gnustep-base { stdenv = clangStdenv; giflib = giflib_4_1; }; gnustep_make = callPackage ../development/tools/build-managers/gnustep-make { stdenv = clangStdenv; }; - gnustep_gui = callPackage ../development/libraries/gnustep-gui { }; + gnustep_gui = callPackage ../development/libraries/gnustep-gui { stdenv = clangStdenv; }; gob2 = callPackage ../development/tools/misc/gob2 { }; From 15c5a533b54b335f48c2d841909730340978ec28 Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Fri, 12 Dec 2014 22:58:21 +0600 Subject: [PATCH 07/23] gnustep: add gworkspace and systempreferences Packaging some basic GNUstep apps: GWorkspace and SystemPreferences. Unfortunately, GWorkspace doesn't work well, because gdomap, gdnc, gpbs are not started. Also, there is some issue with fonts not being found. --- pkgs/applications/misc/gworkspace/default.nix | 32 +++++++++++++++++++ .../misc/systempreferences/default.nix | 27 ++++++++++++++++ .../build-managers/gnustep-make/setup-hook.sh | 4 +-- pkgs/top-level/all-packages.nix | 3 ++ 4 files changed, 63 insertions(+), 3 deletions(-) create mode 100644 pkgs/applications/misc/gworkspace/default.nix create mode 100644 pkgs/applications/misc/systempreferences/default.nix diff --git a/pkgs/applications/misc/gworkspace/default.nix b/pkgs/applications/misc/gworkspace/default.nix new file mode 100644 index 00000000000..2081e1540a0 --- /dev/null +++ b/pkgs/applications/misc/gworkspace/default.nix @@ -0,0 +1,32 @@ +{ gnustep_back, gnustep_base, gnustep_gui, gnustep_make +, fetchurl +, sqlite +, stdenv +, system_preferences +}: +let + version = "0.9.2"; +in +stdenv.mkDerivation { + name = "gworkspace-${version}"; + src = fetchurl { + url = "ftp://ftp.gnustep.org/pub/gnustep/usr-apps/gworkspace-${version}.tar.gz"; + sha256 = "1yzlka2dl1gb353wf9kw6l26sdihdhgwvdfg5waqwdfl7ycfyfaj"; + }; + # additional dependencies: + # - PDFKit framework from http://gap.nongnu.org/ + GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; + buildInputs = [ gnustep_back gnustep_base gnustep_make gnustep_gui sqlite system_preferences ]; + propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui sqlite system_preferences ]; + configureFlags = [ "--enable-gwmetadata" "--with-inotify" ]; + meta = { + description = "GWorkspace is a workspace manager for GNUstep"; + + homepage = http://www.gnustep.org/experience/GWorkspace.html; + + license = stdenv.lib.licenses.lgpl2Plus; + + maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/applications/misc/systempreferences/default.nix b/pkgs/applications/misc/systempreferences/default.nix new file mode 100644 index 00000000000..13d4312213b --- /dev/null +++ b/pkgs/applications/misc/systempreferences/default.nix @@ -0,0 +1,27 @@ +{ gnustep_back, gnustep_base, gnustep_gui, gnustep_make +, fetchurl +, stdenv +}: +let + version = "1.1.0"; +in +stdenv.mkDerivation { + name = "system_preferences-${version}"; + src = fetchurl { + url = "ftp://ftp.gnustep.org/pub/gnustep/usr-apps/SystemPreferences-${version}.tar.gz"; + sha256 = "1q68bs8rlq0dxkar01qs5wfyas4iivddnama371jd7ll6cxzmpy7"; + }; + GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; + buildInputs = [ gnustep_back gnustep_base gnustep_make gnustep_gui ]; + propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui ]; + meta = { + description = "System Preferences allows to manage the settings of many aspects of the GNUstep environment and its applications"; + + homepage = http://www.gnustep.org/experience/systempreferences.html; + + license = stdenv.lib.licenses.lgpl2Plus; + + maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh b/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh index fa70b9ab5ca..7e55bae23bd 100644 --- a/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh +++ b/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh @@ -8,14 +8,12 @@ installFlagsArray=( \ "GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications" \ "GNUSTEP_SYSTEM_TOOLS=$out/bin" \ "GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin" \ - "GNUSTEP_SYSTEM_LIBRARY=$out/lib" \ + "GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep" \ "GNUSTEP_SYSTEM_HEADERS=$out/include" \ "GNUSTEP_SYSTEM_LIBRARIES=$out/lib" \ "GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation" \ "GNUSTEP_SYSTEM_DOC_MAN=$out/share/man" \ "GNUSTEP_SYSTEM_DOC_INFO=$out/share/info" \ - "GNUSTEP_SYSTEM_LIBRARIES=$out/lib" \ - "GNUSTEP_HEADERS=$out/include" \ ) addGSMakefilesPath () { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6dc478945c8..8a795b8c37c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6471,6 +6471,7 @@ in guileLint = callPackage ../development/tools/guile/guile-lint { }; + gworkspace = callPackage ../applications/misc/gworkspace { stdenv = clangStdenv; }; gwrap = callPackage ../development/tools/guile/g-wrap { }; help2man = callPackage ../development/tools/misc/help2man { @@ -9500,6 +9501,8 @@ in biblesync = callPackage ../development/libraries/biblesync { }; + system_preferences = callPackage ../applications/misc/systempreferences { stdenv = clangStdenv; }; + szip = callPackage ../development/libraries/szip { }; t1lib = callPackage ../development/libraries/t1lib { }; From cf79db354987dba564c96d8f7ee1c360e54ca0cb Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Fri, 12 Dec 2014 23:10:32 +0600 Subject: [PATCH 08/23] gnustep: fix gworkspace Minor fix: just to make GWorkspace buildable as it is. --- pkgs/applications/misc/gworkspace/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/gworkspace/default.nix b/pkgs/applications/misc/gworkspace/default.nix index 2081e1540a0..f041bd6d6b7 100644 --- a/pkgs/applications/misc/gworkspace/default.nix +++ b/pkgs/applications/misc/gworkspace/default.nix @@ -15,10 +15,11 @@ stdenv.mkDerivation { }; # additional dependencies: # - PDFKit framework from http://gap.nongnu.org/ + # - TODO: to --enable-gwmetadata, need libDBKit as well as sqlite! GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; - buildInputs = [ gnustep_back gnustep_base gnustep_make gnustep_gui sqlite system_preferences ]; - propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui sqlite system_preferences ]; - configureFlags = [ "--enable-gwmetadata" "--with-inotify" ]; + buildInputs = [ gnustep_back gnustep_base gnustep_make gnustep_gui system_preferences ]; + propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui system_preferences ]; + configureFlags = [ "--with-inotify" ]; meta = { description = "GWorkspace is a workspace manager for GNUstep"; From 9b17cd8fab54b8a06e32109299e4102fcdf3d53d Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Sat, 13 Dec 2014 22:48:39 +0600 Subject: [PATCH 09/23] gnustep: add nixos deamons Adding basic daemons: gdomap and gdnc. It seems that GWorkspace does is unable to work properly without the daemons. --- nixos/modules/module-list.nix | 2 + nixos/modules/services/networking/gdomap.nix | 50 ++++++++++ nixos/modules/services/x11/gdnc.nix | 100 +++++++++++++++++++ 3 files changed, 152 insertions(+) create mode 100644 nixos/modules/services/networking/gdomap.nix create mode 100644 nixos/modules/services/x11/gdnc.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index c848a3b95e8..5c5462083fa 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -340,6 +340,7 @@ ./services/networking/freenet.nix ./services/networking/gale.nix ./services/networking/gateone.nix + ./services/networking/gdomap.nix ./services/networking/git-daemon.nix ./services/networking/gnunet.nix ./services/networking/gogoclient.nix @@ -497,6 +498,7 @@ ./services/x11/hardware/multitouch.nix ./services/x11/hardware/synaptics.nix ./services/x11/hardware/wacom.nix + ./services/x11/gdnc.nix ./services/x11/redshift.nix ./services/x11/window-managers/awesome.nix #./services/x11/window-managers/compiz.nix diff --git a/nixos/modules/services/networking/gdomap.nix b/nixos/modules/services/networking/gdomap.nix new file mode 100644 index 00000000000..b4cef96eb87 --- /dev/null +++ b/nixos/modules/services/networking/gdomap.nix @@ -0,0 +1,50 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.gdomap; + stateDir = "/var/lib/gdomap"; +in +{ + # + # interface + # + options = { + services.gdomap = { + enable = mkOption { + default = false; + description = " + Whether to enable gdomap, the GNUstep distributed objects daemon. + + Note that gdomap runs as root. + "; + }; + }; + }; + # + # implementation + # + config = mkIf config.services.gdomap.enable { + # NOTE: gdomap runs as root + systemd.services.gdomap = { + description = "gdomap server"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + path = [ pkgs.gnustep_base ]; + preStart = '' + mkdir -m 755 -p ${stateDir} + mkdir -m 755 -p /run/gdomap + ''; + serviceConfig = { + # NOTE: this is local-only configuration! + ExecStart = "@${pkgs.gnustep_base}/bin/gdomap" + + " -j ${stateDir} -p"; + Restart = "always"; # "no"; + RestartSec = 2; + TimeoutStartSec = "30"; + Type = "forking"; + }; + }; + }; +} \ No newline at end of file diff --git a/nixos/modules/services/x11/gdnc.nix b/nixos/modules/services/x11/gdnc.nix new file mode 100644 index 00000000000..81ebf36a05e --- /dev/null +++ b/nixos/modules/services/x11/gdnc.nix @@ -0,0 +1,100 @@ +{ config, lib, pkgs, ... }: +with lib; + +let + cfg = config.services.gdnc; + gnustepConf = pkgs.writeText "GNUstep.conf" '' + GNUSTEP_USER_CONFIG_FILE=.GNUstep.conf + GNUSTEP_USER_DIR=GNUstep + GNUSTEP_USER_DEFAULTS_DIR=GNUstep/Defaults + GNUSTEP_MAKEFILES=${pkgs.gnustep_make}/share/GNUstep/Makefiles + + GNUSTEP_SYSTEM_USERS_DIR=/homeless-shelter + GNUSTEP_NETWORK_USERS_DIR=/homeless-shelter + GNUSTEP_LOCAL_USERS_DIR=/homeless-shelter + + GNUSTEP_SYSTEM_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications + GNUSTEP_SYSTEM_ADMIN_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications + GNUSTEP_SYSTEM_WEB_APPS=${pkgs.gnustep_base}/lib/GNUstep/WebApplications + GNUSTEP_SYSTEM_TOOLS=${pkgs.gnustep_base}/bin + GNUSTEP_SYSTEM_ADMIN_TOOLS=${pkgs.gnustep_base}/sbin + GNUSTEP_SYSTEM_LIBRARY=${pkgs.gnustep_base}/lib/GNUstep + GNUSTEP_SYSTEM_HEADERS=${pkgs.gnustep_base}/include + GNUSTEP_SYSTEM_LIBRARIES=${pkgs.gnustep_base}/lib + GNUSTEP_SYSTEM_DOC=${pkgs.gnustep_base}/share/GNUstep/Documentation + GNUSTEP_SYSTEM_DOC_MAN=${pkgs.gnustep_base}/share/man + GNUSTEP_SYSTEM_DOC_INFO=${pkgs.gnustep_base}/share/info + + GNUSTEP_NETWORK_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications + GNUSTEP_NETWORK_ADMIN_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications + GNUSTEP_NETWORK_WEB_APPS=${pkgs.gnustep_base}/lib/GNUstep/WebApplications + GNUSTEP_NETWORK_TOOLS=${pkgs.gnustep_base}/bin + GNUSTEP_NETWORK_ADMIN_TOOLS=${pkgs.gnustep_base}/sbin + GNUSTEP_NETWORK_LIBRARY=${pkgs.gnustep_base}/lib/GNUstep + GNUSTEP_NETWORK_HEADERS=${pkgs.gnustep_base}/include + GNUSTEP_NETWORK_LIBRARIES=${pkgs.gnustep_base}/lib + GNUSTEP_NETWORK_DOC=${pkgs.gnustep_base}/share/GNUstep/Documentation + GNUSTEP_NETWORK_DOC_MAN=${pkgs.gnustep_base}/share/man + GNUSTEP_NETWORK_DOC_INFO=${pkgs.gnustep_base}/share/info + + GNUSTEP_LOCAL_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications + GNUSTEP_LOCAL_ADMIN_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications + GNUSTEP_LOCAL_WEB_APPS=${pkgs.gnustep_base}/lib/GNUstep/WebApplications + GNUSTEP_LOCAL_TOOLS=${pkgs.gnustep_base}/bin + GNUSTEP_LOCAL_ADMIN_TOOLS=${pkgs.gnustep_base}/sbin + GNUSTEP_LOCAL_LIBRARY=${pkgs.gnustep_base}/lib/GNUstep + GNUSTEP_LOCAL_HEADERS=${pkgs.gnustep_base}/include + GNUSTEP_LOCAL_LIBRARIES=${pkgs.gnustep_base}/lib + GNUSTEP_LOCAL_DOC=${pkgs.gnustep_base}/share/GNUstep/Documentation + GNUSTEP_LOCAL_DOC_MAN=${pkgs.gnustep_base}/share/man + GNUSTEP_LOCAL_DOC_INFO=${pkgs.gnustep_base}/share/info + + GNUSTEP_USER_DIR_APPS=GNUstep/Applications + GNUSTEP_USER_DIR_ADMIN_APPS=GNUstep/Applications/Admin + GNUSTEP_USER_DIR_WEB_APPS=GNUstep/WebApplications + GNUSTEP_USER_DIR_TOOLS=GNUstep/Tools + GNUSTEP_USER_DIR_ADMIN_TOOLS=GNUstep/Tools/Admin + GNUSTEP_USER_DIR_LIBRARY=GNUstep/Library + GNUSTEP_USER_DIR_HEADERS=GNUstep/Library/Headers + GNUSTEP_USER_DIR_LIBRARIES=GNUstep/Library/Libraries + GNUSTEP_USER_DIR_DOC=GNUstep/Library/Documentation + GNUSTEP_USER_DIR_DOC_MAN=GNUstep/Library/Documentation/man + GNUSTEP_USER_DIR_DOC_INFO=GNUstep/Library/Documentation/info + ''; +in { + options = { + services.gdnc.enable = mkOption { + type = types.bool; + default = false; + example = true; + description = "Enable gdnc, the GNUstep distributed notification center"; + }; + }; + config = mkIf cfg.enable { + assertions = singleton { + assertion = config.services.gdnc.enable -> config.services.gdomap.enable; + message = "Cannot start gdnc without starting gdomap"; + }; + environment = { + systemPackages = [ pkgs.gnustep_make pkgs.gnustep_base ]; + }; + systemd.services.gdnc = { + path = [ pkgs.gnustep_make pkgs.gnustep_base ]; + description = "gdnc: GNUstep distributed notification center"; + requires = [ "gdomap.service" ]; + wantedBy = [ "multi-user.target" ]; + preStart = '' + export GNUSTEP_MAKEFILES=${pkgs.gnustep_make}/share/GNUstep/Makefiles + export GNUSTEP_CONFIG_FILE=${gnustepConf} + . $GNUSTEP_MAKEFILES/GNUstep.sh + ''; + serviceConfig = { + ExecStart = "@${pkgs.gnustep_base}/bin/gdnc --verbose --no-fork"; + Restart = "always"; + RestartSec = 2; + TimeoutStartSec = "30"; + Type = "forking"; + }; + }; + }; +} \ No newline at end of file From d3d580ebbe1ef6330f194ed5fd9116030bd09025 Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Sun, 25 Jan 2015 22:34:52 +0600 Subject: [PATCH 10/23] gnustep: cleanup Major clean-up. Everything builds fine. --- nixos/modules/services/networking/gdomap.nix | 18 +- nixos/modules/services/x11/gdnc.nix | 75 +-- pkgs/applications/editors/gorm/default.nix | 10 +- .../editors/projectcenter/default.nix | 12 +- pkgs/applications/misc/gworkspace/default.nix | 9 +- .../misc/systempreferences/default.nix | 10 +- .../libraries/gnustep-back/default.nix | 9 +- .../libraries/gnustep-base/default.nix | 14 +- .../libraries/gnustep-base/fixup-paths.patch | 384 ++++++++++++++ .../libraries/gnustep-gui/default.nix | 16 +- .../libraries/gnustep-gui/fixup-all.patch | 486 ++++++++++++++++++ .../build-managers/gnustep-make/builder.sh | 122 +++++ .../build-managers/gnustep-make/default.nix | 2 +- .../gnustep-make/fixup-paths.patch | 204 ++++++++ .../gnustep-make/gsmakeDerivation.nix | 11 + .../build-managers/gnustep-make/setup-hook.sh | 58 ++- .../build-managers/gnustep-make/wrapper.sh | 4 + pkgs/top-level/all-packages.nix | 3 + 18 files changed, 1325 insertions(+), 122 deletions(-) create mode 100644 pkgs/development/libraries/gnustep-base/fixup-paths.patch create mode 100644 pkgs/development/libraries/gnustep-gui/fixup-all.patch create mode 100644 pkgs/development/tools/build-managers/gnustep-make/builder.sh create mode 100644 pkgs/development/tools/build-managers/gnustep-make/fixup-paths.patch create mode 100644 pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix create mode 100644 pkgs/development/tools/build-managers/gnustep-make/wrapper.sh diff --git a/nixos/modules/services/networking/gdomap.nix b/nixos/modules/services/networking/gdomap.nix index b4cef96eb87..da78810f6b2 100644 --- a/nixos/modules/services/networking/gdomap.nix +++ b/nixos/modules/services/networking/gdomap.nix @@ -4,7 +4,7 @@ with lib; let cfg = config.services.gdomap; - stateDir = "/var/lib/gdomap"; + pidFile = "${cfg.pidDir}/gdomap.pid"; in { # @@ -20,6 +20,10 @@ in Note that gdomap runs as root. "; }; + pidDir = mkOption { + default = "/var/run/gdomap"; + description = "Location of the file which stores the PID of gdomap"; + }; }; }; # @@ -27,20 +31,22 @@ in # config = mkIf config.services.gdomap.enable { # NOTE: gdomap runs as root + # TODO: extra user for gdomap? systemd.services.gdomap = { description = "gdomap server"; wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; path = [ pkgs.gnustep_base ]; preStart = '' - mkdir -m 755 -p ${stateDir} - mkdir -m 755 -p /run/gdomap + mkdir -m 0700 -p ${cfg.pidDir} + chown -R nobody:nobody ${cfg.pidDir} ''; serviceConfig = { - # NOTE: this is local-only configuration! ExecStart = "@${pkgs.gnustep_base}/bin/gdomap" - + " -j ${stateDir} -p"; - Restart = "always"; # "no"; + + " -d -p" + + " -I ${pidFile}"; +# + " -j ${cfg.pidDir}"; + Restart = "always"; RestartSec = 2; TimeoutStartSec = "30"; Type = "forking"; diff --git a/nixos/modules/services/x11/gdnc.nix b/nixos/modules/services/x11/gdnc.nix index 81ebf36a05e..87f34972df2 100644 --- a/nixos/modules/services/x11/gdnc.nix +++ b/nixos/modules/services/x11/gdnc.nix @@ -3,64 +3,6 @@ with lib; let cfg = config.services.gdnc; - gnustepConf = pkgs.writeText "GNUstep.conf" '' - GNUSTEP_USER_CONFIG_FILE=.GNUstep.conf - GNUSTEP_USER_DIR=GNUstep - GNUSTEP_USER_DEFAULTS_DIR=GNUstep/Defaults - GNUSTEP_MAKEFILES=${pkgs.gnustep_make}/share/GNUstep/Makefiles - - GNUSTEP_SYSTEM_USERS_DIR=/homeless-shelter - GNUSTEP_NETWORK_USERS_DIR=/homeless-shelter - GNUSTEP_LOCAL_USERS_DIR=/homeless-shelter - - GNUSTEP_SYSTEM_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications - GNUSTEP_SYSTEM_ADMIN_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications - GNUSTEP_SYSTEM_WEB_APPS=${pkgs.gnustep_base}/lib/GNUstep/WebApplications - GNUSTEP_SYSTEM_TOOLS=${pkgs.gnustep_base}/bin - GNUSTEP_SYSTEM_ADMIN_TOOLS=${pkgs.gnustep_base}/sbin - GNUSTEP_SYSTEM_LIBRARY=${pkgs.gnustep_base}/lib/GNUstep - GNUSTEP_SYSTEM_HEADERS=${pkgs.gnustep_base}/include - GNUSTEP_SYSTEM_LIBRARIES=${pkgs.gnustep_base}/lib - GNUSTEP_SYSTEM_DOC=${pkgs.gnustep_base}/share/GNUstep/Documentation - GNUSTEP_SYSTEM_DOC_MAN=${pkgs.gnustep_base}/share/man - GNUSTEP_SYSTEM_DOC_INFO=${pkgs.gnustep_base}/share/info - - GNUSTEP_NETWORK_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications - GNUSTEP_NETWORK_ADMIN_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications - GNUSTEP_NETWORK_WEB_APPS=${pkgs.gnustep_base}/lib/GNUstep/WebApplications - GNUSTEP_NETWORK_TOOLS=${pkgs.gnustep_base}/bin - GNUSTEP_NETWORK_ADMIN_TOOLS=${pkgs.gnustep_base}/sbin - GNUSTEP_NETWORK_LIBRARY=${pkgs.gnustep_base}/lib/GNUstep - GNUSTEP_NETWORK_HEADERS=${pkgs.gnustep_base}/include - GNUSTEP_NETWORK_LIBRARIES=${pkgs.gnustep_base}/lib - GNUSTEP_NETWORK_DOC=${pkgs.gnustep_base}/share/GNUstep/Documentation - GNUSTEP_NETWORK_DOC_MAN=${pkgs.gnustep_base}/share/man - GNUSTEP_NETWORK_DOC_INFO=${pkgs.gnustep_base}/share/info - - GNUSTEP_LOCAL_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications - GNUSTEP_LOCAL_ADMIN_APPS=${pkgs.gnustep_base}/lib/GNUstep/Applications - GNUSTEP_LOCAL_WEB_APPS=${pkgs.gnustep_base}/lib/GNUstep/WebApplications - GNUSTEP_LOCAL_TOOLS=${pkgs.gnustep_base}/bin - GNUSTEP_LOCAL_ADMIN_TOOLS=${pkgs.gnustep_base}/sbin - GNUSTEP_LOCAL_LIBRARY=${pkgs.gnustep_base}/lib/GNUstep - GNUSTEP_LOCAL_HEADERS=${pkgs.gnustep_base}/include - GNUSTEP_LOCAL_LIBRARIES=${pkgs.gnustep_base}/lib - GNUSTEP_LOCAL_DOC=${pkgs.gnustep_base}/share/GNUstep/Documentation - GNUSTEP_LOCAL_DOC_MAN=${pkgs.gnustep_base}/share/man - GNUSTEP_LOCAL_DOC_INFO=${pkgs.gnustep_base}/share/info - - GNUSTEP_USER_DIR_APPS=GNUstep/Applications - GNUSTEP_USER_DIR_ADMIN_APPS=GNUstep/Applications/Admin - GNUSTEP_USER_DIR_WEB_APPS=GNUstep/WebApplications - GNUSTEP_USER_DIR_TOOLS=GNUstep/Tools - GNUSTEP_USER_DIR_ADMIN_TOOLS=GNUstep/Tools/Admin - GNUSTEP_USER_DIR_LIBRARY=GNUstep/Library - GNUSTEP_USER_DIR_HEADERS=GNUstep/Library/Headers - GNUSTEP_USER_DIR_LIBRARIES=GNUstep/Library/Libraries - GNUSTEP_USER_DIR_DOC=GNUstep/Library/Documentation - GNUSTEP_USER_DIR_DOC_MAN=GNUstep/Library/Documentation/man - GNUSTEP_USER_DIR_DOC_INFO=GNUstep/Library/Documentation/info - ''; in { options = { services.gdnc.enable = mkOption { @@ -75,25 +17,18 @@ in { assertion = config.services.gdnc.enable -> config.services.gdomap.enable; message = "Cannot start gdnc without starting gdomap"; }; - environment = { - systemPackages = [ pkgs.gnustep_make pkgs.gnustep_base ]; - }; + environment.systemPackages = [ pkgs.gnustep_make pkgs.gnustep_base ]; systemd.services.gdnc = { - path = [ pkgs.gnustep_make pkgs.gnustep_base ]; + path = [ pkgs.gnustep_base ]; description = "gdnc: GNUstep distributed notification center"; requires = [ "gdomap.service" ]; wantedBy = [ "multi-user.target" ]; - preStart = '' - export GNUSTEP_MAKEFILES=${pkgs.gnustep_make}/share/GNUstep/Makefiles - export GNUSTEP_CONFIG_FILE=${gnustepConf} - . $GNUSTEP_MAKEFILES/GNUstep.sh - ''; serviceConfig = { - ExecStart = "@${pkgs.gnustep_base}/bin/gdnc --verbose --no-fork"; + ExecStart = ''${pkgs.gnustep_base}/bin/gdnc --verbose''; Restart = "always"; - RestartSec = 2; + RestartSec = 10; TimeoutStartSec = "30"; - Type = "forking"; + Type = "simple"; }; }; }; diff --git a/pkgs/applications/editors/gorm/default.nix b/pkgs/applications/editors/gorm/default.nix index aaa31289341..d5633b5e97d 100644 --- a/pkgs/applications/editors/gorm/default.nix +++ b/pkgs/applications/editors/gorm/default.nix @@ -1,18 +1,18 @@ -{ stdenv, fetchurl, gnustep_base, gnustep_back, gnustep_make, gnustep_gui +{ stdenv, fetchurl, gnustep_base, gnustep_back, gsmakeDerivation, gnustep_gui }: let version = "1.2.18"; in -stdenv.mkDerivation rec { +gsmakeDerivation { name = "gorm-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz"; sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq"; }; - patches = [ ./fix-gs-makefiles.patch ]; - buildInputs = [ gnustep_make gnustep_base gnustep_back gnustep_gui ]; - propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui ]; +# patches = [ ./fix-gs-makefiles.patch ]; + buildInputs = [ gnustep_base gnustep_back gnustep_gui ]; +# propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui ]; meta = { description = "Gorm stands for Graphical Object Relationship Modeller and is an easy-to-use interface designer for GNUstep"; diff --git a/pkgs/applications/editors/projectcenter/default.nix b/pkgs/applications/editors/projectcenter/default.nix index 2de8df9bf29..ccb885f7477 100644 --- a/pkgs/applications/editors/projectcenter/default.nix +++ b/pkgs/applications/editors/projectcenter/default.nix @@ -1,18 +1,22 @@ { stdenv, fetchurl -, gnustep_base, gnustep_back, gnustep_make, gnustep_gui +, gnustep_base, gnustep_back, gsmakeDerivation, gnustep_gui, gorm +, gnumake, gdb }: let version = "0.6.2"; in -stdenv.mkDerivation rec { +gsmakeDerivation { name = "projectcenter-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/ProjectCenter-${version}.tar.gz"; sha256 = "0wwlbpqf541apw192jb633d634zkpjhcrrkd1j80y9hihphll465"; }; - buildInputs = [ gnustep_make gnustep_base gnustep_back gnustep_gui ]; - propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui ]; + # NOTE: need a patch for ProjectCenter to help it locate some necessary tools: + # 1. Framework/PCProjectLauncher.m, locate gdb (say among NIX_GNUSTEP_SYSTEM_TOOLS) + # 2. Framework/PCProjectBuilder.m, locate gmake (similar) + buildInputs = [ gnustep_base gnustep_back gnustep_gui ]; + propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui gnumake gdb gorm ]; meta = { description = "ProjectCenter is GNUstep's integrated development environment (IDE) and allows a rapid development and easy managment of ProjectCenter running on GNUstep applications, tools and frameworks."; diff --git a/pkgs/applications/misc/gworkspace/default.nix b/pkgs/applications/misc/gworkspace/default.nix index f041bd6d6b7..e59cde7e22e 100644 --- a/pkgs/applications/misc/gworkspace/default.nix +++ b/pkgs/applications/misc/gworkspace/default.nix @@ -1,4 +1,4 @@ -{ gnustep_back, gnustep_base, gnustep_gui, gnustep_make +{ gnustep_back, gnustep_base, gnustep_gui, gsmakeDerivation , fetchurl , sqlite , stdenv @@ -7,7 +7,7 @@ let version = "0.9.2"; in -stdenv.mkDerivation { +gsmakeDerivation { name = "gworkspace-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/usr-apps/gworkspace-${version}.tar.gz"; @@ -16,9 +16,8 @@ stdenv.mkDerivation { # additional dependencies: # - PDFKit framework from http://gap.nongnu.org/ # - TODO: to --enable-gwmetadata, need libDBKit as well as sqlite! - GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; - buildInputs = [ gnustep_back gnustep_base gnustep_make gnustep_gui system_preferences ]; - propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui system_preferences ]; + buildInputs = [ gnustep_back gnustep_base gnustep_gui system_preferences ]; +# propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui system_preferences ]; configureFlags = [ "--with-inotify" ]; meta = { description = "GWorkspace is a workspace manager for GNUstep"; diff --git a/pkgs/applications/misc/systempreferences/default.nix b/pkgs/applications/misc/systempreferences/default.nix index 13d4312213b..2dffdfe3df5 100644 --- a/pkgs/applications/misc/systempreferences/default.nix +++ b/pkgs/applications/misc/systempreferences/default.nix @@ -1,19 +1,19 @@ -{ gnustep_back, gnustep_base, gnustep_gui, gnustep_make +{ gnustep_back, gnustep_base, gnustep_gui, gsmakeDerivation , fetchurl , stdenv }: let version = "1.1.0"; in -stdenv.mkDerivation { +gsmakeDerivation { name = "system_preferences-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/usr-apps/SystemPreferences-${version}.tar.gz"; sha256 = "1q68bs8rlq0dxkar01qs5wfyas4iivddnama371jd7ll6cxzmpy7"; }; - GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; - buildInputs = [ gnustep_back gnustep_base gnustep_make gnustep_gui ]; - propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui ]; +# GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; + buildInputs = [ gnustep_back gnustep_base gnustep_gui ]; +# propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui ]; meta = { description = "System Preferences allows to manage the settings of many aspects of the GNUstep environment and its applications"; diff --git a/pkgs/development/libraries/gnustep-back/default.nix b/pkgs/development/libraries/gnustep-back/default.nix index 49948263547..bb504642f3c 100644 --- a/pkgs/development/libraries/gnustep-back/default.nix +++ b/pkgs/development/libraries/gnustep-back/default.nix @@ -1,8 +1,7 @@ -{ buildEnv +{ gsmakeDerivation , cairo -, clang , fetchurl -, gnustep_base, gnustep_make, gnustep_gui +, gnustep_base, gnustep_gui , xlibs , x11 , freetype @@ -12,13 +11,13 @@ let version = "0.24.0"; in -stdenv.mkDerivation rec { +gsmakeDerivation { name = "gnustep-back-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-0.24.0.tar.gz"; sha256 = "0qixbilkkrqxrhhj9hnp7ygd5gs23b3qbbgk3gaxj73d0xqfvhjz"; }; - buildInputs = [ cairo clang gnustep_base gnustep_gui gnustep_make freetype pkgconfig x11 ]; + buildInputs = [ cairo gnustep_base gnustep_gui freetype pkgconfig x11 ]; meta = { description = "GNUstep-back is a generic backend for GNUstep."; diff --git a/pkgs/development/libraries/gnustep-base/default.nix b/pkgs/development/libraries/gnustep-base/default.nix index 67fd7fecf1d..837d74399a8 100644 --- a/pkgs/development/libraries/gnustep-base/default.nix +++ b/pkgs/development/libraries/gnustep-base/default.nix @@ -1,6 +1,6 @@ { aspell, audiofile -, gnustep_make -, clang, cups +, gsmakeDerivation +, cups , fetchurl , gmp, gnutls , libffi @@ -10,12 +10,11 @@ , icu , pkgconfig, portaudio , stdenv -, which }: let version = "1.24.7"; in -stdenv.mkDerivation { +gsmakeDerivation { name = "gnustep-base-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-1.24.7.tar.gz"; @@ -23,15 +22,14 @@ stdenv.mkDerivation { }; buildInputs = [ aspell audiofile - clang cups - gmp gnustep_make gnutls + cups + gmp gnutls libffi libjpeg libtiff libpng giflib libungif libxml2 libxslt libiconv libobjc2 libgcrypt icu pkgconfig portaudio - which ]; propagatedBuildInputs = [ aspell audiofile @@ -44,7 +42,7 @@ stdenv.mkDerivation { icu portaudio ]; - patches = [ ./fixup-base-makefile-installdir.patch ]; + patches = [ ./fixup-paths.patch ]; meta = { description = "GNUstep-base is an implementation of AppKit and Foundation libraries of OPENSTEP and Cocoa."; diff --git a/pkgs/development/libraries/gnustep-base/fixup-paths.patch b/pkgs/development/libraries/gnustep-base/fixup-paths.patch new file mode 100644 index 00000000000..9de610454c8 --- /dev/null +++ b/pkgs/development/libraries/gnustep-base/fixup-paths.patch @@ -0,0 +1,384 @@ +Only in gnustep-base-1.24.7: base.make +Only in gnustep-base-1.24.7: config.mak +Only in gnustep-base-1.24.7: config.status +Only in gnustep-base-1.24.7/Headers/GNUstepBase: config.h +Only in gnustep-base-1.24.7/Headers/GNUstepBase: GSConfig.h +diff -r -u gnustep-base-1.24.7/Makefile.postamble gnustep-base-1.24.7.patched/Makefile.postamble +--- gnustep-base-1.24.7/Makefile.postamble 2011-07-15 19:53:45.000000000 +0600 ++++ gnustep-base-1.24.7.patched/Makefile.postamble 2014-11-29 22:25:07.000000000 +0600 +@@ -38,13 +38,13 @@ + # Things to do after compiling + # after-all:: + +-$(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional: +- $(ECHO_CREATING)$(MKDIRS) $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional$(END_ECHO) ++$(DESTDIR_GNUSTEP_MAKEFILES)/Additional: ++ $(ECHO_CREATING)$(MKDIRS) $(DESTDIR_GNUSTEP_MAKEFILES)/Additional$(END_ECHO) + + # Things to do before installing +-before-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional ++before-install:: $(DESTDIR_GNUSTEP_MAKEFILES)/Additional + $(ECHO_NOTHING)$(INSTALL_DATA) base.make \ +- $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO) ++ $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO) + + # Things to do after installing + # after-install:: +@@ -54,7 +54,7 @@ + + # Things to do after uninstalling + after-uninstall:: +- $(ECHO_NOTHING)rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO) ++ $(ECHO_NOTHING)rm -f $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO) + + # Things to do before cleaning + # before-clean:: +Only in gnustep-base-1.24.7.patched: Makefile.postamble~ +Only in gnustep-base-1.24.7: result +Only in gnustep-base-1.24.7.patched/Source: .#dfdf +Only in gnustep-base-1.24.7.patched/Source: #dfdf# +diff -r -u gnustep-base-1.24.7/Source/NSPathUtilities.m gnustep-base-1.24.7.patched/Source/NSPathUtilities.m +--- gnustep-base-1.24.7/Source/NSPathUtilities.m 2014-01-14 13:21:10.000000000 +0600 ++++ gnustep-base-1.24.7.patched/Source/NSPathUtilities.m 2015-01-25 13:59:37.000000000 +0600 +@@ -153,16 +153,27 @@ + static NSString *gnustepLocalUsersDir = nil; + + static NSString *gnustepSystemApps = nil; ++static NSArray *gnustepSystemAppsNix = nil; + static NSString *gnustepSystemAdminApps = nil; ++static NSArray *gnustepSystemAdminAppsNix = nil; + static NSString *gnustepSystemWebApps = nil; ++static NSArray *gnustepSystemWebAppsNix = nil; + static NSString *gnustepSystemTools = nil; ++static NSArray *gnustepSystemToolsNix = nil; + static NSString *gnustepSystemAdminTools = nil; ++static NSArray *gnustepSystemAdminToolsNix = nil; + static NSString *gnustepSystemLibrary = nil; ++static NSArray *gnustepSystemLibraryNix = nil; + static NSString *gnustepSystemLibraries = nil; ++static NSArray *gnustepSystemLibrariesNix = nil; + static NSString *gnustepSystemHeaders = nil; ++static NSArray *gnustepSystemHeadersNix = nil; + static NSString *gnustepSystemDocumentation = nil; ++static NSArray *gnustepSystemDocumentationNix = nil; + static NSString *gnustepSystemDocumentationInfo = nil; ++static NSArray *gnustepSystemDocumentationInfoNix = nil; + static NSString *gnustepSystemDocumentationMan = nil; ++static NSArray *gnustepSystemDocumentationManNix = nil; + + static NSString *gnustepNetworkApps = nil; + static NSString *gnustepNetworkAdminApps = nil; +@@ -258,6 +269,18 @@ + }\ + }) + ++/* Like ASSIGN_PATH, but permits multiple components in a path ++ */ ++#define ASSIGN_PATH_NIX(var, dictionary, key) ({\ ++ id val = getPathConfigNix(dictionary, key);\ ++ if (val != nil)\ ++ {\ ++ RELEASE(var);\ ++ var = RETAIN(val);\ ++ [dictionary removeObjectForKey: key];\ ++ }\ ++}) ++ + /* Like ASSIGN_PATH(), but permits the result to be a relative path as that + * is what we normally use (the path is within the user's home directory). + */ +@@ -368,7 +391,7 @@ + /* Get a full path string */ + static inline NSString * + getPath(NSString *path) +-{ ++{ + if ([path hasPrefix: @"./"] == YES) + { + path = [gnustepConfigPath stringByAppendingPathComponent: +@@ -383,6 +406,33 @@ + return path; + } + ++static inline NSArray * ++getPathConfigNix(NSDictionary *dict, NSString *key) ++{ ++ NSArray *res = nil; ++ NSMutableArray *paths = nil; ++ NSString *path; ++#if defined(__MINGW_) ++ NSString *sep = @";"; ++#else ++ NSString *sep = @":"; ++#endif ++ ++ path = [dict objectForKey: key]; ++ if (path != nil) ++ { ++ if ([path rangeOfString:sep].location != NSNotFound) ++ { ++ res = [path componentsSeparatedByString:sep]; ++ } ++ else ++ { ++ res = [[NSArray alloc] initWithObjects:path, nil]; ++ } ++ } ++ return res; ++} ++ + /* Get a full path string from a dictionary */ + static inline NSString * + getPathConfig(NSDictionary *dict, NSString *key) +@@ -468,6 +518,29 @@ + ASSIGN_PATH(gnustepSystemDocumentationInfo, c, + @"GNUSTEP_SYSTEM_DOC_INFO"); + ++ ASSIGN_PATH_NIX(gnustepSystemAppsNix, c, ++ @"NIX_GNUSTEP_SYSTEM_APPS"); ++ ASSIGN_PATH_NIX(gnustepSystemAdminAppsNix, c, ++ @"NIX_GNUSTEP_SYSTEM_ADMIN_APPS"); ++ ASSIGN_PATH_NIX(gnustepSystemWebAppsNix, c, ++ @"NIX_GNUSTEP_SYSTEM_WEB_APPS"); ++ ASSIGN_PATH_NIX(gnustepSystemToolsNix, c, ++ @"NIX_GNUSTEP_SYSTEM_TOOLS"); ++ ASSIGN_PATH_NIX(gnustepSystemAdminToolsNix, c, ++ @"NIX_GNUSTEP_SYSTEM_ADMIN_TOOLS"); ++ ASSIGN_PATH_NIX(gnustepSystemLibraryNix, c, ++ @"NIX_GNUSTEP_SYSTEM_LIBRARY"); ++ ASSIGN_PATH_NIX(gnustepSystemLibrariesNix, c, ++ @"NIX_GNUSTEP_SYSTEM_LIBRARIES"); ++ ASSIGN_PATH_NIX(gnustepSystemHeadersNix, c, ++ @"NIX_GNUSTEP_SYSTEM_HEADERS"); ++ ASSIGN_PATH_NIX(gnustepSystemDocumentationNix, c, ++ @"NIX_GNUSTEP_SYSTEM_DOC"); ++ ASSIGN_PATH_NIX(gnustepSystemDocumentationManNix, c, ++ @"NIX_GNUSTEP_SYSTEM_DOC_MAN"); ++ ASSIGN_PATH_NIX(gnustepSystemDocumentationInfoNix, c, ++ @"NIX_GNUSTEP_SYSTEM_DOC_INFO"); ++ + ASSIGN_PATH(gnustepNetworkApps, c, + @"GNUSTEP_NETWORK_APPS"); + ASSIGN_PATH(gnustepNetworkAdminApps, c, +@@ -1235,6 +1308,18 @@ + DESTROY(gnustepSystemDocumentationMan); + DESTROY(gnustepSystemDocumentationInfo); + ++ DESTROY(gnustepSystemAppsNix); ++ DESTROY(gnustepSystemAdminAppsNix); ++ DESTROY(gnustepSystemWebAppsNix); ++ DESTROY(gnustepSystemToolsNix); ++ DESTROY(gnustepSystemAdminToolsNix); ++ DESTROY(gnustepSystemLibraryNix); ++ DESTROY(gnustepSystemLibrariesNix); ++ DESTROY(gnustepSystemHeadersNix); ++ DESTROY(gnustepSystemDocumentationNix); ++ DESTROY(gnustepSystemDocumentationManNix); ++ DESTROY(gnustepSystemDocumentationInfoNix); ++ + DESTROY(gnustepNetworkApps); + DESTROY(gnustepNetworkAdminApps); + DESTROY(gnustepNetworkWebApps); +@@ -2183,6 +2268,27 @@ + if ([add_dir length] > 0 && [paths containsObject: add_dir] == NO) \ + [paths addObject: add_dir]; \ + } ++#define ADD_PATH_NIX(mask, base_dirs, add_dir) \ ++if ((domainMask & mask) && (base_dirs != nil)) \ ++{ \ ++ NSEnumerator *e = [base_dirs objectEnumerator]; \ ++ NSString *dir = nil; \ ++ while (dir = [e nextObject]) { \ ++ path = [dir stringByAppendingPathComponent: add_dir]; \ ++ if ([path length] > 0 && [paths containsObject: path] == NO) \ ++ [paths addObject: path]; \ ++ } \ ++} ++#define ADD_PLATFORM_PATH_NIX(mask, add_dirs) \ ++if ((domainMask & mask) && (add_dirs != nil)) \ ++{ \ ++ NSEnumerator *e = [add_dirs objectEnumerator]; \ ++ NSString *dir = nil; \ ++ while (dir = [e nextObject]) { \ ++ if ([dir length] > 0 && [paths containsObject: dir] == NO) \ ++ [paths addObject:dir]; \ ++ } \ ++} + + switch (directoryKey) + { +@@ -2191,11 +2297,13 @@ + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserApps); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalApps); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkApps); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAppsNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemApps); + + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserAdminApps); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalAdminApps); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkAdminApps); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminAppsNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemAdminApps); + } + break; +@@ -2205,6 +2313,7 @@ + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserApps); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalApps); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkApps); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAppsNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemApps); + } + break; +@@ -2214,6 +2323,7 @@ + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserApps); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalApps); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkApps); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAppsNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemApps); + + /* I imagine if ever wanted a separate Demo directory, the +@@ -2231,6 +2341,7 @@ + + case NSCoreServicesDirectory: + { ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix, @"CoreServices"); + ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary, @"CoreServices"); + } + break; +@@ -2248,6 +2359,7 @@ + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserApps); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalApps); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkApps); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAppsNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemApps); + } + break; +@@ -2257,6 +2369,7 @@ + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserAdminApps); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalAdminApps); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkAdminApps); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminAppsNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemAdminApps); + } + break; +@@ -2266,6 +2379,7 @@ + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserLibrary); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalLibrary); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkLibrary); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemLibrary); + } + break; +@@ -2281,6 +2395,7 @@ + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserLibrary); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalLibrary); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkLibrary); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemLibrary); + } + break; +@@ -2418,6 +2533,7 @@ + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserDocumentation); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalDocumentation); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkDocumentation); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemDocumentationNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemDocumentation); + } + break; +@@ -2449,6 +2565,7 @@ + ADD_PATH(NSUserDomainMask, gnustepUserLibrary, @"Caches"); + ADD_PATH(NSLocalDomainMask, gnustepLocalLibrary, @"Caches"); + ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibrary, @"Caches"); ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix, @"Caches"); + ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary, @"Caches"); + } + break; +@@ -2460,6 +2577,8 @@ + @"ApplicationSupport"); + ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibrary, + @"ApplicationSupport"); ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix, ++ @"ApplicationSupport"); + ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary, + @"ApplicationSupport"); + } +@@ -2471,6 +2590,7 @@ + ADD_PATH(NSUserDomainMask, gnustepUserLibrary, @"Frameworks"); + ADD_PATH(NSLocalDomainMask, gnustepLocalLibrary, @"Frameworks"); + ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibrary, @"Frameworks"); ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix, @"Frameworks"); + ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary, @"Frameworks"); + } + break; +@@ -2480,6 +2600,7 @@ + ADD_PATH(NSUserDomainMask, gnustepUserLibrary, @"Fonts"); + ADD_PATH(NSLocalDomainMask, gnustepLocalLibrary, @"Fonts"); + ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibrary, @"Fonts"); ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix, @"Fonts"); + ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary, @"Fonts"); + } + break; +@@ -2518,6 +2639,12 @@ + if (part) + ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibraries, part); + ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemLibrariesNix); ++ if (full) ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibrariesNix, full); ++ if (part) ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibrariesNix, part); ++ + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemLibraries); + if (full) + ADD_PATH(NSSystemDomainMask, gnustepSystemLibraries, full); +@@ -2560,6 +2687,12 @@ + if (part) + ADD_PATH(NSNetworkDomainMask, gnustepNetworkTools, part); + ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemToolsNix); ++ if (full) ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemToolsNix, full); ++ if (part) ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemToolsNix, part); ++ + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemTools); + if (full) + ADD_PATH(NSSystemDomainMask, gnustepSystemTools, full); +@@ -2602,6 +2735,18 @@ + if (part) + ADD_PATH(NSNetworkDomainMask, gnustepNetworkAdminTools, part); + ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix); ++ if (full) ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix, full); ++ if (part) ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix, part); ++ ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix); ++ if (full) ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix, full); ++ if (part) ++ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix, part); ++ + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemAdminTools); + if (full) + ADD_PATH(NSSystemDomainMask, gnustepSystemAdminTools, full); +@@ -2615,6 +2760,7 @@ + ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserWebApps); + ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalWebApps); + ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkWebApps); ++ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemWebAppsNix); + ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemWebApps); + } + break; +@@ -2622,6 +2768,8 @@ + + #undef ADD_PATH + #undef ADD_PLATFORM_PATH ++#undef ADD_PATH_NIX ++#undef ADD_PLATFORM_PATH_NIX + + count = [paths count]; + for (i = 0; i < count; i++) +Only in gnustep-base-1.24.7.patched/Source: NSPathUtilities.m~ +Only in gnustep-base-1.24.7.patched/Tests/base/NSInvocationOperation: GNUmakefile diff --git a/pkgs/development/libraries/gnustep-gui/default.nix b/pkgs/development/libraries/gnustep-gui/default.nix index fffa95320c9..829c9905d25 100644 --- a/pkgs/development/libraries/gnustep-gui/default.nix +++ b/pkgs/development/libraries/gnustep-gui/default.nix @@ -1,23 +1,21 @@ -{ - clang +{ gsmakeDerivation , fetchurl -, gnustep_make , gnustep_base -#, xlibs, x11, freetype -#, pkgconfig , stdenv }: let version = "0.24.0"; in -stdenv.mkDerivation rec { +gsmakeDerivation { name = "gnustep-gui-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-0.24.0.tar.gz"; sha256 = "0d6jzfcyacxjzrr2p398ysvs1akv1fcmngfzxxbfxa947miydjxg"; }; - buildInputs = [ clang gnustep_make gnustep_base ]; - propagatedBuildInputs = [ gnustep_base ]; - patches = [ ./fixup-gui-makefile-installdir.patch ./fixup-gui-tools-preamble.patch ./fixup-gui-textconverters-preamble.patch ]; + buildInputs = [ gnustep_base ]; +# propagatedBuildInputs = [ gnustep_base ]; +# patches = [ ./fixup-gui-makefile-installdir.patch ]; + # DEBUG! + patches = [ ./fixup-all.patch ]; meta = { description = "GNUstep-gui is a GUI class library of GNUstep."; diff --git a/pkgs/development/libraries/gnustep-gui/fixup-all.patch b/pkgs/development/libraries/gnustep-gui/fixup-all.patch new file mode 100644 index 00000000000..abe0331b963 --- /dev/null +++ b/pkgs/development/libraries/gnustep-gui/fixup-all.patch @@ -0,0 +1,486 @@ +diff -r -u gnustep-gui-0.24.0/GNUmakefile.postamble gnustep-gui-0.24.0.patched/GNUmakefile.postamble +--- gnustep-gui-0.24.0/GNUmakefile.postamble 2010-05-17 22:38:59.000000000 +0600 ++++ gnustep-gui-0.24.0.patched/GNUmakefile.postamble 2014-12-01 13:44:05.000000000 +0600 +@@ -40,20 +40,20 @@ + # The following rule is important mainly for packaging, because in that case + # you install into a fake system tree, and the directory is not there. + # +-$(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional: +- $(MKDIRS) $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional ++$(DESTDIR_GNUSTEP_MAKEFILES)/Additional: ++ $(MKDIRS) $(DESTDIR_GNUSTEP_MAKEFILES)/Additional + + # Things to do before installing +-before-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional ++before-install:: $(DESTDIR_GNUSTEP_MAKEFILES)/Additional + $(INSTALL_DATA) gui.make \ +- $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/gui.make ++ $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/gui.make + + # Things to do after installing + # after-install:: + + # Things to do before uninstalling + before-uninstall:: +- rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/gui.make ++ rm -f $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/gui.make + + # Things to do after uninstalling + # after-uninstall:: +Only in gnustep-gui-0.24.0.patched: GNUmakefile.postamble~ +Only in gnustep-gui-0.24.0.patched/Model: libgmodel.bundle +Only in gnustep-gui-0.24.0.patched/Model: obj +Only in gnustep-gui-0.24.0.patched/Source: Info-gnustep.plist +Only in gnustep-gui-0.24.0.patched/Source: NSApplication.m~ +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: externs.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: externs.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: Functions.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: Functions.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSAnimator.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSAnimator.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSAutocompleteWindow.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSAutocompleteWindow.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSCharacterPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSCharacterPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSDisplayServer.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSDisplayServer.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSDragView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSDragView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSEPSPrintOperation.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSEPSPrintOperation.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSFontInfo.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSFontInfo.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGModelLoader.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGModelLoader.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGormLoader.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGormLoader.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGormLoading.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGormLoading.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHbox.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHbox.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHelpAttachment.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHelpAttachment.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHelpManagerPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHelpManagerPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHorizontalTypesetter.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHorizontalTypesetter.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSIconManager.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSIconManager.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSImageMagickImageRep.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSImageMagickImageRep.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSInfoPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSInfoPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSKeyBindingAction.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSKeyBindingAction.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSKeyBindingTable.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSKeyBindingTable.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSLayoutManager.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSLayoutManager.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSMemoryPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSMemoryPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSModelLoaderFactory.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSModelLoaderFactory.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSNibLoader.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSNibLoader.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSNibLoading.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSNibLoading.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPDFPrintOperation.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPDFPrintOperation.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPrinting.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPrinting.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPrintOperation.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPrintOperation.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSServicesManager.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSServicesManager.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSSlideView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSSlideView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSStandardWindowDecorationView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSStandardWindowDecorationView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTable.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTable.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTextFinder.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTextFinder.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTextStorage.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTextStorage.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeDrawing.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeDrawing.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeInspector.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeInspector.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTheme.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeMenu.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeMenu.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTheme.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeOpenSavePanels.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeOpenSavePanels.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemePanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemePanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeTools.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeTools.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTitleView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTitleView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolbarCustomizationPalette.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolbarCustomizationPalette.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolbarView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolbarView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolTips.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolTips.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTrackingRect.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTrackingRect.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTypesetter.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTypesetter.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSVbox.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSVbox.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSWindowDecorationView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSWindowDecorationView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSXibLoader.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSXibLoader.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSXibLoading.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSXibLoading.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: linking.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: linking.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSActionCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSActionCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAffineTransform.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAffineTransform.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAlert.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAlert.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAnimation.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAnimation.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSApplication.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSApplication.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSArrayController.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSArrayController.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAttributedString.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAttributedString.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBezierPath.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBezierPath.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+GIF.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+GIF.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+ICNS.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+ICNS.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+JPEG.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+JPEG.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+PNG.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+PNG.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+PNM.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+PNM.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBox.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBox.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBrowserCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBrowserCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBrowser.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBrowser.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBundleAdditions.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBundleAdditions.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSButtonCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSButtonCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSButton.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSButton.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCachedImageRep.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCachedImageRep.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSClipView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSClipView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCollectionViewItem.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCollectionViewItem.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCollectionView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCollectionView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorList.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorList.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColor.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColor.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorPicker.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorPicker.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorSpace.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorSpace.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorWell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorWell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSComboBoxCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSComboBoxCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSComboBox.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSComboBox.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSController.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSController.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSControl.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSControl.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCursor.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCursor.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCustomImageRep.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCustomImageRep.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLinkManager.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLinkManager.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLink.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLink.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLinkPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLinkPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDocumentController.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDocumentController.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDocument.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDocument.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDrawer.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDrawer.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSEPSImageRep.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSEPSImageRep.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSEvent.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSEvent.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFileWrapper.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFileWrapper.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontDescriptor.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontDescriptor.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontManager.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontManager.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFont.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFont.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFormCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFormCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSForm.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSForm.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGlyphGenerator.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGlyphGenerator.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGradient.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGradient.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGraphicsContext.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGraphicsContext.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSHelpManager.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSHelpManager.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSHelpPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSHelpPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImage.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImage.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageRep.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageRep.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInputManager.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInputManager.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInputServer.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInputServer.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInterfaceStyle.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInterfaceStyle.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSKeyValueBinding.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSKeyValueBinding.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLayoutManager.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLayoutManager.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLevelIndicatorCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLevelIndicatorCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLevelIndicator.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLevelIndicator.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMatrix.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMatrix.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuItemCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuItemCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuItem.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuItem.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenu.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenu.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMovie.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMovie.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMovieView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMovieView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibAXAttributeConnector.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibAXAttributeConnector.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibAXRelationshipConnector.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibAXRelationshipConnector.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibBindingConnector.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibBindingConnector.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNib.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNib.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSObjectController.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSObjectController.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLContext.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLContext.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLPixelFormat.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLPixelFormat.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOutlineView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOutlineView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPageLayout.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPageLayout.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSParagraphStyle.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSParagraphStyle.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPasteboard.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPasteboard.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopover.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopover.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopUpButtonCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopUpButtonCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopUpButton.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopUpButton.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrinter.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrinter.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintInfo.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintInfo.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintOperation.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintOperation.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintPanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintPanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSProgressIndicator.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSProgressIndicator.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSResponder.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSResponder.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSRulerMarker.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSRulerMarker.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSRulerView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSRulerView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSavePanel.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSavePanel.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScreen.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScreen.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScroller.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScroller.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScrollView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScrollView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSearchFieldCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSearchFieldCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSearchField.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSearchField.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSecureTextField.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSecureTextField.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSegmentedCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSegmentedCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSegmentedControl.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSegmentedControl.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSelection.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSelection.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSShadow.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSShadow.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSliderCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSliderCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSlider.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSlider.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSound.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSound.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSpeechSynthesizer.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSpeechSynthesizer.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSpellChecker.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSpellChecker.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSplitView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSplitView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStatusBar.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStatusBar.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStatusItem.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStatusItem.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStepperCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStepperCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStepper.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStepper.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStringDrawing.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStringDrawing.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableColumn.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableColumn.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableHeaderCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableHeaderCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableHeaderView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableHeaderView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTabViewItem.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTabViewItem.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTabView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTabView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextAttachment.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextAttachment.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextBlock.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextBlock.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextContainer.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextContainer.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextFieldCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextFieldCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextField.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextField.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextList.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextList.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSText.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSText.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextStorage.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextStorage.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextTableBlock.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextTableBlock.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextTable.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextTable.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextView_actions.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextView_actions.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTokenFieldCell.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTokenFieldCell.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTokenField.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTokenField.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbarItemGroup.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbarItemGroup.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbarItem.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbarItem.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbar.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbar.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTrackingArea.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTrackingArea.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTreeController.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTreeController.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTreeNode.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTreeNode.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSUserDefaultsController.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSUserDefaultsController.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSViewController.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSViewController.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSView.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSView.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWindowController.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWindowController.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWindow.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWindow.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWorkspace.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWorkspace.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: tiff.m.d +Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: tiff.m.o +Only in gnustep-gui-0.24.0.patched/Source/obj: libgnustep-gui.so +Only in gnustep-gui-0.24.0.patched/Source/obj: libgnustep-gui.so.0.24 +Only in gnustep-gui-0.24.0.patched/Source/obj: libgnustep-gui.so.0.24.0 +diff -r -u gnustep-gui-0.24.0/TextConverters/RTF/GNUmakefile.preamble gnustep-gui-0.24.0.patched/TextConverters/RTF/GNUmakefile.preamble +--- gnustep-gui-0.24.0/TextConverters/RTF/GNUmakefile.preamble 2008-06-10 10:01:49.000000000 +0600 ++++ gnustep-gui-0.24.0.patched/TextConverters/RTF/GNUmakefile.preamble 2014-12-01 13:02:11.000000000 +0600 +@@ -49,7 +49,7 @@ + ADDITIONAL_INCLUDE_DIRS +=-I../../Headers/Additions -I../../Headers + + # Additional LDFLAGS to pass to the linker +-#ADDITIONAL_LDFLAGS += ++ADDITIONAL_LDFLAGS += -lgnustep-gui + + # Additional library directories the linker should search + ADDITIONAL_LIB_DIRS += -L../../Source/$(GNUSTEP_OBJ_DIR) +Only in gnustep-gui-0.24.0.patched/TextConverters/RTF: GNUmakefile.preamble~ +Only in gnustep-gui-0.24.0.patched/TextConverters/RTF: obj +Only in gnustep-gui-0.24.0.patched/TextConverters/RTF: RTFConverter.bundle +diff -r -u gnustep-gui-0.24.0/Tools/GNUmakefile.preamble gnustep-gui-0.24.0.patched/Tools/GNUmakefile.preamble +--- gnustep-gui-0.24.0/Tools/GNUmakefile.preamble 2006-02-22 12:43:48.000000000 +0600 ++++ gnustep-gui-0.24.0.patched/Tools/GNUmakefile.preamble 2014-12-01 12:52:41.000000000 +0600 +@@ -32,9 +32,11 @@ + ADDITIONAL_LIB_DIRS += -L../Source/$(GNUSTEP_OBJ_DIR) -L../Model/$(GNUSTEP_OBJ_DIR) + + # Additional libraries when linking tools ++make_services_TOOL_LIBS += -lgnustep-base + gpbs_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS) + set_show_service_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS) + gopen_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS) ++gclose_TOOL_LIBS += -lgnustep-base + gcloseall_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS) + GSspell_TOOL_LIBS += $(ADDITIONAL_DEPENDS) + +Only in gnustep-gui-0.24.0.patched/Tools: GNUmakefile.preamble~ +Only in gnustep-gui-0.24.0.patched/Tools: GSspell.service +Only in gnustep-gui-0.24.0.patched/Tools: obj diff --git a/pkgs/development/tools/build-managers/gnustep-make/builder.sh b/pkgs/development/tools/build-managers/gnustep-make/builder.sh new file mode 100644 index 00000000000..1655a75eeba --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep-make/builder.sh @@ -0,0 +1,122 @@ +source $stdenv/setup + +preConfigure() { + . $GNUSTEP_MAKEFILES/GNUstep.sh +} + +wrapGSMake() { + local program="$1" + local config="$2" + local wrapped="$(dirname $program)/.$(basename $program)-wrapped" + + mv "$program" "$wrapped" + + cat > "$program"<> $conf + if [ -n "$NIX_GNUSTEP_SYSTEM_APPS" ]; then + echo NIX_GNUSTEP_SYSTEM_APPS="$NIX_GNUSTEP_SYSTEM_APPS" + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_ADMIN_APPS" ]; then + echo NIX_GNUSTEP_SYSTEM_ADMIN_APPS="$NIX_GNUSTEP_SYSTEM_ADMIN_APPS" >> $conf + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_WEB_APPS" ]; then + echo NIX_GNUSTEP_SYSTEM_WEB_APPS="$NIX_GNUSTEP_SYSTEM_WEB_APPS" >> $conf + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_TOOLS" ]; then + echo NIX_GNUSTEP_SYSTEM_TOOLS="$NIX_GNUSTEP_SYSTEM_TOOLS" >> $conf + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_ADMIN_TOOLS" ]; then + echo NIX_GNUSTEP_SYSTEM_ADMIN_TOOLS="$NIX_GNUSTEP_SYSTEM_ADMIN_TOOLS" >> $conf + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_LIBRARY" ]; then + echo NIX_GNUSTEP_SYSTEM_LIBRARY="$NIX_GNUSTEP_SYSTEM_LIBRARY" >> $conf + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_HEADERS" ]; then + echo NIX_GNUSTEP_SYSTEM_HEADERS="$NIX_GNUSTEP_SYSTEM_HEADERS" >> $conf + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_LIBRARIES" ]; then + echo NIX_GNUSTEP_SYSTEM_LIBRARIES="$NIX_GNUSTEP_SYSTEM_LIBRARIES" >> $conf + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_DOC" ]; then + echo NIX_GNUSTEP_SYSTEM_DOC="$NIX_GNUSTEP_SYSTEM_DOC" >> $conf + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_DOC_MAN" ]; then + echo NIX_GNUSTEP_SYSTEM_DOC_MAN="$NIX_GNUSTEP_SYSTEM_DOC_MAN" >> $conf + fi + if [ -n "$NIX_GNUSTEP_SYSTEM_DOC_INFO" ]; then + echo NIX_GNUSTEP_SYSTEM_DOC_INFO="$NIX_GNUSTEP_SYSTEM_DOC_INFO" >> $conf + fi + + for i in $out/bin/*; do + echo "wrapping $(basename $i)" + wrapGSMake "$i" "$out/share/.GNUstep.conf" + done +} + +genericBuild diff --git a/pkgs/development/tools/build-managers/gnustep-make/default.nix b/pkgs/development/tools/build-managers/gnustep-make/default.nix index a9214934577..5b193293276 100644 --- a/pkgs/development/tools/build-managers/gnustep-make/default.nix +++ b/pkgs/development/tools/build-managers/gnustep-make/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; configureFlags = "--with-installation-domain=SYSTEM"; buildInputs = [ clang which libobjc2 ]; - patches = [ ./gs-makefiles-additional.patch ]; + patches = [ ./fixup-paths.patch ]; setupHook = ./setup-hook.sh; meta = { description = "GNUstep-make is a build manager for GNUstep."; diff --git a/pkgs/development/tools/build-managers/gnustep-make/fixup-paths.patch b/pkgs/development/tools/build-managers/gnustep-make/fixup-paths.patch new file mode 100644 index 00000000000..06c237eb61c --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep-make/fixup-paths.patch @@ -0,0 +1,204 @@ +diff -r -u gnustep-make-2.6.6/common.make gnustep-make-2.6.6.patched/common.make +--- gnustep-make-2.6.6/common.make 2013-03-04 17:21:55.000000000 +0600 ++++ gnustep-make-2.6.6.patched/common.make 2015-01-18 14:36:25.000000000 +0600 +@@ -135,7 +135,9 @@ + endif + # Then include makefiles with flags/config options installed by the + # libraries themselves +--include $(GNUSTEP_MAKEFILES)/Additional/*.make ++ifneq ($(NIX_GNUSTEP_MAKEFILES_ADDITIONAL),) ++include $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL) ++endif + + # + # Determine target specific settings +Only in gnustep-make-2.6.6.patched: common.make~ +Only in gnustep-make-2.6.6.patched: configure.ac~ +diff -r -u gnustep-make-2.6.6/GNUmakefile.in gnustep-make-2.6.6.patched/GNUmakefile.in +--- gnustep-make-2.6.6/GNUmakefile.in 2013-09-20 12:13:15.000000000 +0600 ++++ gnustep-make-2.6.6.patched/GNUmakefile.in 2014-12-07 20:35:27.000000000 +0600 +@@ -173,7 +173,6 @@ + "$(makedir)/$(GNUSTEP_TARGET_CPU)" \ + "$(makedir)/$(GNUSTEP_TARGET_DIR)" \ + "$(makedir)/$(GNUSTEP_TARGET_LDIR)" \ +- "$(makedir)/Additional" \ + "$(makedir)/Auxiliary" \ + "$(makedir)/Master" \ + "$(makedir)/Instance" \ +@@ -314,7 +313,6 @@ + -rmdir "$(makedir)/Instance" + -rmdir "$(makedir)/Master" + -rmdir "$(makedir)/Auxiliary" +- -rmdir "$(makedir)/Additional" + -rmdir "$(makedir)/$(GNUSTEP_TARGET_LDIR)" + -rmdir "$(makedir)/$(GNUSTEP_TARGET_DIR)" + -rmdir "$(makedir)/$(GNUSTEP_TARGET_CPU)" +diff -r -u gnustep-make-2.6.6/gnustep-config.in gnustep-make-2.6.6.patched/gnustep-config.in +--- gnustep-make-2.6.6/gnustep-config.in 2013-07-02 16:06:24.000000000 +0600 ++++ gnustep-make-2.6.6.patched/gnustep-config.in 2014-12-09 21:29:49.000000000 +0600 +@@ -66,6 +66,7 @@ + echo " --variable=OBJCXX" + echo " --variable=GNUMAKE" + echo " --variable=GNUSTEP_MAKEFILES" ++ echo " --variable=NIX_GNUSTEP_MAKEFILES_ADDITIONAL" + echo " --variable=GNUSTEP_USER_DEFAULTS_DIR" + echo " --variable=GNUSTEP_HOST" + echo " --variable=GNUSTEP_HOST_CPU" +@@ -153,6 +154,8 @@ + + export GNUSTEP_MAKEFILES + ++export NIX_GNUSTEP_MAKEFILES_ADDITIONAL ++ + # + # If all they want to know if GNUSTEP_MAKEFILES or anything that + # we can compute only using GNUSTEP_MAKEFILES, we can print it out +@@ -168,6 +171,8 @@ + exit 0;; + --variable=GNUSTEP_MAKEFILES) echo "$GNUSTEP_MAKEFILES" + exit 0;; ++ --variable=NIX_GNUSTEP_MAKEFILES_ADDITIONAL) echo "$NIX_GNUSTEP_MAKEFILES_ADDITIONAL" ++ exit 0;; + --variable=GNUMAKE) echo "@GNUMAKE@" + exit 0;; + --debug-flags) @GNUMAKE@ -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-objc-flags quiet=yes debug=yes 2>/dev/null +Only in gnustep-make-2.6.6.patched: gnustep-config.in~ +diff -r -u gnustep-make-2.6.6/GNUstep.csh.in gnustep-make-2.6.6.patched/GNUstep.csh.in +--- gnustep-make-2.6.6/GNUstep.csh.in 2011-05-03 13:40:10.000000000 +0600 ++++ gnustep-make-2.6.6.patched/GNUstep.csh.in 2014-12-09 20:14:05.000000000 +0600 +@@ -130,6 +130,10 @@ + setenv GNUSTEP_MAKEFILES "@GNUSTEP_MAKEFILES@" + endif + ++if ( ! ${?NIX_GNUSTEP_MAKEFILES_ADDITIONAL} ) then ++ setenv NIX_GNUSTEP_MAKEFILES_ADDITIONAL "@NIX_GNUSTEP_MAKEFILES_ADDITIONAL@" ++endif ++ + if ( "${GNUSTEP_MAKE_STRICT_V2_MODE}" == "yes" ) then + unsetenv GNUSTEP_USER_DIR + unsetenv GNUSTEP_USER_ROOT +Only in gnustep-make-2.6.6.patched: GNUstep.csh.in~ +diff -r -u gnustep-make-2.6.6/GNUstep.sh.in gnustep-make-2.6.6.patched/GNUstep.sh.in +--- gnustep-make-2.6.6/GNUstep.sh.in 2012-02-21 20:21:38.000000000 +0600 ++++ gnustep-make-2.6.6.patched/GNUstep.sh.in 2015-01-18 14:48:09.000000000 +0600 +@@ -173,7 +173,6 @@ + fi + export GNUSTEP_MAKEFILES + +- + if [ "$GNUSTEP_MAKE_STRICT_V2_MODE" = "yes" ]; then + # Make sure this is never set in gnustep-make v2 strict mode; it + # might have been set in the config file. +@@ -300,7 +299,7 @@ + # for each duplicate. When there are many duplicates it's faster to + # use print_unique_pathlist.sh first to remove them and skip the + # echos+greps later. +-GNUSTEP_TOOLS_PATHLIST=`$GNUSTEP_MAKEFILES/print_unique_pathlist.sh "$GNUSTEP_USER_TOOLS" "$GNUSTEP_LOCAL_TOOLS" "$GNUSTEP_NETWORK_TOOLS" "$GNUSTEP_SYSTEM_TOOLS" $fixup_paths` ++GNUSTEP_TOOLS_PATHLIST=$NIX_GNUSTEP_SYSTEM_TOOLS + + # Now, we check the paths in GNUSTEP_*_ADMIN_TOOLS. These paths + # should only be used by Administrators -- normal users don't have +@@ -313,7 +312,7 @@ + + # So we examine GNUSTEP_*_ADMIN_TOOLS; if we find any path in that + # list that exists and that we can write to, we add it to our PATH. +-for dir in "$GNUSTEP_SYSTEM_ADMIN_TOOLS" "$GNUSTEP_NETWORK_ADMIN_TOOLS" "$GNUSTEP_LOCAL_ADMIN_TOOLS" "$GNUSTEP_USER_ADMIN_TOOLS"; do ++for dir in $(echo "$NIX_GNUSTEP_SYSTEM_ADMIN_TOOLS" | tr ":" "\n"); do + if [ -d "$dir" -a -w "$dir" ]; then + # Only add the new dir if it's not already in GNUSTEP_TOOLS_PATHLIST + if (echo ":${GNUSTEP_TOOLS_PATHLIST}:" \ +@@ -356,7 +355,7 @@ + export PATH + + # Determine the library paths +-GNUSTEP_LIBRARIES_PATHLIST=`$GNUSTEP_MAKEFILES/print_unique_pathlist.sh "$GNUSTEP_USER_LIBRARIES" "$GNUSTEP_LOCAL_LIBRARIES" "$GNUSTEP_NETWORK_LIBRARIES" "$GNUSTEP_SYSTEM_LIBRARIES" $fixup_paths` ++GNUSTEP_LIBRARIES_PATHLIST=$NIX_GNUSTEP_SYSTEM_LIBRARIES + + old_IFS="$IFS" + IFS=: +@@ -486,7 +485,7 @@ + # + # Setup Java CLASSPATH and Guile GUILE_LOAD_PATH + # +-GNUSTEP_LIBRARY_PATHLIST=`$GNUSTEP_MAKEFILES/print_unique_pathlist.sh "$GNUSTEP_USER_LIBRARY" "$GNUSTEP_LOCAL_LIBRARY" "$GNUSTEP_NETWORK_LIBRARY" "$GNUSTEP_SYSTEM_LIBRARY" $fixup_paths` ++GNUSTEP_LIBRARY_PATHLIST=$NIX_GNUSTEP_SYSTEM_LIBRARY + + old_IFS="$IFS" + IFS=: +@@ -526,7 +525,7 @@ + # xxx/Library/Documentation/info, are found by the info browsing + # programs. To get this effect, we add those paths to INFOPATH. + # +-GNUSTEP_INFO_PATHLIST=`$GNUSTEP_MAKEFILES/print_unique_pathlist.sh "$GNUSTEP_USER_DOC_INFO" "$GNUSTEP_LOCAL_DOC_INFO" "$GNUSTEP_NETWORK_DOC_INFO" "$GNUSTEP_SYSTEM_DOC_INFO" $fixup_paths` ++GNUSTEP_INFO_PATHLIST=$NIX_GNUSTEP_SYSTEM_DOC_INFO + old_IFS="$IFS" + IFS=: + for dir in $GNUSTEP_INFO_PATHLIST; do +@@ -559,6 +558,7 @@ + + unset GNUSTEP_KEEP_CONFIG_FILE GNUSTEP_KEEP_USER_CONFIG_FILE + ++ + export GNUSTEP_CONFIG_FILE GNUSTEP_USER_CONFIG_FILE + + export GNUSTEP_USER_DEFAULTS_DIR +Only in gnustep-make-2.6.6.patched: GNUstep.sh.in~ +diff -r -u gnustep-make-2.6.6/GNUstep-strict-v2.conf.in gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in +--- gnustep-make-2.6.6/GNUstep-strict-v2.conf.in 2008-01-15 20:35:36.000000000 +0600 ++++ gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in 2014-12-07 22:04:56.000000000 +0600 +@@ -47,7 +47,6 @@ + # Traditionally, this is /usr/GNUstep/System/Library/Makefiles + GNUSTEP_MAKEFILES=@GNUSTEP_MAKEFILES@ + +- + # This is where the user home directories are. Only used to provide + # NSUserDirectory in gnustep-base. Never used anywhere else. + GNUSTEP_SYSTEM_USERS_DIR=@GNUSTEP_SYSTEM_USERS_DIR@ +Only in gnustep-make-2.6.6.patched: GNUstep-strict-v2.conf.in~ +diff -r -u gnustep-make-2.6.6/library-combo.make gnustep-make-2.6.6.patched/library-combo.make +--- gnustep-make-2.6.6/library-combo.make 2012-02-21 19:53:02.000000000 +0600 ++++ gnustep-make-2.6.6.patched/library-combo.make 2014-12-09 20:15:05.000000000 +0600 +@@ -142,7 +142,7 @@ + # + # Third-party foundations not using make package + # Our own foundation will install a base.make file into +-# $GNUSTEP_MAKEFILES/Additional/ to set the needed flags ++# $NIX_GNUSTEP_MAKEFILES_ADDITIONAL to set the needed flags + # + ifeq ($(FOUNDATION_LIB), nx) + # -framework Foundation is used both to find headers, and to link +@@ -166,7 +166,7 @@ + + # + # FIXME - Ask Helge to move this inside his libFoundation, and have +-# it installed as a $(GNUSTEP_MAKEFILES)/Additional/libFoundation.make ++# it installed as a $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)/libFoundation.make + # + ifeq ($(FOUNDATION_LIB),fd) + -include $(GNUSTEP_MAKEFILES)/libFoundation.make +@@ -193,7 +193,7 @@ + GUI_LIBS = + # + # Third-party GUI libraries - our own sets its flags into +-# $(GNUSTEP_MAKEFILES)/Additional/gui.make ++# $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)/gui.make + # + ifeq ($(GUI_LIB), nx) + GUI_DEFINE = -DNeXT_GUI_LIBRARY=1 +Only in gnustep-make-2.6.6.patched: library-combo.make~ +Only in gnustep-make-2.6.6.patched: result +diff -r -u gnustep-make-2.6.6/rules.make gnustep-make-2.6.6.patched/rules.make +--- gnustep-make-2.6.6/rules.make 2013-07-04 16:05:44.000000000 +0600 ++++ gnustep-make-2.6.6.patched/rules.make 2014-12-09 21:31:04.000000000 +0600 +@@ -667,7 +667,9 @@ + exit 1$(END_ECHO) + endif + +-$(GNUSTEP_MAKEFILES)/Additional/*.make: ; ++ifneq ($(NIX_GNUSTEP_MAKEFILES_ADDITIONAL),) ++$(NIX_GNUSTEP_MAKEFILES_ADDITIONAL): ; ++endif + + $(GNUSTEP_MAKEFILES)/Master/*.make: ; + +Only in gnustep-make-2.6.6.patched: rules.make~ diff --git a/pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix b/pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix new file mode 100644 index 00000000000..200648d621e --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix @@ -0,0 +1,11 @@ +{ stdenv, lib, libobjc2, clang, gnustep_make, makeWrapper, which }: +{ buildInputs ? [] +, ...} @ args: +stdenv.mkDerivation (args // { + buildInputs = [ makeWrapper gnustep_make which ] ++ buildInputs; + + builder = ./builder.sh; + setupHook = ./setup-hook.sh; + + GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; +}) diff --git a/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh b/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh index 7e55bae23bd..71618ef960f 100644 --- a/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh +++ b/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh @@ -16,12 +16,62 @@ installFlagsArray=( \ "GNUSTEP_SYSTEM_DOC_INFO=$out/share/info" \ ) -addGSMakefilesPath () { +addEnvVars() { local filename for filename in $1/share/GNUstep/Makefiles/Additional/*.make ; do - export NIX_GNUSTEP_MAKEFILES_ADDITIONAL="$NIX_GNUSTEP_MAKEFILES_ADDITIONAL $filename" + if case "$NIX_GNUSTEP_MAKEFILES_ADDITIONAL" in *"{$filename}"*) false;; *) true;; esac; then + export NIX_GNUSTEP_MAKEFILES_ADDITIONAL+=" $filename" + fi done -} -envHooks=(${envHooks[@]} addGSMakefilesPath) + local tmp="$1/lib/GNUstep/Applications" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_APPS" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_APPS "$tmp" + fi + tmp="$1/lib/GNUstep/Applications" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_ADMIN_APPS" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_ADMIN_APPS "$tmp" + fi + tmp="$1/lib/GNUstep/WebApplications" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_WEB_APPS" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_WEB_APPS "$tmp" + fi + tmp="$1/bin" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_TOOLS" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_TOOLS "$tmp" + fi + tmp="$1/sbin" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_ADMIN_TOOLS" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_ADMIN_TOOLS "$tmp" + fi + tmp="$1/lib/GNUstep" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_LIBRARY" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_LIBRARY "$tmp" + fi + tmp="$1/include" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_HEADERS" in *"${tmp}"*) false;; *) true;; esac; then + if [ -z "$NIX_GNUSTEP_SYSTEM_HEADERS" ]; then + export NIX_GNUSTEP_SYSTEM_HEADERS="$tmp" + else + export NIX_GNUSTEP_SYSTEM_HEADERS+=" $tmp" + fi + fi + tmp="$1/lib" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_LIBRARIES" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_LIBRARIES "$tmp" + fi + tmp="$1/share/GNUstep/Documentation" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_DOC" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_DOC "$tmp" + fi + tmp="$1/share/man" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_DOC_MAN" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_DOC_MAN "$tmp" + fi + tmp="$1/share/info" + if [ -d "$tmp" ] && case "$NIX_GNUSTEP_SYSTEM_DOC_INFO" in *"${tmp}"*) false;; *) true;; esac; then + addToSearchPath NIX_GNUSTEP_SYSTEM_DOC_INFO "$tmp" + fi +} +envHooks=(${envHooks[@]} addEnvVars) diff --git a/pkgs/development/tools/build-managers/gnustep-make/wrapper.sh b/pkgs/development/tools/build-managers/gnustep-make/wrapper.sh new file mode 100644 index 00000000000..1bc2e130d88 --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep-make/wrapper.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +. $GNUSTEP_MAKEFILES/GNUstep.sh +$1 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8a795b8c37c..6310a799406 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6446,7 +6446,10 @@ in gnustep_back = callPackage ../development/libraries/gnustep-back { stdenv = clangStdenv; }; gnustep_base = callPackage ../development/libraries/gnustep-base { stdenv = clangStdenv; giflib = giflib_4_1; }; + gnustep_make = callPackage ../development/tools/build-managers/gnustep-make { stdenv = clangStdenv; }; + gsmakeDerivation = callPackage ../development/tools/build-managers/gnustep-make/gsmakeDerivation.nix { stdenv = clangStdenv; }; + gnustep_gui = callPackage ../development/libraries/gnustep-gui { stdenv = clangStdenv; }; gob2 = callPackage ../development/tools/misc/gob2 { }; From 697982b91bfdce68758d79ce01b0fa1b444105ef Mon Sep 17 00:00:00 2001 From: Artyom Shalkhakov Date: Thu, 29 Jan 2015 21:56:26 +0600 Subject: [PATCH 11/23] gnustep: fix gdnc, gdomap Both gdnc and gdomap seem to work. --- nixos/modules/services/networking/gdomap.nix | 19 ++++++++----------- nixos/modules/services/x11/gdnc.nix | 5 ++--- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/nixos/modules/services/networking/gdomap.nix b/nixos/modules/services/networking/gdomap.nix index da78810f6b2..7b5ba4fcf10 100644 --- a/nixos/modules/services/networking/gdomap.nix +++ b/nixos/modules/services/networking/gdomap.nix @@ -4,7 +4,6 @@ with lib; let cfg = config.services.gdomap; - pidFile = "${cfg.pidDir}/gdomap.pid"; in { # @@ -20,9 +19,11 @@ in Note that gdomap runs as root. "; }; - pidDir = mkOption { - default = "/var/run/gdomap"; - description = "Location of the file which stores the PID of gdomap"; + + pidfile = mkOption { + type = types.path; + default = "/tmp/gdomap.pid"; + description = "Location of the pid file for gdomap daemon"; }; }; }; @@ -37,15 +38,11 @@ in wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; path = [ pkgs.gnustep_base ]; - preStart = '' - mkdir -m 0700 -p ${cfg.pidDir} - chown -R nobody:nobody ${cfg.pidDir} - ''; serviceConfig = { + PIDFile = cfg.pidfile; ExecStart = "@${pkgs.gnustep_base}/bin/gdomap" + " -d -p" - + " -I ${pidFile}"; -# + " -j ${cfg.pidDir}"; + + " -I ${cfg.pidfile}"; Restart = "always"; RestartSec = 2; TimeoutStartSec = "30"; @@ -53,4 +50,4 @@ in }; }; }; -} \ No newline at end of file +} diff --git a/nixos/modules/services/x11/gdnc.nix b/nixos/modules/services/x11/gdnc.nix index 87f34972df2..dc17374191b 100644 --- a/nixos/modules/services/x11/gdnc.nix +++ b/nixos/modules/services/x11/gdnc.nix @@ -24,12 +24,11 @@ in { requires = [ "gdomap.service" ]; wantedBy = [ "multi-user.target" ]; serviceConfig = { - ExecStart = ''${pkgs.gnustep_base}/bin/gdnc --verbose''; + ExecStart = ''${pkgs.gnustep_base}/bin/gdnc -f''; Restart = "always"; RestartSec = 10; TimeoutStartSec = "30"; - Type = "simple"; }; }; }; -} \ No newline at end of file +} From c3974455ebdc5a61093d236d06d389c3c1eac5df Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Mon, 27 Jun 2016 20:32:47 +0000 Subject: [PATCH 12/23] gnustep: rescope everything into one folder This should make merge conflicts easier to handle. "gnustep" prefix has been removed to make thing simpler. So "gnustep_make" is now "make" within the gnustep scope. --- .../back}/default.nix | 4 +- .../back}/fixup-tools.patch | 0 .../base}/default.nix | 12 +----- .../fixup-base-makefile-installdir.patch | 0 .../base}/fixup-paths.patch | 0 .../development/libraries/gnustep/default.nix | 22 +++++++++++ .../libraries/gnustep}/gorm/default.nix | 6 +-- .../gnustep}/gorm/fix-gs-makefiles.patch | 0 .../{gnustep-gui => gnustep/gui}/default.nix | 4 +- .../gui}/fixup-all.patch | 0 .../gui}/fixup-gui-makefile-installdir.patch | 0 .../fixup-gui-textconverters-preamble.patch | 0 .../gui}/fixup-gui-tools-preamble.patch | 0 .../libraries/gnustep}/gworkspace/default.nix | 4 +- .../{ => gnustep}/libobjc2/default.nix | 0 .../libobjc2/removeCXXtests.patch | 0 .../gnustep/make}/GNUstep.conf | 0 .../gnustep/make}/builder.sh | 0 .../gnustep/make}/default.nix | 0 .../gnustep/make}/fixup-paths.patch | 0 .../make}/gs-makefiles-additional.patch | 0 .../gnustep/make/gsmakeDerivation.nix | 11 ++++++ .../gnustep/make}/setup-hook.sh | 0 .../gnustep/make}/wrapper.sh | 0 .../gnustep}/projectcenter/default.nix | 7 ++-- .../projectcenter/fixup-preamble.patch | 0 .../gnustep}/systempreferences/default.nix | 4 +- .../libraries/gnustep/xcode/default.nix | 19 ++++++++++ .../gnustep-make/gsmakeDerivation.nix | 11 ------ .../build-managers/gnustep/make/default.nix | 38 ------------------- .../build-managers/gnustep/xcode/default.nix | 23 ----------- pkgs/top-level/all-packages.nix | 26 +------------ 32 files changed, 68 insertions(+), 123 deletions(-) rename pkgs/development/libraries/{gnustep-back => gnustep/back}/default.nix (85%) rename pkgs/development/libraries/{gnustep-back => gnustep/back}/fixup-tools.patch (100%) rename pkgs/development/libraries/{gnustep-base => gnustep/base}/default.nix (83%) rename pkgs/development/libraries/{gnustep-base => gnustep/base}/fixup-base-makefile-installdir.patch (100%) rename pkgs/development/libraries/{gnustep-base => gnustep/base}/fixup-paths.patch (100%) create mode 100644 pkgs/development/libraries/gnustep/default.nix rename pkgs/{applications/editors => development/libraries/gnustep}/gorm/default.nix (84%) rename pkgs/{applications/editors => development/libraries/gnustep}/gorm/fix-gs-makefiles.patch (100%) rename pkgs/development/libraries/{gnustep-gui => gnustep/gui}/default.nix (93%) rename pkgs/development/libraries/{gnustep-gui => gnustep/gui}/fixup-all.patch (100%) rename pkgs/development/libraries/{gnustep-gui => gnustep/gui}/fixup-gui-makefile-installdir.patch (100%) rename pkgs/development/libraries/{gnustep-gui => gnustep/gui}/fixup-gui-textconverters-preamble.patch (100%) rename pkgs/development/libraries/{gnustep-gui => gnustep/gui}/fixup-gui-tools-preamble.patch (100%) rename pkgs/{applications/misc => development/libraries/gnustep}/gworkspace/default.nix (86%) rename pkgs/development/libraries/{ => gnustep}/libobjc2/default.nix (100%) rename pkgs/development/libraries/{ => gnustep}/libobjc2/removeCXXtests.patch (100%) rename pkgs/development/{tools/build-managers/gnustep-make => libraries/gnustep/make}/GNUstep.conf (100%) rename pkgs/development/{tools/build-managers/gnustep-make => libraries/gnustep/make}/builder.sh (100%) rename pkgs/development/{tools/build-managers/gnustep-make => libraries/gnustep/make}/default.nix (100%) rename pkgs/development/{tools/build-managers/gnustep-make => libraries/gnustep/make}/fixup-paths.patch (100%) rename pkgs/development/{tools/build-managers/gnustep-make => libraries/gnustep/make}/gs-makefiles-additional.patch (100%) create mode 100644 pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix rename pkgs/development/{tools/build-managers/gnustep-make => libraries/gnustep/make}/setup-hook.sh (100%) rename pkgs/development/{tools/build-managers/gnustep-make => libraries/gnustep/make}/wrapper.sh (100%) rename pkgs/{applications/editors => development/libraries/gnustep}/projectcenter/default.nix (82%) rename pkgs/{applications/editors => development/libraries/gnustep}/projectcenter/fixup-preamble.patch (100%) rename pkgs/{applications/misc => development/libraries/gnustep}/systempreferences/default.nix (87%) create mode 100644 pkgs/development/libraries/gnustep/xcode/default.nix delete mode 100644 pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix delete mode 100644 pkgs/development/tools/build-managers/gnustep/make/default.nix delete mode 100644 pkgs/development/tools/build-managers/gnustep/xcode/default.nix diff --git a/pkgs/development/libraries/gnustep-back/default.nix b/pkgs/development/libraries/gnustep/back/default.nix similarity index 85% rename from pkgs/development/libraries/gnustep-back/default.nix rename to pkgs/development/libraries/gnustep/back/default.nix index bb504642f3c..9bad56a747a 100644 --- a/pkgs/development/libraries/gnustep-back/default.nix +++ b/pkgs/development/libraries/gnustep/back/default.nix @@ -1,7 +1,7 @@ { gsmakeDerivation , cairo , fetchurl -, gnustep_base, gnustep_gui +, base, gui , xlibs , x11 , freetype @@ -17,7 +17,7 @@ gsmakeDerivation { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-0.24.0.tar.gz"; sha256 = "0qixbilkkrqxrhhj9hnp7ygd5gs23b3qbbgk3gaxj73d0xqfvhjz"; }; - buildInputs = [ cairo gnustep_base gnustep_gui freetype pkgconfig x11 ]; + buildInputs = [ cairo base gui freetype pkgconfig x11 ]; meta = { description = "GNUstep-back is a generic backend for GNUstep."; diff --git a/pkgs/development/libraries/gnustep-back/fixup-tools.patch b/pkgs/development/libraries/gnustep/back/fixup-tools.patch similarity index 100% rename from pkgs/development/libraries/gnustep-back/fixup-tools.patch rename to pkgs/development/libraries/gnustep/back/fixup-tools.patch diff --git a/pkgs/development/libraries/gnustep-base/default.nix b/pkgs/development/libraries/gnustep/base/default.nix similarity index 83% rename from pkgs/development/libraries/gnustep-base/default.nix rename to pkgs/development/libraries/gnustep/base/default.nix index 837d74399a8..ae90aac6e23 100644 --- a/pkgs/development/libraries/gnustep-base/default.nix +++ b/pkgs/development/libraries/gnustep/base/default.nix @@ -20,17 +20,7 @@ gsmakeDerivation { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-1.24.7.tar.gz"; sha256 = "0qhphw61ksyzf04a4apmvx8000alws6d92x8ila1mi5bapcpv41s"; }; - buildInputs = [ - aspell audiofile - cups - gmp gnutls - libffi - libjpeg libtiff libpng giflib libungif - libxml2 libxslt libiconv - libobjc2 libgcrypt - icu - pkgconfig portaudio - ]; + nativeBuildInputs = [ pkgconfig ]; propagatedBuildInputs = [ aspell audiofile cups diff --git a/pkgs/development/libraries/gnustep-base/fixup-base-makefile-installdir.patch b/pkgs/development/libraries/gnustep/base/fixup-base-makefile-installdir.patch similarity index 100% rename from pkgs/development/libraries/gnustep-base/fixup-base-makefile-installdir.patch rename to pkgs/development/libraries/gnustep/base/fixup-base-makefile-installdir.patch diff --git a/pkgs/development/libraries/gnustep-base/fixup-paths.patch b/pkgs/development/libraries/gnustep/base/fixup-paths.patch similarity index 100% rename from pkgs/development/libraries/gnustep-base/fixup-paths.patch rename to pkgs/development/libraries/gnustep/base/fixup-paths.patch diff --git a/pkgs/development/libraries/gnustep/default.nix b/pkgs/development/libraries/gnustep/default.nix new file mode 100644 index 00000000000..77ceec3f96d --- /dev/null +++ b/pkgs/development/libraries/gnustep/default.nix @@ -0,0 +1,22 @@ +{ pkgs, newScope }: + +let + callPackage = newScope self; + + self = rec { + stdenv = pkgs.clangStdenv; + + gsmakeDerivation = callPackage ./make/gsmakeDerivation.nix {}; + gorm = callPackage ./gorm {}; + projectcenter = callPackage ./projectcenter {}; + system_preferences = callPackage ./systempreferences {}; + libobjc2 = callPackage ./libobjc2 {}; + make = callPackage ./make {}; + xcode = callPackage ./xcode {}; + back = callPackage ./back {}; + base = callPackage ./base { giflib = pkgs.giflib_4_1; }; + gui = callPackage ./gui {}; + gworkspace = callPackage ./gworkspace {}; + }; + +in self diff --git a/pkgs/applications/editors/gorm/default.nix b/pkgs/development/libraries/gnustep/gorm/default.nix similarity index 84% rename from pkgs/applications/editors/gorm/default.nix rename to pkgs/development/libraries/gnustep/gorm/default.nix index d5633b5e97d..1b4e0464fb0 100644 --- a/pkgs/applications/editors/gorm/default.nix +++ b/pkgs/development/libraries/gnustep/gorm/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, gnustep_base, gnustep_back, gsmakeDerivation, gnustep_gui +{ stdenv, fetchurl, base, back, gsmakeDerivation, gui }: let version = "1.2.18"; @@ -11,7 +11,7 @@ gsmakeDerivation { sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq"; }; # patches = [ ./fix-gs-makefiles.patch ]; - buildInputs = [ gnustep_base gnustep_back gnustep_gui ]; + buildInputs = [ base back gui ]; # propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui ]; meta = { @@ -24,4 +24,4 @@ gsmakeDerivation { maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; platforms = stdenv.lib.platforms.linux; }; -} \ No newline at end of file +} diff --git a/pkgs/applications/editors/gorm/fix-gs-makefiles.patch b/pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch similarity index 100% rename from pkgs/applications/editors/gorm/fix-gs-makefiles.patch rename to pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch diff --git a/pkgs/development/libraries/gnustep-gui/default.nix b/pkgs/development/libraries/gnustep/gui/default.nix similarity index 93% rename from pkgs/development/libraries/gnustep-gui/default.nix rename to pkgs/development/libraries/gnustep/gui/default.nix index 829c9905d25..9fee627b19a 100644 --- a/pkgs/development/libraries/gnustep-gui/default.nix +++ b/pkgs/development/libraries/gnustep/gui/default.nix @@ -1,6 +1,6 @@ { gsmakeDerivation , fetchurl -, gnustep_base +, base , stdenv }: let version = "0.24.0"; @@ -11,7 +11,7 @@ gsmakeDerivation { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-0.24.0.tar.gz"; sha256 = "0d6jzfcyacxjzrr2p398ysvs1akv1fcmngfzxxbfxa947miydjxg"; }; - buildInputs = [ gnustep_base ]; + buildInputs = [ base ]; # propagatedBuildInputs = [ gnustep_base ]; # patches = [ ./fixup-gui-makefile-installdir.patch ]; # DEBUG! diff --git a/pkgs/development/libraries/gnustep-gui/fixup-all.patch b/pkgs/development/libraries/gnustep/gui/fixup-all.patch similarity index 100% rename from pkgs/development/libraries/gnustep-gui/fixup-all.patch rename to pkgs/development/libraries/gnustep/gui/fixup-all.patch diff --git a/pkgs/development/libraries/gnustep-gui/fixup-gui-makefile-installdir.patch b/pkgs/development/libraries/gnustep/gui/fixup-gui-makefile-installdir.patch similarity index 100% rename from pkgs/development/libraries/gnustep-gui/fixup-gui-makefile-installdir.patch rename to pkgs/development/libraries/gnustep/gui/fixup-gui-makefile-installdir.patch diff --git a/pkgs/development/libraries/gnustep-gui/fixup-gui-textconverters-preamble.patch b/pkgs/development/libraries/gnustep/gui/fixup-gui-textconverters-preamble.patch similarity index 100% rename from pkgs/development/libraries/gnustep-gui/fixup-gui-textconverters-preamble.patch rename to pkgs/development/libraries/gnustep/gui/fixup-gui-textconverters-preamble.patch diff --git a/pkgs/development/libraries/gnustep-gui/fixup-gui-tools-preamble.patch b/pkgs/development/libraries/gnustep/gui/fixup-gui-tools-preamble.patch similarity index 100% rename from pkgs/development/libraries/gnustep-gui/fixup-gui-tools-preamble.patch rename to pkgs/development/libraries/gnustep/gui/fixup-gui-tools-preamble.patch diff --git a/pkgs/applications/misc/gworkspace/default.nix b/pkgs/development/libraries/gnustep/gworkspace/default.nix similarity index 86% rename from pkgs/applications/misc/gworkspace/default.nix rename to pkgs/development/libraries/gnustep/gworkspace/default.nix index e59cde7e22e..538a34461a8 100644 --- a/pkgs/applications/misc/gworkspace/default.nix +++ b/pkgs/development/libraries/gnustep/gworkspace/default.nix @@ -1,4 +1,4 @@ -{ gnustep_back, gnustep_base, gnustep_gui, gsmakeDerivation +{ back, base, gui, gsmakeDerivation , fetchurl , sqlite , stdenv @@ -16,7 +16,7 @@ gsmakeDerivation { # additional dependencies: # - PDFKit framework from http://gap.nongnu.org/ # - TODO: to --enable-gwmetadata, need libDBKit as well as sqlite! - buildInputs = [ gnustep_back gnustep_base gnustep_gui system_preferences ]; + buildInputs = [ back base gui system_preferences ]; # propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui system_preferences ]; configureFlags = [ "--with-inotify" ]; meta = { diff --git a/pkgs/development/libraries/libobjc2/default.nix b/pkgs/development/libraries/gnustep/libobjc2/default.nix similarity index 100% rename from pkgs/development/libraries/libobjc2/default.nix rename to pkgs/development/libraries/gnustep/libobjc2/default.nix diff --git a/pkgs/development/libraries/libobjc2/removeCXXtests.patch b/pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch similarity index 100% rename from pkgs/development/libraries/libobjc2/removeCXXtests.patch rename to pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch diff --git a/pkgs/development/tools/build-managers/gnustep-make/GNUstep.conf b/pkgs/development/libraries/gnustep/make/GNUstep.conf similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/GNUstep.conf rename to pkgs/development/libraries/gnustep/make/GNUstep.conf diff --git a/pkgs/development/tools/build-managers/gnustep-make/builder.sh b/pkgs/development/libraries/gnustep/make/builder.sh similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/builder.sh rename to pkgs/development/libraries/gnustep/make/builder.sh diff --git a/pkgs/development/tools/build-managers/gnustep-make/default.nix b/pkgs/development/libraries/gnustep/make/default.nix similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/default.nix rename to pkgs/development/libraries/gnustep/make/default.nix diff --git a/pkgs/development/tools/build-managers/gnustep-make/fixup-paths.patch b/pkgs/development/libraries/gnustep/make/fixup-paths.patch similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/fixup-paths.patch rename to pkgs/development/libraries/gnustep/make/fixup-paths.patch diff --git a/pkgs/development/tools/build-managers/gnustep-make/gs-makefiles-additional.patch b/pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/gs-makefiles-additional.patch rename to pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch diff --git a/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix b/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix new file mode 100644 index 00000000000..51e26f3a694 --- /dev/null +++ b/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix @@ -0,0 +1,11 @@ +{ stdenv, lib, libobjc2, clang, make, makeWrapper, which }: +{ buildInputs ? [] +, ...} @ args: +stdenv.mkDerivation (args // { + buildInputs = [ makeWrapper make which ] ++ buildInputs; + + builder = ./builder.sh; + setupHook = ./setup-hook.sh; + + GNUSTEP_MAKEFILES = "${make}/share/GNUstep/Makefiles"; +}) diff --git a/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh b/pkgs/development/libraries/gnustep/make/setup-hook.sh similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh rename to pkgs/development/libraries/gnustep/make/setup-hook.sh diff --git a/pkgs/development/tools/build-managers/gnustep-make/wrapper.sh b/pkgs/development/libraries/gnustep/make/wrapper.sh similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/wrapper.sh rename to pkgs/development/libraries/gnustep/make/wrapper.sh diff --git a/pkgs/applications/editors/projectcenter/default.nix b/pkgs/development/libraries/gnustep/projectcenter/default.nix similarity index 82% rename from pkgs/applications/editors/projectcenter/default.nix rename to pkgs/development/libraries/gnustep/projectcenter/default.nix index ccb885f7477..0e0237c0db0 100644 --- a/pkgs/applications/editors/projectcenter/default.nix +++ b/pkgs/development/libraries/gnustep/projectcenter/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl -, gnustep_base, gnustep_back, gsmakeDerivation, gnustep_gui, gorm +, base, back, gsmakeDerivation, gui, gorm , gnumake, gdb }: let @@ -15,8 +15,7 @@ gsmakeDerivation { # NOTE: need a patch for ProjectCenter to help it locate some necessary tools: # 1. Framework/PCProjectLauncher.m, locate gdb (say among NIX_GNUSTEP_SYSTEM_TOOLS) # 2. Framework/PCProjectBuilder.m, locate gmake (similar) - buildInputs = [ gnustep_base gnustep_back gnustep_gui ]; - propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui gnumake gdb gorm ]; + propagatedBuildInputs = [ base back gui gnumake gdb gorm ]; meta = { description = "ProjectCenter is GNUstep's integrated development environment (IDE) and allows a rapid development and easy managment of ProjectCenter running on GNUstep applications, tools and frameworks."; @@ -28,4 +27,4 @@ gsmakeDerivation { maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; platforms = stdenv.lib.platforms.linux; }; -} \ No newline at end of file +} diff --git a/pkgs/applications/editors/projectcenter/fixup-preamble.patch b/pkgs/development/libraries/gnustep/projectcenter/fixup-preamble.patch similarity index 100% rename from pkgs/applications/editors/projectcenter/fixup-preamble.patch rename to pkgs/development/libraries/gnustep/projectcenter/fixup-preamble.patch diff --git a/pkgs/applications/misc/systempreferences/default.nix b/pkgs/development/libraries/gnustep/systempreferences/default.nix similarity index 87% rename from pkgs/applications/misc/systempreferences/default.nix rename to pkgs/development/libraries/gnustep/systempreferences/default.nix index 2dffdfe3df5..90f91234b62 100644 --- a/pkgs/applications/misc/systempreferences/default.nix +++ b/pkgs/development/libraries/gnustep/systempreferences/default.nix @@ -1,4 +1,4 @@ -{ gnustep_back, gnustep_base, gnustep_gui, gsmakeDerivation +{ back, base, gui, gsmakeDerivation , fetchurl , stdenv }: @@ -12,7 +12,7 @@ gsmakeDerivation { sha256 = "1q68bs8rlq0dxkar01qs5wfyas4iivddnama371jd7ll6cxzmpy7"; }; # GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; - buildInputs = [ gnustep_back gnustep_base gnustep_gui ]; + buildInputs = [ back base gui ]; # propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui ]; meta = { description = "System Preferences allows to manage the settings of many aspects of the GNUstep environment and its applications"; diff --git a/pkgs/development/libraries/gnustep/xcode/default.nix b/pkgs/development/libraries/gnustep/xcode/default.nix new file mode 100644 index 00000000000..e709f8b453c --- /dev/null +++ b/pkgs/development/libraries/gnustep/xcode/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchFromGitHub, make, libobjc2, base }: + +stdenv.mkDerivation rec { + name = "xcode-${version}"; + version = "1.0"; + + makeFlags = "messages=yes"; + + installFlags = "DESTDIR=$(out)"; + + buildInputs = [ make libobjc2 base ]; + + src = fetchFromGitHub { + owner = "gnustep"; + repo = "xcode"; + rev = "cc5016794e44f9998674120a5e4625aa09ca455a"; + sha256 = "85420f3f61091b2e4548cf5e99d886cb9c72cf07b8b9fae3eebc87e7b6b7e54a"; + }; +} diff --git a/pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix b/pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix deleted file mode 100644 index 200648d621e..00000000000 --- a/pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ stdenv, lib, libobjc2, clang, gnustep_make, makeWrapper, which }: -{ buildInputs ? [] -, ...} @ args: -stdenv.mkDerivation (args // { - buildInputs = [ makeWrapper gnustep_make which ] ++ buildInputs; - - builder = ./builder.sh; - setupHook = ./setup-hook.sh; - - GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; -}) diff --git a/pkgs/development/tools/build-managers/gnustep/make/default.nix b/pkgs/development/tools/build-managers/gnustep/make/default.nix deleted file mode 100644 index 5baa37b93a4..00000000000 --- a/pkgs/development/tools/build-managers/gnustep/make/default.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ stdenv, fetchurl }: - -let version = "2.6.7"; in -stdenv.mkDerivation rec { - name = "gnustep-make-${version}"; - - src = fetchurl { - url = "http://ftpmain.gnustep.org/pub/gnustep/core/${name}.tar.gz"; - sha256 = "1r2is23xdg4qirckb6bd4lynfwnnw5d9522wib3ndk1xgirmfaqi"; - }; - - patchPhase = '' - substituteInPlace GNUmakefile.in \ - --replace which type \ - --replace 'tooldir = $(DESTDIR)' 'tooldir = ' \ - --replace 'makedir = $(DESTDIR)' 'makedir = ' \ - --replace 'mandir = $(DESTDIR)' 'mandir = ' - - substituteInPlace FilesystemLayouts/apple \ - --replace /usr/local "" - - substituteInPlace configure \ - --replace /Library/GNUstep "$out" - ''; - - installFlags = "DESTDIR=$(out)"; - - postInstall = '' - mkdir -p $out/nix-support - cat >$out/nix-support/setup-hook < Date: Wed, 29 Jun 2016 20:05:48 +0000 Subject: [PATCH 13/23] gnustep: provide default meta Meta data like maintainers, license, and homepage is shared throughout the "gnustep" project. Everything going through "gsmakeDerivation" now shares overridable metadata. --- pkgs/development/libraries/gnustep/back/default.nix | 8 -------- pkgs/development/libraries/gnustep/base/default.nix | 8 -------- pkgs/development/libraries/gnustep/gorm/default.nix | 10 +--------- pkgs/development/libraries/gnustep/gui/default.nix | 12 +----------- .../libraries/gnustep/gworkspace/default.nix | 7 ------- .../libraries/gnustep/libobjc2/default.nix | 11 ++++------- pkgs/development/libraries/gnustep/make/default.nix | 2 +- .../libraries/gnustep/make/gsmakeDerivation.nix | 12 ++++++++++-- .../libraries/gnustep/projectcenter/default.nix | 9 +-------- .../libraries/gnustep/systempreferences/default.nix | 12 +----------- pkgs/development/libraries/gnustep/xcode/default.nix | 6 +++--- 11 files changed, 22 insertions(+), 75 deletions(-) diff --git a/pkgs/development/libraries/gnustep/back/default.nix b/pkgs/development/libraries/gnustep/back/default.nix index 9bad56a747a..ba97a6b3d20 100644 --- a/pkgs/development/libraries/gnustep/back/default.nix +++ b/pkgs/development/libraries/gnustep/back/default.nix @@ -6,7 +6,6 @@ , x11 , freetype , pkgconfig -, stdenv }: let version = "0.24.0"; @@ -20,12 +19,5 @@ gsmakeDerivation { buildInputs = [ cairo base gui freetype pkgconfig x11 ]; meta = { description = "GNUstep-back is a generic backend for GNUstep."; - - homepage = http://gnustep.org/; - - license = stdenv.lib.licenses.lgpl2Plus; - - maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep/base/default.nix b/pkgs/development/libraries/gnustep/base/default.nix index ae90aac6e23..150200abb6c 100644 --- a/pkgs/development/libraries/gnustep/base/default.nix +++ b/pkgs/development/libraries/gnustep/base/default.nix @@ -9,7 +9,6 @@ , libobjc2, libgcrypt , icu , pkgconfig, portaudio -, stdenv }: let version = "1.24.7"; @@ -35,12 +34,5 @@ gsmakeDerivation { patches = [ ./fixup-paths.patch ]; meta = { description = "GNUstep-base is an implementation of AppKit and Foundation libraries of OPENSTEP and Cocoa."; - - homepage = http://gnustep.org/; - - license = stdenv.lib.licenses.lgpl2Plus; - - maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep/gorm/default.nix b/pkgs/development/libraries/gnustep/gorm/default.nix index 1b4e0464fb0..b655bd5b598 100644 --- a/pkgs/development/libraries/gnustep/gorm/default.nix +++ b/pkgs/development/libraries/gnustep/gorm/default.nix @@ -1,5 +1,4 @@ -{ stdenv, fetchurl, base, back, gsmakeDerivation, gui -}: +{ fetchurl, base, back, gsmakeDerivation, gui }: let version = "1.2.18"; in @@ -16,12 +15,5 @@ gsmakeDerivation { meta = { description = "Gorm stands for Graphical Object Relationship Modeller and is an easy-to-use interface designer for GNUstep"; - - homepage = http://www.gnustep.org/experience/Gorm.html; - - license = stdenv.lib.licenses.lgpl2Plus; - - maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep/gui/default.nix b/pkgs/development/libraries/gnustep/gui/default.nix index 9fee627b19a..5859c42fafe 100644 --- a/pkgs/development/libraries/gnustep/gui/default.nix +++ b/pkgs/development/libraries/gnustep/gui/default.nix @@ -1,7 +1,4 @@ -{ gsmakeDerivation -, fetchurl -, base -, stdenv }: +{ gsmakeDerivation, fetchurl, base }: let version = "0.24.0"; in @@ -18,12 +15,5 @@ gsmakeDerivation { patches = [ ./fixup-all.patch ]; meta = { description = "GNUstep-gui is a GUI class library of GNUstep."; - - homepage = http://gnustep.org/; - - license = stdenv.lib.licenses.lgpl2Plus; - - maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep/gworkspace/default.nix b/pkgs/development/libraries/gnustep/gworkspace/default.nix index 538a34461a8..5bf49e6a22a 100644 --- a/pkgs/development/libraries/gnustep/gworkspace/default.nix +++ b/pkgs/development/libraries/gnustep/gworkspace/default.nix @@ -21,12 +21,5 @@ gsmakeDerivation { configureFlags = [ "--with-inotify" ]; meta = { description = "GWorkspace is a workspace manager for GNUstep"; - - homepage = http://www.gnustep.org/experience/GWorkspace.html; - - license = stdenv.lib.licenses.lgpl2Plus; - - maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep/libobjc2/default.nix b/pkgs/development/libraries/gnustep/libobjc2/default.nix index a3f45b5cc23..3e3ebe7a2df 100644 --- a/pkgs/development/libraries/gnustep/libobjc2/default.nix +++ b/pkgs/development/libraries/gnustep/libobjc2/default.nix @@ -1,7 +1,4 @@ -{ stdenv, fetchurl, - clang, - cmake -}: +{ stdenv, fetchurl, cmake }: let version = "1.7"; @@ -12,7 +9,7 @@ stdenv.mkDerivation rec { url = "http://download.gna.org/gnustep/libobjc2-1.7.tar.bz2"; sha256 = "1h9wkm1x9wrzd3alm99bx710lrs9nb8h2x5jpxbqwgbgzzv4l6rs"; }; - buildInputs = [ clang cmake ]; + buildInputs = [ cmake ]; # since we don't support Objective-C++, we don't interoperate # with C++ either @@ -43,7 +40,7 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.mit; - maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + maintainers = with stdenv.lib.maintainers; [ ashalkhakov matthewbauer ]; platforms = stdenv.lib.platforms.all; }; -} \ No newline at end of file +} diff --git a/pkgs/development/libraries/gnustep/make/default.nix b/pkgs/development/libraries/gnustep/make/default.nix index 5b193293276..beabe8865e3 100644 --- a/pkgs/development/libraries/gnustep/make/default.nix +++ b/pkgs/development/libraries/gnustep/make/default.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.lgpl2Plus; - maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; + maintainers = with stdenv.lib.maintainers; [ ashalkhakov matthewbauer ]; platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix b/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix index 51e26f3a694..a477bc2fb3a 100644 --- a/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix +++ b/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix @@ -1,6 +1,5 @@ { stdenv, lib, libobjc2, clang, make, makeWrapper, which }: -{ buildInputs ? [] -, ...} @ args: +{ buildInputs ? [], ...} @ args: stdenv.mkDerivation (args // { buildInputs = [ makeWrapper make which ] ++ buildInputs; @@ -8,4 +7,13 @@ stdenv.mkDerivation (args // { setupHook = ./setup-hook.sh; GNUSTEP_MAKEFILES = "${make}/share/GNUstep/Makefiles"; + + meta = { + homepage = http://gnustep.org/; + + license = stdenv.lib.licenses.lgpl2Plus; + + maintainers = with stdenv.lib.maintainers; [ ashalkhakov matthewbauer ]; + platforms = stdenv.lib.platforms.linux; + } // (if builtins.hasAttr "meta" args then args.meta else {}); }) diff --git a/pkgs/development/libraries/gnustep/projectcenter/default.nix b/pkgs/development/libraries/gnustep/projectcenter/default.nix index 0e0237c0db0..5c54accb6cf 100644 --- a/pkgs/development/libraries/gnustep/projectcenter/default.nix +++ b/pkgs/development/libraries/gnustep/projectcenter/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl +{ fetchurl , base, back, gsmakeDerivation, gui, gorm , gnumake, gdb }: @@ -19,12 +19,5 @@ gsmakeDerivation { meta = { description = "ProjectCenter is GNUstep's integrated development environment (IDE) and allows a rapid development and easy managment of ProjectCenter running on GNUstep applications, tools and frameworks."; - - homepage = http://www.gnustep.org/experience/ProjectCenter.html; - - license = stdenv.lib.licenses.lgpl2Plus; - - maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep/systempreferences/default.nix b/pkgs/development/libraries/gnustep/systempreferences/default.nix index 90f91234b62..bf2ed64a85c 100644 --- a/pkgs/development/libraries/gnustep/systempreferences/default.nix +++ b/pkgs/development/libraries/gnustep/systempreferences/default.nix @@ -1,7 +1,4 @@ -{ back, base, gui, gsmakeDerivation -, fetchurl -, stdenv -}: +{ back, base, gui, gsmakeDerivation, fetchurl }: let version = "1.1.0"; in @@ -16,12 +13,5 @@ gsmakeDerivation { # propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui ]; meta = { description = "System Preferences allows to manage the settings of many aspects of the GNUstep environment and its applications"; - - homepage = http://www.gnustep.org/experience/systempreferences.html; - - license = stdenv.lib.licenses.lgpl2Plus; - - maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; - platforms = stdenv.lib.platforms.linux; }; } diff --git a/pkgs/development/libraries/gnustep/xcode/default.nix b/pkgs/development/libraries/gnustep/xcode/default.nix index e709f8b453c..b576f86705e 100644 --- a/pkgs/development/libraries/gnustep/xcode/default.nix +++ b/pkgs/development/libraries/gnustep/xcode/default.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchFromGitHub, make, libobjc2, base }: +{ gsmakeDerivation, fetchFromGitHub, make, libobjc2, base }: -stdenv.mkDerivation rec { +gsmakeDerivation rec { name = "xcode-${version}"; version = "1.0"; @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { installFlags = "DESTDIR=$(out)"; - buildInputs = [ make libobjc2 base ]; + buildInputs = [ libobjc2 base ]; src = fetchFromGitHub { owner = "gnustep"; From 0e58029488824c69e5674949fad7fd43db9fa28a Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Wed, 6 Jul 2016 20:09:24 +0000 Subject: [PATCH 14/23] gnustep: update to latest upstream versions back, base, gorm, gui, gworkspace, and make were updated. xcode was removed because it's not building correctly. --- .../libraries/gnustep/back/default.nix | 7 +++---- .../libraries/gnustep/base/default.nix | 6 +++--- .../development/libraries/gnustep/default.nix | 1 - .../libraries/gnustep/gorm/default.nix | 6 ++---- .../libraries/gnustep/gui/default.nix | 9 +++------ .../libraries/gnustep/gworkspace/default.nix | 5 ++--- .../libraries/gnustep/libobjc2/default.nix | 16 ---------------- .../libraries/gnustep/make/default.nix | 6 +++--- .../libraries/gnustep/xcode/default.nix | 19 ------------------- 9 files changed, 16 insertions(+), 59 deletions(-) delete mode 100644 pkgs/development/libraries/gnustep/xcode/default.nix diff --git a/pkgs/development/libraries/gnustep/back/default.nix b/pkgs/development/libraries/gnustep/back/default.nix index ba97a6b3d20..c6915279aa0 100644 --- a/pkgs/development/libraries/gnustep/back/default.nix +++ b/pkgs/development/libraries/gnustep/back/default.nix @@ -2,19 +2,18 @@ , cairo , fetchurl , base, gui -, xlibs , x11 , freetype , pkgconfig }: let - version = "0.24.0"; + version = "0.25.0"; in gsmakeDerivation { name = "gnustep-back-${version}"; src = fetchurl { - url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-0.24.0.tar.gz"; - sha256 = "0qixbilkkrqxrhhj9hnp7ygd5gs23b3qbbgk3gaxj73d0xqfvhjz"; + url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-${version}.tar.gz"; + sha256 = "14gs1b32ahnihd7mwpjrws2b8hl11rl1wl24a7651d3z2l7f6xj2"; }; buildInputs = [ cairo base gui freetype pkgconfig x11 ]; meta = { diff --git a/pkgs/development/libraries/gnustep/base/default.nix b/pkgs/development/libraries/gnustep/base/default.nix index 150200abb6c..7f3c54fbf51 100644 --- a/pkgs/development/libraries/gnustep/base/default.nix +++ b/pkgs/development/libraries/gnustep/base/default.nix @@ -11,13 +11,13 @@ , pkgconfig, portaudio }: let - version = "1.24.7"; + version = "1.24.9"; in gsmakeDerivation { name = "gnustep-base-${version}"; src = fetchurl { - url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-1.24.7.tar.gz"; - sha256 = "0qhphw61ksyzf04a4apmvx8000alws6d92x8ila1mi5bapcpv41s"; + url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-${version}.tar.gz"; + sha256 = "1vvjlbqmlwr82b4pf8c62rxjgz475bmg0x2yd0bbkia6yvwhk585"; }; nativeBuildInputs = [ pkgconfig ]; propagatedBuildInputs = [ diff --git a/pkgs/development/libraries/gnustep/default.nix b/pkgs/development/libraries/gnustep/default.nix index 77ceec3f96d..2eb7a623442 100644 --- a/pkgs/development/libraries/gnustep/default.nix +++ b/pkgs/development/libraries/gnustep/default.nix @@ -12,7 +12,6 @@ let system_preferences = callPackage ./systempreferences {}; libobjc2 = callPackage ./libobjc2 {}; make = callPackage ./make {}; - xcode = callPackage ./xcode {}; back = callPackage ./back {}; base = callPackage ./base { giflib = pkgs.giflib_4_1; }; gui = callPackage ./gui {}; diff --git a/pkgs/development/libraries/gnustep/gorm/default.nix b/pkgs/development/libraries/gnustep/gorm/default.nix index b655bd5b598..65101867d69 100644 --- a/pkgs/development/libraries/gnustep/gorm/default.nix +++ b/pkgs/development/libraries/gnustep/gorm/default.nix @@ -1,17 +1,15 @@ { fetchurl, base, back, gsmakeDerivation, gui }: let - version = "1.2.18"; + version = "1.2.22"; in gsmakeDerivation { name = "gorm-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz"; - sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq"; + sha256 = "1mq5n65xd9bc4kppx19iijsgpz4crvhg7bfwbi9k78j159vclnmi"; }; -# patches = [ ./fix-gs-makefiles.patch ]; buildInputs = [ base back gui ]; -# propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui ]; meta = { description = "Gorm stands for Graphical Object Relationship Modeller and is an easy-to-use interface designer for GNUstep"; diff --git a/pkgs/development/libraries/gnustep/gui/default.nix b/pkgs/development/libraries/gnustep/gui/default.nix index 5859c42fafe..6463297b062 100644 --- a/pkgs/development/libraries/gnustep/gui/default.nix +++ b/pkgs/development/libraries/gnustep/gui/default.nix @@ -1,17 +1,14 @@ { gsmakeDerivation, fetchurl, base }: let - version = "0.24.0"; + version = "0.25.0"; in gsmakeDerivation { name = "gnustep-gui-${version}"; src = fetchurl { - url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-0.24.0.tar.gz"; - sha256 = "0d6jzfcyacxjzrr2p398ysvs1akv1fcmngfzxxbfxa947miydjxg"; + url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-${version}.tar.gz"; + sha256 = "10jf3xir59qzbhhl0bvs9wdw40fsmvv6mdv5akdkia1rnck60xf5"; }; buildInputs = [ base ]; -# propagatedBuildInputs = [ gnustep_base ]; -# patches = [ ./fixup-gui-makefile-installdir.patch ]; - # DEBUG! patches = [ ./fixup-all.patch ]; meta = { description = "GNUstep-gui is a GUI class library of GNUstep."; diff --git a/pkgs/development/libraries/gnustep/gworkspace/default.nix b/pkgs/development/libraries/gnustep/gworkspace/default.nix index 5bf49e6a22a..7aa61c67f84 100644 --- a/pkgs/development/libraries/gnustep/gworkspace/default.nix +++ b/pkgs/development/libraries/gnustep/gworkspace/default.nix @@ -5,19 +5,18 @@ , system_preferences }: let - version = "0.9.2"; + version = "0.9.3"; in gsmakeDerivation { name = "gworkspace-${version}"; src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/usr-apps/gworkspace-${version}.tar.gz"; - sha256 = "1yzlka2dl1gb353wf9kw6l26sdihdhgwvdfg5waqwdfl7ycfyfaj"; + sha256 = "0jchqwb0dj522j98jqlqlib44jppax39zx2zqyzdwiz4qjl470r3"; }; # additional dependencies: # - PDFKit framework from http://gap.nongnu.org/ # - TODO: to --enable-gwmetadata, need libDBKit as well as sqlite! buildInputs = [ back base gui system_preferences ]; -# propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui system_preferences ]; configureFlags = [ "--with-inotify" ]; meta = { description = "GWorkspace is a workspace manager for GNUstep"; diff --git a/pkgs/development/libraries/gnustep/libobjc2/default.nix b/pkgs/development/libraries/gnustep/libobjc2/default.nix index 3e3ebe7a2df..26ea8c0bc0b 100644 --- a/pkgs/development/libraries/gnustep/libobjc2/default.nix +++ b/pkgs/development/libraries/gnustep/libobjc2/default.nix @@ -15,23 +15,7 @@ stdenv.mkDerivation rec { # 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"; diff --git a/pkgs/development/libraries/gnustep/make/default.nix b/pkgs/development/libraries/gnustep/make/default.nix index beabe8865e3..953aa20e066 100644 --- a/pkgs/development/libraries/gnustep/make/default.nix +++ b/pkgs/development/libraries/gnustep/make/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, clang, which, libobjc2 }: let - version = "2.6.6"; + version = "2.6.8"; in stdenv.mkDerivation rec { name = "gnustep-make-${version}"; src = fetchurl { - url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-make-2.6.6.tar.gz"; - sha256 = "07cqr8x17bia9w6clbmiv7ay6r9nplrjz2cyzinv4w7zfpc19vxw"; + url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-make-${version}.tar.gz"; + sha256 = "0r00439f7vrggdwv60n8p626gnyymhq968i5x9ad2i4v6g8x4gk0"; }; configureFlags = "--with-installation-domain=SYSTEM"; buildInputs = [ clang which libobjc2 ]; diff --git a/pkgs/development/libraries/gnustep/xcode/default.nix b/pkgs/development/libraries/gnustep/xcode/default.nix deleted file mode 100644 index b576f86705e..00000000000 --- a/pkgs/development/libraries/gnustep/xcode/default.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ gsmakeDerivation, fetchFromGitHub, make, libobjc2, base }: - -gsmakeDerivation rec { - name = "xcode-${version}"; - version = "1.0"; - - makeFlags = "messages=yes"; - - installFlags = "DESTDIR=$(out)"; - - buildInputs = [ libobjc2 base ]; - - src = fetchFromGitHub { - owner = "gnustep"; - repo = "xcode"; - rev = "cc5016794e44f9998674120a5e4625aa09ca455a"; - sha256 = "85420f3f61091b2e4548cf5e99d886cb9c72cf07b8b9fae3eebc87e7b6b7e54a"; - }; -} From 4ebfc313883a53822166e409b34f45bf66db7348 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Wed, 6 Jul 2016 20:30:30 +0000 Subject: [PATCH 15/23] gnustep: add alias for old gnustep-make --- pkgs/top-level/aliases.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index a8e18f2bb46..fc58d19aaef 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -49,6 +49,7 @@ doNotDisplayTwice rec { git-hub = gitAndTools.git-hub; # added 2016-04-29 grantlee5 = qt5.grantlee; # added 2015-12-19 gupnptools = gupnp-tools; # added 2015-12-19 + gnustep-make = gnustep.make; # added 2016-7-6 htmlTidy = html-tidy; # added 2014-12-06 inherit (haskell.compiler) jhc uhc; # 2015-05-15 inotifyTools = inotify-tools; From 387d5e07fd0c965945140641599dfdafefe249ad Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Wed, 6 Jul 2016 18:18:13 -0500 Subject: [PATCH 16/23] gnustep: remove unneeded lines in patches There were alot of unnecessary "Only In" lines that were left in the patch files. This should remove all of them. --- .../libraries/gnustep/back/fixup-tools.patch | 1 - .../libraries/gnustep/base/fixup-paths.patch | 11 - .../gnustep/gorm/fix-gs-makefiles.patch | 1 - .../libraries/gnustep/gui/fixup-all.patch | 430 ------------------ .../gnustep/libobjc2/removeCXXtests.patch | 2 - .../libraries/gnustep/make/fixup-paths.patch | 7 - .../make/gs-makefiles-additional.patch | 9 - 7 files changed, 461 deletions(-) diff --git a/pkgs/development/libraries/gnustep/back/fixup-tools.patch b/pkgs/development/libraries/gnustep/back/fixup-tools.patch index edbdcaa7d17..a47de5478e3 100644 --- a/pkgs/development/libraries/gnustep/back/fixup-tools.patch +++ b/pkgs/development/libraries/gnustep/back/fixup-tools.patch @@ -12,4 +12,3 @@ diff -c gnustep-back-0.24.0/Tools/GNUmakefile.preamble gnustep-back-0.24.0.patch # Flags dealing with installing and uninstalling # -Diff finished. Mon Dec 1 16:41:02 2014 diff --git a/pkgs/development/libraries/gnustep/base/fixup-paths.patch b/pkgs/development/libraries/gnustep/base/fixup-paths.patch index 9de610454c8..fa28412dbf6 100644 --- a/pkgs/development/libraries/gnustep/base/fixup-paths.patch +++ b/pkgs/development/libraries/gnustep/base/fixup-paths.patch @@ -1,8 +1,3 @@ -Only in gnustep-base-1.24.7: base.make -Only in gnustep-base-1.24.7: config.mak -Only in gnustep-base-1.24.7: config.status -Only in gnustep-base-1.24.7/Headers/GNUstepBase: config.h -Only in gnustep-base-1.24.7/Headers/GNUstepBase: GSConfig.h diff -r -u gnustep-base-1.24.7/Makefile.postamble gnustep-base-1.24.7.patched/Makefile.postamble --- gnustep-base-1.24.7/Makefile.postamble 2011-07-15 19:53:45.000000000 +0600 +++ gnustep-base-1.24.7.patched/Makefile.postamble 2014-11-29 22:25:07.000000000 +0600 @@ -33,10 +28,6 @@ diff -r -u gnustep-base-1.24.7/Makefile.postamble gnustep-base-1.24.7.patched/Ma # Things to do before cleaning # before-clean:: -Only in gnustep-base-1.24.7.patched: Makefile.postamble~ -Only in gnustep-base-1.24.7: result -Only in gnustep-base-1.24.7.patched/Source: .#dfdf -Only in gnustep-base-1.24.7.patched/Source: #dfdf# diff -r -u gnustep-base-1.24.7/Source/NSPathUtilities.m gnustep-base-1.24.7.patched/Source/NSPathUtilities.m --- gnustep-base-1.24.7/Source/NSPathUtilities.m 2014-01-14 13:21:10.000000000 +0600 +++ gnustep-base-1.24.7.patched/Source/NSPathUtilities.m 2015-01-25 13:59:37.000000000 +0600 @@ -380,5 +371,3 @@ diff -r -u gnustep-base-1.24.7/Source/NSPathUtilities.m gnustep-base-1.24.7.patc count = [paths count]; for (i = 0; i < count; i++) -Only in gnustep-base-1.24.7.patched/Source: NSPathUtilities.m~ -Only in gnustep-base-1.24.7.patched/Tests/base/NSInvocationOperation: GNUmakefile diff --git a/pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch b/pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch index cf395d32c63..c4b3d1e1d81 100644 --- a/pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch +++ b/pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch @@ -25,4 +25,3 @@ diff -ru gorm-1.2.20/GNUmakefile gorm-1.2.20.patched/GNUmakefile PACKAGE_NAME = gorm export PACKAGE_NAME include $(GNUSTEP_MAKEFILES)/common.make -Only in gorm-1.2.20.patched/: GNUmakefile~ diff --git a/pkgs/development/libraries/gnustep/gui/fixup-all.patch b/pkgs/development/libraries/gnustep/gui/fixup-all.patch index abe0331b963..4b412db409a 100644 --- a/pkgs/development/libraries/gnustep/gui/fixup-all.patch +++ b/pkgs/development/libraries/gnustep/gui/fixup-all.patch @@ -27,430 +27,6 @@ diff -r -u gnustep-gui-0.24.0/GNUmakefile.postamble gnustep-gui-0.24.0.patched/G # Things to do after uninstalling # after-uninstall:: -Only in gnustep-gui-0.24.0.patched: GNUmakefile.postamble~ -Only in gnustep-gui-0.24.0.patched/Model: libgmodel.bundle -Only in gnustep-gui-0.24.0.patched/Model: obj -Only in gnustep-gui-0.24.0.patched/Source: Info-gnustep.plist -Only in gnustep-gui-0.24.0.patched/Source: NSApplication.m~ -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: externs.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: externs.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: Functions.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: Functions.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSAnimator.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSAnimator.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSAutocompleteWindow.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSAutocompleteWindow.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSCharacterPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSCharacterPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSDisplayServer.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSDisplayServer.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSDragView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSDragView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSEPSPrintOperation.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSEPSPrintOperation.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSFontInfo.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSFontInfo.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGModelLoader.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGModelLoader.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGormLoader.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGormLoader.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGormLoading.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSGormLoading.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHbox.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHbox.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHelpAttachment.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHelpAttachment.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHelpManagerPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHelpManagerPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHorizontalTypesetter.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSHorizontalTypesetter.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSIconManager.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSIconManager.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSImageMagickImageRep.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSImageMagickImageRep.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSInfoPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSInfoPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSKeyBindingAction.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSKeyBindingAction.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSKeyBindingTable.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSKeyBindingTable.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSLayoutManager.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSLayoutManager.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSMemoryPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSMemoryPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSModelLoaderFactory.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSModelLoaderFactory.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSNibLoader.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSNibLoader.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSNibLoading.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSNibLoading.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPDFPrintOperation.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPDFPrintOperation.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPrinting.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPrinting.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPrintOperation.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSPrintOperation.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSServicesManager.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSServicesManager.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSSlideView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSSlideView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSStandardWindowDecorationView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSStandardWindowDecorationView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTable.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTable.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTextFinder.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTextFinder.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTextStorage.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTextStorage.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeDrawing.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeDrawing.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeInspector.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeInspector.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTheme.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeMenu.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeMenu.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTheme.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeOpenSavePanels.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeOpenSavePanels.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemePanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemePanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeTools.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSThemeTools.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTitleView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTitleView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolbarCustomizationPalette.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolbarCustomizationPalette.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolbarView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolbarView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolTips.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSToolTips.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTrackingRect.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTrackingRect.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTypesetter.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSTypesetter.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSVbox.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSVbox.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSWindowDecorationView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSWindowDecorationView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSXibLoader.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSXibLoader.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSXibLoading.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: GSXibLoading.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: linking.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: linking.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSActionCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSActionCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAffineTransform.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAffineTransform.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAlert.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAlert.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAnimation.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAnimation.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSApplication.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSApplication.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSArrayController.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSArrayController.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAttributedString.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSAttributedString.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBezierPath.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBezierPath.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+GIF.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+GIF.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+ICNS.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+ICNS.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+JPEG.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+JPEG.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+PNG.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+PNG.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+PNM.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBitmapImageRep+PNM.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBox.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBox.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBrowserCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBrowserCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBrowser.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBrowser.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBundleAdditions.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSBundleAdditions.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSButtonCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSButtonCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSButton.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSButton.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCachedImageRep.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCachedImageRep.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSClipView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSClipView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCollectionViewItem.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCollectionViewItem.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCollectionView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCollectionView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorList.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorList.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColor.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColor.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorPicker.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorPicker.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorSpace.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorSpace.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorWell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSColorWell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSComboBoxCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSComboBoxCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSComboBox.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSComboBox.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSController.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSController.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSControl.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSControl.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCursor.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCursor.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCustomImageRep.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSCustomImageRep.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLinkManager.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLinkManager.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLink.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLink.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLinkPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDataLinkPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDocumentController.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDocumentController.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDocument.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDocument.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDrawer.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSDrawer.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSEPSImageRep.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSEPSImageRep.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSEvent.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSEvent.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFileWrapper.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFileWrapper.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontDescriptor.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontDescriptor.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontManager.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontManager.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFont.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFont.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFontPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFormCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSFormCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSForm.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSForm.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGlyphGenerator.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGlyphGenerator.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGradient.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGradient.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGraphicsContext.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSGraphicsContext.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSHelpManager.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSHelpManager.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSHelpPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSHelpPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImage.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImage.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageRep.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageRep.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSImageView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInputManager.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInputManager.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInputServer.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInputServer.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInterfaceStyle.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSInterfaceStyle.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSKeyValueBinding.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSKeyValueBinding.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLayoutManager.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLayoutManager.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLevelIndicatorCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLevelIndicatorCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLevelIndicator.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSLevelIndicator.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMatrix.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMatrix.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuItemCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuItemCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuItem.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuItem.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenu.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenu.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMenuView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMovie.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMovie.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMovieView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSMovieView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibAXAttributeConnector.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibAXAttributeConnector.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibAXRelationshipConnector.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibAXRelationshipConnector.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibBindingConnector.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNibBindingConnector.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNib.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSNib.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSObjectController.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSObjectController.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLContext.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLContext.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLPixelFormat.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLPixelFormat.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenGLView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOpenPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOutlineView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSOutlineView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPageLayout.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPageLayout.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSParagraphStyle.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSParagraphStyle.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPasteboard.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPasteboard.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopover.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopover.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopUpButtonCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopUpButtonCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopUpButton.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPopUpButton.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrinter.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrinter.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintInfo.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintInfo.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintOperation.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintOperation.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintPanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSPrintPanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSProgressIndicator.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSProgressIndicator.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSResponder.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSResponder.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSRulerMarker.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSRulerMarker.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSRulerView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSRulerView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSavePanel.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSavePanel.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScreen.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScreen.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScroller.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScroller.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScrollView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSScrollView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSearchFieldCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSearchFieldCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSearchField.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSearchField.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSecureTextField.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSecureTextField.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSegmentedCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSegmentedCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSegmentedControl.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSegmentedControl.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSelection.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSelection.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSShadow.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSShadow.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSliderCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSliderCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSlider.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSlider.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSound.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSound.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSpeechSynthesizer.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSpeechSynthesizer.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSpellChecker.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSpellChecker.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSplitView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSSplitView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStatusBar.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStatusBar.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStatusItem.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStatusItem.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStepperCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStepperCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStepper.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStepper.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStringDrawing.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSStringDrawing.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableColumn.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableColumn.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableHeaderCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableHeaderCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableHeaderView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableHeaderView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTableView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTabViewItem.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTabViewItem.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTabView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTabView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextAttachment.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextAttachment.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextBlock.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextBlock.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextContainer.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextContainer.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextFieldCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextFieldCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextField.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextField.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextList.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextList.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSText.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSText.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextStorage.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextStorage.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextTableBlock.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextTableBlock.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextTable.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextTable.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextView_actions.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextView_actions.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTextView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTokenFieldCell.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTokenFieldCell.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTokenField.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTokenField.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbarItemGroup.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbarItemGroup.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbarItem.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbarItem.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbar.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSToolbar.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTrackingArea.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTrackingArea.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTreeController.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTreeController.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTreeNode.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSTreeNode.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSUserDefaultsController.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSUserDefaultsController.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSViewController.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSViewController.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSView.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSView.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWindowController.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWindowController.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWindow.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWindow.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWorkspace.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: NSWorkspace.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: tiff.m.d -Only in gnustep-gui-0.24.0.patched/Source/obj/libgnustep-gui.obj: tiff.m.o -Only in gnustep-gui-0.24.0.patched/Source/obj: libgnustep-gui.so -Only in gnustep-gui-0.24.0.patched/Source/obj: libgnustep-gui.so.0.24 -Only in gnustep-gui-0.24.0.patched/Source/obj: libgnustep-gui.so.0.24.0 diff -r -u gnustep-gui-0.24.0/TextConverters/RTF/GNUmakefile.preamble gnustep-gui-0.24.0.patched/TextConverters/RTF/GNUmakefile.preamble --- gnustep-gui-0.24.0/TextConverters/RTF/GNUmakefile.preamble 2008-06-10 10:01:49.000000000 +0600 +++ gnustep-gui-0.24.0.patched/TextConverters/RTF/GNUmakefile.preamble 2014-12-01 13:02:11.000000000 +0600 @@ -463,9 +39,6 @@ diff -r -u gnustep-gui-0.24.0/TextConverters/RTF/GNUmakefile.preamble gnustep-gu # Additional library directories the linker should search ADDITIONAL_LIB_DIRS += -L../../Source/$(GNUSTEP_OBJ_DIR) -Only in gnustep-gui-0.24.0.patched/TextConverters/RTF: GNUmakefile.preamble~ -Only in gnustep-gui-0.24.0.patched/TextConverters/RTF: obj -Only in gnustep-gui-0.24.0.patched/TextConverters/RTF: RTFConverter.bundle diff -r -u gnustep-gui-0.24.0/Tools/GNUmakefile.preamble gnustep-gui-0.24.0.patched/Tools/GNUmakefile.preamble --- gnustep-gui-0.24.0/Tools/GNUmakefile.preamble 2006-02-22 12:43:48.000000000 +0600 +++ gnustep-gui-0.24.0.patched/Tools/GNUmakefile.preamble 2014-12-01 12:52:41.000000000 +0600 @@ -481,6 +54,3 @@ diff -r -u gnustep-gui-0.24.0/Tools/GNUmakefile.preamble gnustep-gui-0.24.0.patc gcloseall_TOOL_LIBS += -lgnustep-gui $(SYSTEM_LIBS) GSspell_TOOL_LIBS += $(ADDITIONAL_DEPENDS) -Only in gnustep-gui-0.24.0.patched/Tools: GNUmakefile.preamble~ -Only in gnustep-gui-0.24.0.patched/Tools: GSspell.service -Only in gnustep-gui-0.24.0.patched/Tools: obj diff --git a/pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch b/pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch index 48c17c1d760..ad17ee403f7 100644 --- a/pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch +++ b/pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch @@ -16,5 +16,3 @@ diff -c libobjc2-1.7/Test/CMakeLists.txt libobjc2-1.7-patched/Test/CMakeLists.tx ! #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 diff --git a/pkgs/development/libraries/gnustep/make/fixup-paths.patch b/pkgs/development/libraries/gnustep/make/fixup-paths.patch index 06c237eb61c..b5eb093ad96 100644 --- a/pkgs/development/libraries/gnustep/make/fixup-paths.patch +++ b/pkgs/development/libraries/gnustep/make/fixup-paths.patch @@ -12,8 +12,6 @@ diff -r -u gnustep-make-2.6.6/common.make gnustep-make-2.6.6.patched/common.make # # Determine target specific settings -Only in gnustep-make-2.6.6.patched: common.make~ -Only in gnustep-make-2.6.6.patched: configure.ac~ diff -r -u gnustep-make-2.6.6/GNUmakefile.in gnustep-make-2.6.6.patched/GNUmakefile.in --- gnustep-make-2.6.6/GNUmakefile.in 2013-09-20 12:13:15.000000000 +0600 +++ gnustep-make-2.6.6.patched/GNUmakefile.in 2014-12-07 20:35:27.000000000 +0600 @@ -142,7 +140,6 @@ diff -r -u gnustep-make-2.6.6/GNUstep.sh.in gnustep-make-2.6.6.patched/GNUstep.s export GNUSTEP_CONFIG_FILE GNUSTEP_USER_CONFIG_FILE export GNUSTEP_USER_DEFAULTS_DIR -Only in gnustep-make-2.6.6.patched: GNUstep.sh.in~ diff -r -u gnustep-make-2.6.6/GNUstep-strict-v2.conf.in gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in --- gnustep-make-2.6.6/GNUstep-strict-v2.conf.in 2008-01-15 20:35:36.000000000 +0600 +++ gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in 2014-12-07 22:04:56.000000000 +0600 @@ -154,7 +151,6 @@ diff -r -u gnustep-make-2.6.6/GNUstep-strict-v2.conf.in gnustep-make-2.6.6.patch # This is where the user home directories are. Only used to provide # NSUserDirectory in gnustep-base. Never used anywhere else. GNUSTEP_SYSTEM_USERS_DIR=@GNUSTEP_SYSTEM_USERS_DIR@ -Only in gnustep-make-2.6.6.patched: GNUstep-strict-v2.conf.in~ diff -r -u gnustep-make-2.6.6/library-combo.make gnustep-make-2.6.6.patched/library-combo.make --- gnustep-make-2.6.6/library-combo.make 2012-02-21 19:53:02.000000000 +0600 +++ gnustep-make-2.6.6.patched/library-combo.make 2014-12-09 20:15:05.000000000 +0600 @@ -185,8 +181,6 @@ diff -r -u gnustep-make-2.6.6/library-combo.make gnustep-make-2.6.6.patched/libr # ifeq ($(GUI_LIB), nx) GUI_DEFINE = -DNeXT_GUI_LIBRARY=1 -Only in gnustep-make-2.6.6.patched: library-combo.make~ -Only in gnustep-make-2.6.6.patched: result diff -r -u gnustep-make-2.6.6/rules.make gnustep-make-2.6.6.patched/rules.make --- gnustep-make-2.6.6/rules.make 2013-07-04 16:05:44.000000000 +0600 +++ gnustep-make-2.6.6.patched/rules.make 2014-12-09 21:31:04.000000000 +0600 @@ -201,4 +195,3 @@ diff -r -u gnustep-make-2.6.6/rules.make gnustep-make-2.6.6.patched/rules.make $(GNUSTEP_MAKEFILES)/Master/*.make: ; -Only in gnustep-make-2.6.6.patched: rules.make~ diff --git a/pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch b/pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch index aeefcb53e2b..98e22f37ee7 100644 --- a/pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch +++ b/pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch @@ -12,8 +12,6 @@ diff -ru gnustep-make-2.6.6/common.make gnustep-make-2.6.6.patched/common.make # # Determine target specific settings -Only in gnustep-make-2.6.6.patched/: common.make~ -Only in gnustep-make-2.6.6.patched/: configure.ac~ diff -ru gnustep-make-2.6.6/GNUmakefile.in gnustep-make-2.6.6.patched/GNUmakefile.in --- gnustep-make-2.6.6/GNUmakefile.in 2013-09-20 12:13:15.000000000 +0600 +++ gnustep-make-2.6.6.patched/GNUmakefile.in 2014-12-07 20:35:27.000000000 +0600 @@ -62,7 +60,6 @@ diff -ru gnustep-make-2.6.6/gnustep-config.in gnustep-make-2.6.6.patched/gnustep --variable=GNUMAKE) echo "@GNUMAKE@" exit 0;; --debug-flags) @GNUMAKE@ -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-objc-flags quiet=yes debug=yes 2>/dev/null -Only in gnustep-make-2.6.6.patched/: gnustep-config.in~ diff -ru gnustep-make-2.6.6/GNUstep.csh.in gnustep-make-2.6.6.patched/GNUstep.csh.in --- gnustep-make-2.6.6/GNUstep.csh.in 2011-05-03 13:40:10.000000000 +0600 +++ gnustep-make-2.6.6.patched/GNUstep.csh.in 2014-12-09 20:14:05.000000000 +0600 @@ -77,7 +74,6 @@ diff -ru gnustep-make-2.6.6/GNUstep.csh.in gnustep-make-2.6.6.patched/GNUstep.cs if ( "${GNUSTEP_MAKE_STRICT_V2_MODE}" == "yes" ) then unsetenv GNUSTEP_USER_DIR unsetenv GNUSTEP_USER_ROOT -Only in gnustep-make-2.6.6.patched/: GNUstep.csh.in~ diff -ru gnustep-make-2.6.6/GNUstep.sh.in gnustep-make-2.6.6.patched/GNUstep.sh.in --- gnustep-make-2.6.6/GNUstep.sh.in 2012-02-21 20:21:38.000000000 +0600 +++ gnustep-make-2.6.6.patched/GNUstep.sh.in 2014-12-09 20:14:19.000000000 +0600 @@ -92,7 +88,6 @@ diff -ru gnustep-make-2.6.6/GNUstep.sh.in gnustep-make-2.6.6.patched/GNUstep.sh. if [ "$GNUSTEP_MAKE_STRICT_V2_MODE" = "yes" ]; then # Make sure this is never set in gnustep-make v2 strict mode; it -Only in gnustep-make-2.6.6.patched/: GNUstep.sh.in~ diff -ru gnustep-make-2.6.6/GNUstep-strict-v2.conf.in gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in --- gnustep-make-2.6.6/GNUstep-strict-v2.conf.in 2008-01-15 20:35:36.000000000 +0600 +++ gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in 2014-12-07 22:04:56.000000000 +0600 @@ -104,7 +99,6 @@ diff -ru gnustep-make-2.6.6/GNUstep-strict-v2.conf.in gnustep-make-2.6.6.patched # This is where the user home directories are. Only used to provide # NSUserDirectory in gnustep-base. Never used anywhere else. GNUSTEP_SYSTEM_USERS_DIR=@GNUSTEP_SYSTEM_USERS_DIR@ -Only in gnustep-make-2.6.6.patched/: GNUstep-strict-v2.conf.in~ diff -ru gnustep-make-2.6.6/library-combo.make gnustep-make-2.6.6.patched/library-combo.make --- gnustep-make-2.6.6/library-combo.make 2012-02-21 19:53:02.000000000 +0600 +++ gnustep-make-2.6.6.patched/library-combo.make 2014-12-09 20:15:05.000000000 +0600 @@ -135,8 +129,6 @@ diff -ru gnustep-make-2.6.6/library-combo.make gnustep-make-2.6.6.patched/librar # ifeq ($(GUI_LIB), nx) GUI_DEFINE = -DNeXT_GUI_LIBRARY=1 -Only in gnustep-make-2.6.6.patched/: library-combo.make~ -Only in gnustep-make-2.6.6.patched/: result diff -ru gnustep-make-2.6.6/rules.make gnustep-make-2.6.6.patched/rules.make --- gnustep-make-2.6.6/rules.make 2013-07-04 16:05:44.000000000 +0600 +++ gnustep-make-2.6.6.patched/rules.make 2014-12-09 21:31:04.000000000 +0600 @@ -151,4 +143,3 @@ diff -ru gnustep-make-2.6.6/rules.make gnustep-make-2.6.6.patched/rules.make $(GNUSTEP_MAKEFILES)/Master/*.make: ; -Only in gnustep-make-2.6.6.patched/: rules.make~ From 5ea9bd0920a90b83dbfca0438af9a20661f8ea9d Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Wed, 6 Jul 2016 18:28:21 -0500 Subject: [PATCH 17/23] gnustep: fix naming of gnustep stuff This should fix the NixOS issues. --- nixos/modules/services/networking/gdomap.nix | 20 ++++---------------- nixos/modules/services/x11/gdnc.nix | 15 ++++++--------- 2 files changed, 10 insertions(+), 25 deletions(-) diff --git a/nixos/modules/services/networking/gdomap.nix b/nixos/modules/services/networking/gdomap.nix index 7b5ba4fcf10..7f2d2159b48 100644 --- a/nixos/modules/services/networking/gdomap.nix +++ b/nixos/modules/services/networking/gdomap.nix @@ -11,22 +11,10 @@ in # options = { services.gdomap = { - enable = mkOption { - default = false; - description = " - Whether to enable gdomap, the GNUstep distributed objects daemon. - - Note that gdomap runs as root. - "; - }; - - pidfile = mkOption { - type = types.path; - default = "/tmp/gdomap.pid"; - description = "Location of the pid file for gdomap daemon"; - }; + enable = mkEnableOption "Whether to enable gdomap, the GNUstep distributed objects daemon"; }; }; + # # implementation # @@ -37,10 +25,10 @@ in description = "gdomap server"; wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; - path = [ pkgs.gnustep_base ]; + path = [ pkgs.gnustep.base ]; serviceConfig = { PIDFile = cfg.pidfile; - ExecStart = "@${pkgs.gnustep_base}/bin/gdomap" + ExecStart = "@${pkgs.gnustep.base}/bin/gdomap" + " -d -p" + " -I ${cfg.pidfile}"; Restart = "always"; diff --git a/nixos/modules/services/x11/gdnc.nix b/nixos/modules/services/x11/gdnc.nix index dc17374191b..965776e359f 100644 --- a/nixos/modules/services/x11/gdnc.nix +++ b/nixos/modules/services/x11/gdnc.nix @@ -5,26 +5,23 @@ let cfg = config.services.gdnc; in { options = { - services.gdnc.enable = mkOption { - type = types.bool; - default = false; - example = true; - description = "Enable gdnc, the GNUstep distributed notification center"; - }; + services.gdnc.enable = mkEnableOption "Enable gdnc, the GNUstep distributed notification center"; }; config = mkIf cfg.enable { assertions = singleton { assertion = config.services.gdnc.enable -> config.services.gdomap.enable; message = "Cannot start gdnc without starting gdomap"; }; - environment.systemPackages = [ pkgs.gnustep_make pkgs.gnustep_base ]; + environment.systemPackages = [ pkgs.gnustep.make pkgs.gnustep.base ]; systemd.services.gdnc = { - path = [ pkgs.gnustep_base ]; + path = [ pkgs.gnustep.base ]; description = "gdnc: GNUstep distributed notification center"; requires = [ "gdomap.service" ]; wantedBy = [ "multi-user.target" ]; serviceConfig = { - ExecStart = ''${pkgs.gnustep_base}/bin/gdnc -f''; + ExecStart = '' + ${pkgs.gnustep.base}/bin/gdnc -f + ''; Restart = "always"; RestartSec = 10; TimeoutStartSec = "30"; From 08ce2d9d4071131e37eeb45ef4f2a585e0af0bc8 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Thu, 7 Jul 2016 18:52:44 +0000 Subject: [PATCH 18/23] gnustep: remove gdnc service gdnc is a user process and can't be made into a NixOS module very easily. It can still be put in the user's login script. According to the GNUstep documentation it will be started as soon as it is needed. --- nixos/modules/module-list.nix | 1 - nixos/modules/services/x11/gdnc.nix | 31 ----------------------------- 2 files changed, 32 deletions(-) delete mode 100644 nixos/modules/services/x11/gdnc.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 5c5462083fa..41615a8a9dc 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -498,7 +498,6 @@ ./services/x11/hardware/multitouch.nix ./services/x11/hardware/synaptics.nix ./services/x11/hardware/wacom.nix - ./services/x11/gdnc.nix ./services/x11/redshift.nix ./services/x11/window-managers/awesome.nix #./services/x11/window-managers/compiz.nix diff --git a/nixos/modules/services/x11/gdnc.nix b/nixos/modules/services/x11/gdnc.nix deleted file mode 100644 index 965776e359f..00000000000 --- a/nixos/modules/services/x11/gdnc.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ config, lib, pkgs, ... }: -with lib; - -let - cfg = config.services.gdnc; -in { - options = { - services.gdnc.enable = mkEnableOption "Enable gdnc, the GNUstep distributed notification center"; - }; - config = mkIf cfg.enable { - assertions = singleton { - assertion = config.services.gdnc.enable -> config.services.gdomap.enable; - message = "Cannot start gdnc without starting gdomap"; - }; - environment.systemPackages = [ pkgs.gnustep.make pkgs.gnustep.base ]; - systemd.services.gdnc = { - path = [ pkgs.gnustep.base ]; - description = "gdnc: GNUstep distributed notification center"; - requires = [ "gdomap.service" ]; - wantedBy = [ "multi-user.target" ]; - serviceConfig = { - ExecStart = '' - ${pkgs.gnustep.base}/bin/gdnc -f - ''; - Restart = "always"; - RestartSec = 10; - TimeoutStartSec = "30"; - }; - }; - }; -} From f54171505725c6805023d44195e9d11d2c7bbc03 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Thu, 7 Jul 2016 18:54:32 +0000 Subject: [PATCH 19/23] gnustep: fix gdomap service This gets rid of the rest of the pidfile stuff and makes gdomap just act like a normal systemd process. Also reword "enable" option. --- nixos/modules/services/networking/gdomap.nix | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/nixos/modules/services/networking/gdomap.nix b/nixos/modules/services/networking/gdomap.nix index 7f2d2159b48..b3fd91d037f 100644 --- a/nixos/modules/services/networking/gdomap.nix +++ b/nixos/modules/services/networking/gdomap.nix @@ -11,8 +11,8 @@ in # options = { services.gdomap = { - enable = mkEnableOption "Whether to enable gdomap, the GNUstep distributed objects daemon"; - }; + enable = mkEnableOption "GNUstep Distributed Objects name server"; + }; }; # @@ -26,16 +26,7 @@ in wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; path = [ pkgs.gnustep.base ]; - serviceConfig = { - PIDFile = cfg.pidfile; - ExecStart = "@${pkgs.gnustep.base}/bin/gdomap" - + " -d -p" - + " -I ${cfg.pidfile}"; - Restart = "always"; - RestartSec = 2; - TimeoutStartSec = "30"; - Type = "forking"; - }; + serviceConfig.ExecStart = "${pkgs.gnustep.base}/bin/gdomap -f"; }; }; } From a8befcb79699f973c35766d4f066f199ec50dc13 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Mon, 11 Jul 2016 20:00:49 +0000 Subject: [PATCH 20/23] gnustep: fixup descriptions, remove punctuation This is based on @joachifm's review. Reworded description in each of GNUstep's attributes. --- pkgs/development/libraries/gnustep/back/default.nix | 2 +- pkgs/development/libraries/gnustep/base/default.nix | 2 +- pkgs/development/libraries/gnustep/gorm/default.nix | 2 +- pkgs/development/libraries/gnustep/gui/default.nix | 2 +- pkgs/development/libraries/gnustep/gworkspace/default.nix | 2 +- pkgs/development/libraries/gnustep/make/default.nix | 2 +- pkgs/development/libraries/gnustep/projectcenter/default.nix | 2 +- .../development/libraries/gnustep/systempreferences/default.nix | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/development/libraries/gnustep/back/default.nix b/pkgs/development/libraries/gnustep/back/default.nix index c6915279aa0..8e11a286284 100644 --- a/pkgs/development/libraries/gnustep/back/default.nix +++ b/pkgs/development/libraries/gnustep/back/default.nix @@ -17,6 +17,6 @@ gsmakeDerivation { }; buildInputs = [ cairo base gui freetype pkgconfig x11 ]; meta = { - description = "GNUstep-back is a generic backend for GNUstep."; + description = "A generic backend for GNUstep"; }; } diff --git a/pkgs/development/libraries/gnustep/base/default.nix b/pkgs/development/libraries/gnustep/base/default.nix index 7f3c54fbf51..6c2385b546d 100644 --- a/pkgs/development/libraries/gnustep/base/default.nix +++ b/pkgs/development/libraries/gnustep/base/default.nix @@ -33,6 +33,6 @@ gsmakeDerivation { ]; patches = [ ./fixup-paths.patch ]; meta = { - description = "GNUstep-base is an implementation of AppKit and Foundation libraries of OPENSTEP and Cocoa."; + description = "An implementation of AppKit and Foundation libraries of OPENSTEP and Cocoa"; }; } diff --git a/pkgs/development/libraries/gnustep/gorm/default.nix b/pkgs/development/libraries/gnustep/gorm/default.nix index 65101867d69..5075ec5500c 100644 --- a/pkgs/development/libraries/gnustep/gorm/default.nix +++ b/pkgs/development/libraries/gnustep/gorm/default.nix @@ -12,6 +12,6 @@ gsmakeDerivation { buildInputs = [ base back gui ]; meta = { - description = "Gorm stands for Graphical Object Relationship Modeller and is an easy-to-use interface designer for GNUstep"; + description = "Graphical Object Relationship Modeller is an easy-to-use interface designer for GNUstep"; }; } diff --git a/pkgs/development/libraries/gnustep/gui/default.nix b/pkgs/development/libraries/gnustep/gui/default.nix index 6463297b062..a28fef8f3d9 100644 --- a/pkgs/development/libraries/gnustep/gui/default.nix +++ b/pkgs/development/libraries/gnustep/gui/default.nix @@ -11,6 +11,6 @@ gsmakeDerivation { buildInputs = [ base ]; patches = [ ./fixup-all.patch ]; meta = { - description = "GNUstep-gui is a GUI class library of GNUstep."; + description = "A GUI class library of GNUstep"; }; } diff --git a/pkgs/development/libraries/gnustep/gworkspace/default.nix b/pkgs/development/libraries/gnustep/gworkspace/default.nix index 7aa61c67f84..431341c0828 100644 --- a/pkgs/development/libraries/gnustep/gworkspace/default.nix +++ b/pkgs/development/libraries/gnustep/gworkspace/default.nix @@ -19,6 +19,6 @@ gsmakeDerivation { buildInputs = [ back base gui system_preferences ]; configureFlags = [ "--with-inotify" ]; meta = { - description = "GWorkspace is a workspace manager for GNUstep"; + description = "A workspace manager for GNUstep"; }; } diff --git a/pkgs/development/libraries/gnustep/make/default.nix b/pkgs/development/libraries/gnustep/make/default.nix index 953aa20e066..42ac3972c75 100644 --- a/pkgs/development/libraries/gnustep/make/default.nix +++ b/pkgs/development/libraries/gnustep/make/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { patches = [ ./fixup-paths.patch ]; setupHook = ./setup-hook.sh; meta = { - description = "GNUstep-make is a build manager for GNUstep."; + description = "A build manager for GNUstep"; homepage = http://gnustep.org/; diff --git a/pkgs/development/libraries/gnustep/projectcenter/default.nix b/pkgs/development/libraries/gnustep/projectcenter/default.nix index 5c54accb6cf..abfdac1e7af 100644 --- a/pkgs/development/libraries/gnustep/projectcenter/default.nix +++ b/pkgs/development/libraries/gnustep/projectcenter/default.nix @@ -18,6 +18,6 @@ gsmakeDerivation { propagatedBuildInputs = [ base back gui gnumake gdb gorm ]; meta = { - description = "ProjectCenter is GNUstep's integrated development environment (IDE) and allows a rapid development and easy managment of ProjectCenter running on GNUstep applications, tools and frameworks."; + description = "GNUstep's integrated development environment"; }; } diff --git a/pkgs/development/libraries/gnustep/systempreferences/default.nix b/pkgs/development/libraries/gnustep/systempreferences/default.nix index bf2ed64a85c..2bc4f688184 100644 --- a/pkgs/development/libraries/gnustep/systempreferences/default.nix +++ b/pkgs/development/libraries/gnustep/systempreferences/default.nix @@ -12,6 +12,6 @@ gsmakeDerivation { buildInputs = [ back base gui ]; # propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui ]; meta = { - description = "System Preferences allows to manage the settings of many aspects of the GNUstep environment and its applications"; + description = "The settings manager for the GNUstep environment and its applications"; }; } From 63bd635f80a033581f4bfa5554b861cb90268792 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Fri, 15 Jul 2016 18:04:41 +0000 Subject: [PATCH 21/23] libobjc2: 1.7 -> 1.8.1 --- .../libraries/gnustep/base/default.nix | 4 +-- .../development/libraries/gnustep/default.nix | 2 +- .../libraries/gnustep/gworkspace/default.nix | 1 - .../libraries/gnustep/libobjc2/default.nix | 30 +++++++++---------- .../gnustep/libobjc2/removeCXXtests.patch | 18 ----------- .../libraries/gnustep/make/default.nix | 4 +-- .../gnustep/make/gsmakeDerivation.nix | 2 +- 7 files changed, 20 insertions(+), 41 deletions(-) delete mode 100644 pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch diff --git a/pkgs/development/libraries/gnustep/base/default.nix b/pkgs/development/libraries/gnustep/base/default.nix index 6c2385b546d..4d9f763acc4 100644 --- a/pkgs/development/libraries/gnustep/base/default.nix +++ b/pkgs/development/libraries/gnustep/base/default.nix @@ -6,7 +6,7 @@ , libffi , libjpeg, libtiff, libpng, giflib, libungif , libxml2, libxslt, libiconv -, libobjc2, libgcrypt +, libobjc, libgcrypt , icu , pkgconfig, portaudio }: @@ -27,7 +27,7 @@ gsmakeDerivation { libffi libjpeg libtiff libpng giflib libungif libxml2 libxslt libiconv - libobjc2 libgcrypt + libobjc libgcrypt icu portaudio ]; diff --git a/pkgs/development/libraries/gnustep/default.nix b/pkgs/development/libraries/gnustep/default.nix index 2eb7a623442..ac324bc89a8 100644 --- a/pkgs/development/libraries/gnustep/default.nix +++ b/pkgs/development/libraries/gnustep/default.nix @@ -10,7 +10,7 @@ let gorm = callPackage ./gorm {}; projectcenter = callPackage ./projectcenter {}; system_preferences = callPackage ./systempreferences {}; - libobjc2 = callPackage ./libobjc2 {}; + libobjc = callPackage ./libobjc2 {}; make = callPackage ./make {}; back = callPackage ./back {}; base = callPackage ./base { giflib = pkgs.giflib_4_1; }; diff --git a/pkgs/development/libraries/gnustep/gworkspace/default.nix b/pkgs/development/libraries/gnustep/gworkspace/default.nix index 431341c0828..67fffd10a0f 100644 --- a/pkgs/development/libraries/gnustep/gworkspace/default.nix +++ b/pkgs/development/libraries/gnustep/gworkspace/default.nix @@ -1,7 +1,6 @@ { back, base, gui, gsmakeDerivation , fetchurl , sqlite -, stdenv , system_preferences }: let diff --git a/pkgs/development/libraries/gnustep/libobjc2/default.nix b/pkgs/development/libraries/gnustep/libobjc2/default.nix index 26ea8c0bc0b..a3e718187c7 100644 --- a/pkgs/development/libraries/gnustep/libobjc2/default.nix +++ b/pkgs/development/libraries/gnustep/libobjc2/default.nix @@ -1,30 +1,28 @@ -{ stdenv, fetchurl, cmake }: +{ stdenv, lib, fetchFromGitHub, cmake }: let - version = "1.7"; + version = "1.8.1"; in + stdenv.mkDerivation rec { name = "libobjc2-${version}"; - src = fetchurl { - url = "http://download.gna.org/gnustep/libobjc2-1.7.tar.bz2"; - sha256 = "1h9wkm1x9wrzd3alm99bx710lrs9nb8h2x5jpxbqwgbgzzv4l6rs"; + + src = fetchFromGitHub { + owner = "gnustep"; + repo = "libobjc2"; + rev = "v${version}"; + sha256 = "12v9pjg97h56mb114cqd22q1pdwhmxrgdw5hal74ddlrhiq1nzvi"; }; + buildInputs = [ cmake ]; - # since we don't support Objective-C++, we don't interoperate - # with C++ either - patches = [ ./removeCXXtests.patch ]; - cmakeFlags = [ "-DCMAKE_INSTALL_LIBDIR=lib" ]; - meta = { + meta = with lib; { description = "Objective-C runtime for use with GNUstep"; - homepage = http://gnustep.org/; - - license = stdenv.lib.licenses.mit; - - maintainers = with stdenv.lib.maintainers; [ ashalkhakov matthewbauer ]; - platforms = stdenv.lib.platforms.all; + license = licenses.mit; + maintainers = with maintainers; [ ashalkhakov matthewbauer ]; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch b/pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch deleted file mode 100644 index ad17ee403f7..00000000000 --- a/pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch +++ /dev/null @@ -1,18 +0,0 @@ -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") - diff --git a/pkgs/development/libraries/gnustep/make/default.nix b/pkgs/development/libraries/gnustep/make/default.nix index 42ac3972c75..43530096b53 100644 --- a/pkgs/development/libraries/gnustep/make/default.nix +++ b/pkgs/development/libraries/gnustep/make/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, clang, which, libobjc2 }: +{ stdenv, fetchurl, clang, which, libobjc }: let version = "2.6.8"; in @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { sha256 = "0r00439f7vrggdwv60n8p626gnyymhq968i5x9ad2i4v6g8x4gk0"; }; configureFlags = "--with-installation-domain=SYSTEM"; - buildInputs = [ clang which libobjc2 ]; + buildInputs = [ clang which libobjc ]; patches = [ ./fixup-paths.patch ]; setupHook = ./setup-hook.sh; meta = { diff --git a/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix b/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix index a477bc2fb3a..00b96cd2fac 100644 --- a/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix +++ b/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, libobjc2, clang, make, makeWrapper, which }: +{ stdenv, lib, make, makeWrapper, which }: { buildInputs ? [], ...} @ args: stdenv.mkDerivation (args // { buildInputs = [ makeWrapper make which ] ++ buildInputs; From 2e5edbfd99c4eb01cdb08e6735879701dbdc2fc7 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Tue, 16 Aug 2016 20:51:27 +0000 Subject: [PATCH 22/23] gnustep: move to pkgs/desktops/gnustep --- .../libraries => desktops}/gnustep/back/default.nix | 0 .../libraries => desktops}/gnustep/back/fixup-tools.patch | 0 .../libraries => desktops}/gnustep/base/default.nix | 0 .../gnustep/base/fixup-base-makefile-installdir.patch | 0 .../libraries => desktops}/gnustep/base/fixup-paths.patch | 0 pkgs/{development/libraries => desktops}/gnustep/default.nix | 0 .../libraries => desktops}/gnustep/gorm/default.nix | 0 .../libraries => desktops}/gnustep/gorm/fix-gs-makefiles.patch | 0 .../{development/libraries => desktops}/gnustep/gui/default.nix | 0 .../libraries => desktops}/gnustep/gui/fixup-all.patch | 0 .../gnustep/gui/fixup-gui-makefile-installdir.patch | 0 .../gnustep/gui/fixup-gui-textconverters-preamble.patch | 0 .../gnustep/gui/fixup-gui-tools-preamble.patch | 0 .../libraries => desktops}/gnustep/gworkspace/default.nix | 0 .../libraries => desktops}/gnustep/libobjc2/default.nix | 0 .../libraries => desktops}/gnustep/make/GNUstep.conf | 0 .../{development/libraries => desktops}/gnustep/make/builder.sh | 0 .../libraries => desktops}/gnustep/make/default.nix | 0 .../libraries => desktops}/gnustep/make/fixup-paths.patch | 0 .../gnustep/make/gs-makefiles-additional.patch | 0 .../libraries => desktops}/gnustep/make/gsmakeDerivation.nix | 0 .../libraries => desktops}/gnustep/make/setup-hook.sh | 0 .../{development/libraries => desktops}/gnustep/make/wrapper.sh | 0 .../libraries => desktops}/gnustep/projectcenter/default.nix | 0 .../gnustep/projectcenter/fixup-preamble.patch | 0 .../gnustep/systempreferences/default.nix | 0 pkgs/top-level/all-packages.nix | 2 +- 27 files changed, 1 insertion(+), 1 deletion(-) rename pkgs/{development/libraries => desktops}/gnustep/back/default.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/back/fixup-tools.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/base/default.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/base/fixup-base-makefile-installdir.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/base/fixup-paths.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/default.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/gorm/default.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/gorm/fix-gs-makefiles.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/gui/default.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/gui/fixup-all.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/gui/fixup-gui-makefile-installdir.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/gui/fixup-gui-textconverters-preamble.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/gui/fixup-gui-tools-preamble.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/gworkspace/default.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/libobjc2/default.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/make/GNUstep.conf (100%) rename pkgs/{development/libraries => desktops}/gnustep/make/builder.sh (100%) rename pkgs/{development/libraries => desktops}/gnustep/make/default.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/make/fixup-paths.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/make/gs-makefiles-additional.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/make/gsmakeDerivation.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/make/setup-hook.sh (100%) rename pkgs/{development/libraries => desktops}/gnustep/make/wrapper.sh (100%) rename pkgs/{development/libraries => desktops}/gnustep/projectcenter/default.nix (100%) rename pkgs/{development/libraries => desktops}/gnustep/projectcenter/fixup-preamble.patch (100%) rename pkgs/{development/libraries => desktops}/gnustep/systempreferences/default.nix (100%) diff --git a/pkgs/development/libraries/gnustep/back/default.nix b/pkgs/desktops/gnustep/back/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/back/default.nix rename to pkgs/desktops/gnustep/back/default.nix diff --git a/pkgs/development/libraries/gnustep/back/fixup-tools.patch b/pkgs/desktops/gnustep/back/fixup-tools.patch similarity index 100% rename from pkgs/development/libraries/gnustep/back/fixup-tools.patch rename to pkgs/desktops/gnustep/back/fixup-tools.patch diff --git a/pkgs/development/libraries/gnustep/base/default.nix b/pkgs/desktops/gnustep/base/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/base/default.nix rename to pkgs/desktops/gnustep/base/default.nix diff --git a/pkgs/development/libraries/gnustep/base/fixup-base-makefile-installdir.patch b/pkgs/desktops/gnustep/base/fixup-base-makefile-installdir.patch similarity index 100% rename from pkgs/development/libraries/gnustep/base/fixup-base-makefile-installdir.patch rename to pkgs/desktops/gnustep/base/fixup-base-makefile-installdir.patch diff --git a/pkgs/development/libraries/gnustep/base/fixup-paths.patch b/pkgs/desktops/gnustep/base/fixup-paths.patch similarity index 100% rename from pkgs/development/libraries/gnustep/base/fixup-paths.patch rename to pkgs/desktops/gnustep/base/fixup-paths.patch diff --git a/pkgs/development/libraries/gnustep/default.nix b/pkgs/desktops/gnustep/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/default.nix rename to pkgs/desktops/gnustep/default.nix diff --git a/pkgs/development/libraries/gnustep/gorm/default.nix b/pkgs/desktops/gnustep/gorm/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/gorm/default.nix rename to pkgs/desktops/gnustep/gorm/default.nix diff --git a/pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch b/pkgs/desktops/gnustep/gorm/fix-gs-makefiles.patch similarity index 100% rename from pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch rename to pkgs/desktops/gnustep/gorm/fix-gs-makefiles.patch diff --git a/pkgs/development/libraries/gnustep/gui/default.nix b/pkgs/desktops/gnustep/gui/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/gui/default.nix rename to pkgs/desktops/gnustep/gui/default.nix diff --git a/pkgs/development/libraries/gnustep/gui/fixup-all.patch b/pkgs/desktops/gnustep/gui/fixup-all.patch similarity index 100% rename from pkgs/development/libraries/gnustep/gui/fixup-all.patch rename to pkgs/desktops/gnustep/gui/fixup-all.patch diff --git a/pkgs/development/libraries/gnustep/gui/fixup-gui-makefile-installdir.patch b/pkgs/desktops/gnustep/gui/fixup-gui-makefile-installdir.patch similarity index 100% rename from pkgs/development/libraries/gnustep/gui/fixup-gui-makefile-installdir.patch rename to pkgs/desktops/gnustep/gui/fixup-gui-makefile-installdir.patch diff --git a/pkgs/development/libraries/gnustep/gui/fixup-gui-textconverters-preamble.patch b/pkgs/desktops/gnustep/gui/fixup-gui-textconverters-preamble.patch similarity index 100% rename from pkgs/development/libraries/gnustep/gui/fixup-gui-textconverters-preamble.patch rename to pkgs/desktops/gnustep/gui/fixup-gui-textconverters-preamble.patch diff --git a/pkgs/development/libraries/gnustep/gui/fixup-gui-tools-preamble.patch b/pkgs/desktops/gnustep/gui/fixup-gui-tools-preamble.patch similarity index 100% rename from pkgs/development/libraries/gnustep/gui/fixup-gui-tools-preamble.patch rename to pkgs/desktops/gnustep/gui/fixup-gui-tools-preamble.patch diff --git a/pkgs/development/libraries/gnustep/gworkspace/default.nix b/pkgs/desktops/gnustep/gworkspace/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/gworkspace/default.nix rename to pkgs/desktops/gnustep/gworkspace/default.nix diff --git a/pkgs/development/libraries/gnustep/libobjc2/default.nix b/pkgs/desktops/gnustep/libobjc2/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/libobjc2/default.nix rename to pkgs/desktops/gnustep/libobjc2/default.nix diff --git a/pkgs/development/libraries/gnustep/make/GNUstep.conf b/pkgs/desktops/gnustep/make/GNUstep.conf similarity index 100% rename from pkgs/development/libraries/gnustep/make/GNUstep.conf rename to pkgs/desktops/gnustep/make/GNUstep.conf diff --git a/pkgs/development/libraries/gnustep/make/builder.sh b/pkgs/desktops/gnustep/make/builder.sh similarity index 100% rename from pkgs/development/libraries/gnustep/make/builder.sh rename to pkgs/desktops/gnustep/make/builder.sh diff --git a/pkgs/development/libraries/gnustep/make/default.nix b/pkgs/desktops/gnustep/make/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/make/default.nix rename to pkgs/desktops/gnustep/make/default.nix diff --git a/pkgs/development/libraries/gnustep/make/fixup-paths.patch b/pkgs/desktops/gnustep/make/fixup-paths.patch similarity index 100% rename from pkgs/development/libraries/gnustep/make/fixup-paths.patch rename to pkgs/desktops/gnustep/make/fixup-paths.patch diff --git a/pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch b/pkgs/desktops/gnustep/make/gs-makefiles-additional.patch similarity index 100% rename from pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch rename to pkgs/desktops/gnustep/make/gs-makefiles-additional.patch diff --git a/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix b/pkgs/desktops/gnustep/make/gsmakeDerivation.nix similarity index 100% rename from pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix rename to pkgs/desktops/gnustep/make/gsmakeDerivation.nix diff --git a/pkgs/development/libraries/gnustep/make/setup-hook.sh b/pkgs/desktops/gnustep/make/setup-hook.sh similarity index 100% rename from pkgs/development/libraries/gnustep/make/setup-hook.sh rename to pkgs/desktops/gnustep/make/setup-hook.sh diff --git a/pkgs/development/libraries/gnustep/make/wrapper.sh b/pkgs/desktops/gnustep/make/wrapper.sh similarity index 100% rename from pkgs/development/libraries/gnustep/make/wrapper.sh rename to pkgs/desktops/gnustep/make/wrapper.sh diff --git a/pkgs/development/libraries/gnustep/projectcenter/default.nix b/pkgs/desktops/gnustep/projectcenter/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/projectcenter/default.nix rename to pkgs/desktops/gnustep/projectcenter/default.nix diff --git a/pkgs/development/libraries/gnustep/projectcenter/fixup-preamble.patch b/pkgs/desktops/gnustep/projectcenter/fixup-preamble.patch similarity index 100% rename from pkgs/development/libraries/gnustep/projectcenter/fixup-preamble.patch rename to pkgs/desktops/gnustep/projectcenter/fixup-preamble.patch diff --git a/pkgs/development/libraries/gnustep/systempreferences/default.nix b/pkgs/desktops/gnustep/systempreferences/default.nix similarity index 100% rename from pkgs/development/libraries/gnustep/systempreferences/default.nix rename to pkgs/desktops/gnustep/systempreferences/default.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 131fe12e5f5..62db994a83e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6444,7 +6444,7 @@ in gnumake42 = callPackage ../development/tools/build-managers/gnumake/4.2 { }; gnumake = self.gnumake42; - gnustep = recurseIntoAttrs (callPackage ../development/libraries/gnustep {}); + gnustep = recurseIntoAttrs (callPackage ../desktops/gnustep {}); gob2 = callPackage ../development/tools/misc/gob2 { }; From 49bb0aa25a718742b5748fa70cd15320f09b2d1d Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Tue, 2 Aug 2016 19:38:06 -0500 Subject: [PATCH 23/23] gnustep: attempt to fix osx building Set with-layout=fhs. This should prevent OS X from having compat issues. --- pkgs/desktops/gnustep/make/default.nix | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/pkgs/desktops/gnustep/make/default.nix b/pkgs/desktops/gnustep/make/default.nix index 43530096b53..62250586497 100644 --- a/pkgs/desktops/gnustep/make/default.nix +++ b/pkgs/desktops/gnustep/make/default.nix @@ -1,25 +1,38 @@ { stdenv, fetchurl, clang, which, libobjc }: + let version = "2.6.8"; in + stdenv.mkDerivation rec { name = "gnustep-make-${version}"; + src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-make-${version}.tar.gz"; sha256 = "0r00439f7vrggdwv60n8p626gnyymhq968i5x9ad2i4v6g8x4gk0"; }; - configureFlags = "--with-installation-domain=SYSTEM"; + + configureFlags = [ + "--with-layout=fhs-system" + "--disable-install-p" + ]; + + preConfigure = '' + configureFlags="$configureFlags --with-config-file=$out/etc/GNUstep/GNUstep.conf" + ''; + + makeFlags = [ + "GNUSTEP_INSTALLATION_DOMAIN=SYSTEM" + ]; + buildInputs = [ clang which libobjc ]; patches = [ ./fixup-paths.patch ]; setupHook = ./setup-hook.sh; meta = { description = "A build manager for GNUstep"; - homepage = http://gnustep.org/; - license = stdenv.lib.licenses.lgpl2Plus; - maintainers = with stdenv.lib.maintainers; [ ashalkhakov matthewbauer ]; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; }; }