1diff -r -u gnustep-make-2.6.6/common.make gnustep-make-2.6.6.patched/common.make
2--- gnustep-make-2.6.6/common.make 2013-03-04 17:21:55.000000000 +0600
3+++ gnustep-make-2.6.6.patched/common.make 2015-01-18 14:36:25.000000000 +0600
4@@ -135,7 +135,9 @@
5 endif
6 # Then include makefiles with flags/config options installed by the
7 # libraries themselves
8--include $(GNUSTEP_MAKEFILES)/Additional/*.make
9+ifneq ($(NIX_GNUSTEP_MAKEFILES_ADDITIONAL),)
10+include $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)
11+endif
12
13 #
14 # Determine target specific settings
15diff -r -u gnustep-make-2.6.6/GNUmakefile.in gnustep-make-2.6.6.patched/GNUmakefile.in
16--- gnustep-make-2.6.6/GNUmakefile.in 2013-09-20 12:13:15.000000000 +0600
17+++ gnustep-make-2.6.6.patched/GNUmakefile.in 2014-12-07 20:35:27.000000000 +0600
18@@ -173,7 +173,6 @@
19 "$(makedir)/$(GNUSTEP_TARGET_CPU)" \
20 "$(makedir)/$(GNUSTEP_TARGET_DIR)" \
21 "$(makedir)/$(GNUSTEP_TARGET_LDIR)" \
22- "$(makedir)/Additional" \
23 "$(makedir)/Auxiliary" \
24 "$(makedir)/Master" \
25 "$(makedir)/Instance" \
26@@ -314,7 +313,6 @@
27 -rmdir "$(makedir)/Instance"
28 -rmdir "$(makedir)/Master"
29 -rmdir "$(makedir)/Auxiliary"
30- -rmdir "$(makedir)/Additional"
31 -rmdir "$(makedir)/$(GNUSTEP_TARGET_LDIR)"
32 -rmdir "$(makedir)/$(GNUSTEP_TARGET_DIR)"
33 -rmdir "$(makedir)/$(GNUSTEP_TARGET_CPU)"
34diff -r -u gnustep-make-2.6.6/gnustep-config.in gnustep-make-2.6.6.patched/gnustep-config.in
35--- gnustep-make-2.6.6/gnustep-config.in 2013-07-02 16:06:24.000000000 +0600
36+++ gnustep-make-2.6.6.patched/gnustep-config.in 2014-12-09 21:29:49.000000000 +0600
37@@ -66,6 +66,7 @@
38 echo " --variable=OBJCXX"
39 echo " --variable=GNUMAKE"
40 echo " --variable=GNUSTEP_MAKEFILES"
41+ echo " --variable=NIX_GNUSTEP_MAKEFILES_ADDITIONAL"
42 echo " --variable=GNUSTEP_USER_DEFAULTS_DIR"
43 echo " --variable=GNUSTEP_HOST"
44 echo " --variable=GNUSTEP_HOST_CPU"
45@@ -153,6 +154,8 @@
46
47 export GNUSTEP_MAKEFILES
48
49+export NIX_GNUSTEP_MAKEFILES_ADDITIONAL
50+
51 #
52 # If all they want to know if GNUSTEP_MAKEFILES or anything that
53 # we can compute only using GNUSTEP_MAKEFILES, we can print it out
54@@ -168,6 +171,8 @@
55 exit 0;;
56 --variable=GNUSTEP_MAKEFILES) echo "$GNUSTEP_MAKEFILES"
57 exit 0;;
58+ --variable=NIX_GNUSTEP_MAKEFILES_ADDITIONAL) echo "$NIX_GNUSTEP_MAKEFILES_ADDITIONAL"
59+ exit 0;;
60 --variable=GNUMAKE) echo "@GNUMAKE@"
61 exit 0;;
62 --debug-flags) @GNUMAKE@ -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-objc-flags quiet=yes debug=yes 2>/dev/null
63Only in gnustep-make-2.6.6.patched: gnustep-config.in~
64diff -r -u gnustep-make-2.6.6/GNUstep.csh.in gnustep-make-2.6.6.patched/GNUstep.csh.in
65--- gnustep-make-2.6.6/GNUstep.csh.in 2011-05-03 13:40:10.000000000 +0600
66+++ gnustep-make-2.6.6.patched/GNUstep.csh.in 2014-12-09 20:14:05.000000000 +0600
67@@ -130,6 +130,10 @@
68 setenv GNUSTEP_MAKEFILES "@GNUSTEP_MAKEFILES@"
69 endif
70
71+if ( ! ${?NIX_GNUSTEP_MAKEFILES_ADDITIONAL} ) then
72+ setenv NIX_GNUSTEP_MAKEFILES_ADDITIONAL "@NIX_GNUSTEP_MAKEFILES_ADDITIONAL@"
73+endif
74+
75 if ( "${GNUSTEP_MAKE_STRICT_V2_MODE}" == "yes" ) then
76 unsetenv GNUSTEP_USER_DIR
77 unsetenv GNUSTEP_USER_ROOT
78Only in gnustep-make-2.6.6.patched: GNUstep.csh.in~
79diff -r -u gnustep-make-2.6.6/GNUstep.sh.in gnustep-make-2.6.6.patched/GNUstep.sh.in
80--- gnustep-make-2.6.6/GNUstep.sh.in 2012-02-21 20:21:38.000000000 +0600
81+++ gnustep-make-2.6.6.patched/GNUstep.sh.in 2015-01-18 14:48:09.000000000 +0600
82@@ -173,7 +173,6 @@
83 fi
84 export GNUSTEP_MAKEFILES
85
86-
87 if [ "$GNUSTEP_MAKE_STRICT_V2_MODE" = "yes" ]; then
88 # Make sure this is never set in gnustep-make v2 strict mode; it
89 # might have been set in the config file.
90@@ -300,7 +299,7 @@
91 # for each duplicate. When there are many duplicates it's faster to
92 # use print_unique_pathlist.sh first to remove them and skip the
93 # echos+greps later.
94-GNUSTEP_TOOLS_PATHLIST=`$GNUSTEP_MAKEFILES/print_unique_pathlist.sh "$GNUSTEP_USER_TOOLS" "$GNUSTEP_LOCAL_TOOLS" "$GNUSTEP_NETWORK_TOOLS" "$GNUSTEP_SYSTEM_TOOLS" $fixup_paths`
95+GNUSTEP_TOOLS_PATHLIST=$NIX_GNUSTEP_SYSTEM_TOOLS
96
97 # Now, we check the paths in GNUSTEP_*_ADMIN_TOOLS. These paths
98 # should only be used by Administrators -- normal users don't have
99@@ -313,7 +312,7 @@
100
101 # So we examine GNUSTEP_*_ADMIN_TOOLS; if we find any path in that
102 # list that exists and that we can write to, we add it to our PATH.
103-for dir in "$GNUSTEP_SYSTEM_ADMIN_TOOLS" "$GNUSTEP_NETWORK_ADMIN_TOOLS" "$GNUSTEP_LOCAL_ADMIN_TOOLS" "$GNUSTEP_USER_ADMIN_TOOLS"; do
104+for dir in $(echo "$NIX_GNUSTEP_SYSTEM_ADMIN_TOOLS" | tr ":" "\n"); do
105 if [ -d "$dir" -a -w "$dir" ]; then
106 # Only add the new dir if it's not already in GNUSTEP_TOOLS_PATHLIST
107 if (echo ":${GNUSTEP_TOOLS_PATHLIST}:" \
108@@ -356,7 +355,7 @@
109 export PATH
110
111 # Determine the library paths
112-GNUSTEP_LIBRARIES_PATHLIST=`$GNUSTEP_MAKEFILES/print_unique_pathlist.sh "$GNUSTEP_USER_LIBRARIES" "$GNUSTEP_LOCAL_LIBRARIES" "$GNUSTEP_NETWORK_LIBRARIES" "$GNUSTEP_SYSTEM_LIBRARIES" $fixup_paths`
113+GNUSTEP_LIBRARIES_PATHLIST=$NIX_GNUSTEP_SYSTEM_LIBRARIES
114
115 old_IFS="$IFS"
116 IFS=:
117@@ -486,7 +485,7 @@
118 #
119 # Setup Java CLASSPATH and Guile GUILE_LOAD_PATH
120 #
121-GNUSTEP_LIBRARY_PATHLIST=`$GNUSTEP_MAKEFILES/print_unique_pathlist.sh "$GNUSTEP_USER_LIBRARY" "$GNUSTEP_LOCAL_LIBRARY" "$GNUSTEP_NETWORK_LIBRARY" "$GNUSTEP_SYSTEM_LIBRARY" $fixup_paths`
122+GNUSTEP_LIBRARY_PATHLIST=$NIX_GNUSTEP_SYSTEM_LIBRARY
123
124 old_IFS="$IFS"
125 IFS=:
126@@ -526,7 +525,7 @@
127 # xxx/Library/Documentation/info, are found by the info browsing
128 # programs. To get this effect, we add those paths to INFOPATH.
129 #
130-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`
131+GNUSTEP_INFO_PATHLIST=$NIX_GNUSTEP_SYSTEM_DOC_INFO
132 old_IFS="$IFS"
133 IFS=:
134 for dir in $GNUSTEP_INFO_PATHLIST; do
135@@ -559,6 +558,7 @@
136
137 unset GNUSTEP_KEEP_CONFIG_FILE GNUSTEP_KEEP_USER_CONFIG_FILE
138
139+
140 export GNUSTEP_CONFIG_FILE GNUSTEP_USER_CONFIG_FILE
141
142 export GNUSTEP_USER_DEFAULTS_DIR
143diff -r -u gnustep-make-2.6.6/GNUstep-strict-v2.conf.in gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in
144--- gnustep-make-2.6.6/GNUstep-strict-v2.conf.in 2008-01-15 20:35:36.000000000 +0600
145+++ gnustep-make-2.6.6.patched/GNUstep-strict-v2.conf.in 2014-12-07 22:04:56.000000000 +0600
146@@ -47,7 +47,6 @@
147 # Traditionally, this is /usr/GNUstep/System/Library/Makefiles
148 GNUSTEP_MAKEFILES=@GNUSTEP_MAKEFILES@
149
150-
151 # This is where the user home directories are. Only used to provide
152 # NSUserDirectory in gnustep-base. Never used anywhere else.
153 GNUSTEP_SYSTEM_USERS_DIR=@GNUSTEP_SYSTEM_USERS_DIR@
154diff -r -u gnustep-make-2.6.6/library-combo.make gnustep-make-2.6.6.patched/library-combo.make
155--- gnustep-make-2.6.6/library-combo.make 2012-02-21 19:53:02.000000000 +0600
156+++ gnustep-make-2.6.6.patched/library-combo.make 2014-12-09 20:15:05.000000000 +0600
157@@ -142,7 +142,7 @@
158 #
159 # Third-party foundations not using make package
160 # Our own foundation will install a base.make file into
161-# $GNUSTEP_MAKEFILES/Additional/ to set the needed flags
162+# $NIX_GNUSTEP_MAKEFILES_ADDITIONAL to set the needed flags
163 #
164 ifeq ($(FOUNDATION_LIB), nx)
165 # -framework Foundation is used both to find headers, and to link
166@@ -166,7 +166,7 @@
167
168 #
169 # FIXME - Ask Helge to move this inside his libFoundation, and have
170-# it installed as a $(GNUSTEP_MAKEFILES)/Additional/libFoundation.make
171+# it installed as a $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)/libFoundation.make
172 #
173 ifeq ($(FOUNDATION_LIB),fd)
174 -include $(GNUSTEP_MAKEFILES)/libFoundation.make
175@@ -193,7 +193,7 @@
176 GUI_LIBS =
177 #
178 # Third-party GUI libraries - our own sets its flags into
179-# $(GNUSTEP_MAKEFILES)/Additional/gui.make
180+# $(NIX_GNUSTEP_MAKEFILES_ADDITIONAL)/gui.make
181 #
182 ifeq ($(GUI_LIB), nx)
183 GUI_DEFINE = -DNeXT_GUI_LIBRARY=1
184diff -r -u gnustep-make-2.6.6/rules.make gnustep-make-2.6.6.patched/rules.make
185--- gnustep-make-2.6.6/rules.make 2013-07-04 16:05:44.000000000 +0600
186+++ gnustep-make-2.6.6.patched/rules.make 2014-12-09 21:31:04.000000000 +0600
187@@ -667,7 +667,9 @@
188 exit 1$(END_ECHO)
189 endif
190
191-$(GNUSTEP_MAKEFILES)/Additional/*.make: ;
192+ifneq ($(NIX_GNUSTEP_MAKEFILES_ADDITIONAL),)
193+$(NIX_GNUSTEP_MAKEFILES_ADDITIONAL): ;
194+endif
195
196 $(GNUSTEP_MAKEFILES)/Master/*.make: ;
197