]> git.eshelyaron.com Git - emacs.git/commitdiff
Handle some HAVE_NS Makefile conditionals with configure.
authorGlenn Morris <rgm@gnu.org>
Fri, 21 May 2010 00:48:14 +0000 (17:48 -0700)
committerGlenn Morris <rgm@gnu.org>
Fri, 21 May 2010 00:48:14 +0000 (17:48 -0700)
* configure.in (ns_frag): New output file.

* src/Makefile.in (${ns_appdir}, ${ns_appbindir}Emacs, ns-app):
Move these rules to ns.mk.
* ns.mk: New file.  Copyright years based on date of nextstep merge.

* msdos/sed1v2.inp(@ns_frag@): Edit to nothing.

ChangeLog
configure.in
msdos/ChangeLog
msdos/sed1v2.inp
src/ChangeLog
src/Makefile.in
src/ns.mk [new file with mode: 0644]

index 9242ab5ef9e95a36a628d4860112e8351458d65b..53424301efdc6b7100d583af5854b80a289ef8c4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2010-05-21  Glenn Morris  <rgm@gnu.org>
 
+       * configure.in (ns_frag): New output file.
+
        * configure.in (OLDXMENU): Set to "nothing" if !HAVE_X11 || USE_GTK.
        (OLDXMENU_TARGET): Set to empty if USE_GTK.
 
index cd20908e135bbf8650e762f71577a4498bfbfc66..6d82a20351ba6f751d03d6d55ecb1e87af02b8fd 100644 (file)
@@ -1525,6 +1525,7 @@ AC_SUBST(NS_IMPL_GNUSTEP_INC)
 AC_SUBST(NS_IMPL_GNUSTEP_TEMACS_LDFLAGS)
 AC_SUBST(TEMACS_LDFLAGS2)
 
+ns_frag=/dev/null
 NS_OBJ=
 NS_SUPPORT=
 if test "${HAVE_NS}" = yes; then
@@ -1536,6 +1537,7 @@ if test "${HAVE_NS}" = yes; then
   if test "${EN_NS_SELF_CONTAINED}" = yes; then
      prefix=${ns_appresdir}
   fi
+  ns_frag=$srcdir/src/ns.mk
   NS_OBJ="nsterm.o nsfns.o nsmenu.o nsselect.o nsimage.o nsfont.o fontset.o fringe.o image.o"
   NS_SUPPORT="\${lispsource}emacs-lisp/easymenu.elc \${lispsource}term/ns-win.elc"
 fi
@@ -1544,6 +1546,7 @@ CPPFLAGS="$tmp_CPPFLAGS"
 AC_SUBST(NS_OBJ)
 AC_SUBST(NS_SUPPORT)
 AC_SUBST(LIB_STANDARD)
+AC_SUBST_FILE(ns_frag)
 
 case "${window_system}" in
   x11 )
index df532f60c9aafa9db44b33658acffaf8d1feaec0..54e9f9cbe7675abb94ed3a74513f39ee82ee0279 100644 (file)
@@ -1,5 +1,7 @@
 2010-05-21  Glenn Morris  <rgm@gnu.org>
 
+       * sed1v2.inp(@ns_frag@): Edit to nothing.
+
        * sed1x.inp (OLDXMENU): Replace any initial value.
        * sed1v2.inp (OLDXMENU): Edit to "nothing".
 
index a54e40b5c050cf58d7ee643f0ff83a75a3ca9320..ca397e6b08b6388ff64843ac4fc0d1728e99f9a3 100644 (file)
@@ -149,6 +149,7 @@ s/\.h\.in/.h-in/
 /^[    ]touch /s/touch/djecho $@ >/
 s/@YMF_PASS_LDFLAGS@/flags/
 s/@deps_frag@//
+s/@ns_frag@//
 s/bootstrap-emacs/b-emacs/
 s/bootstrap-temacs/b-temacs/
 s/bootstrap-doc/b-doc/
index 5335dfc150dc8072bbbf27bef766b8151c501dfa..d74fb712e6d34daf462db69dc327139b7095863d 100644 (file)
@@ -1,5 +1,9 @@
 2010-05-21  Glenn Morris  <rgm@gnu.org>
 
+       * Makefile.in (${ns_appdir}, ${ns_appbindir}Emacs, ns-app):
+       Move these rules to ns.mk.
+       * ns.mk: New file.
+
        * Makefile.in (../src/$(OLDXMENU), $(OLDXMENU)): Always define rules.
 
        * Makefile.in (CANNOT_DUMP): New, set by configure.
index 8c2994f6e8a90239afd01606c677c523ecff68d1..f82a01cbde42049d56bef43ca910b9e319339e9e 100644 (file)
@@ -700,22 +700,9 @@ ecrt0.o: ecrt0.c $(config_h)
 doc.o: buildobj.h
 
 
-/* System-specific programs to be made.
-   OTHER_FILES select which of these should be compiled.  */
-
-#ifdef HAVE_NS
-${ns_appdir}: ${ns_appsrc}
-       rm -fr ${ns_appdir}
-       mkdir -p ${ns_appdir}
-       ( cd ${ns_appsrc} ; tar cfh - . ) | ( cd ${ns_appdir} ; umask 022; tar xf - )
-#endif /* HAVE_NS */
-
-/* These are only used if HAVE_NS, but no harm in always defining them.  */
-${ns_appbindir}Emacs: emacs${EXEEXT}
-       mkdir -p ${ns_appbindir}
-       cp -f emacs${EXEEXT} ${ns_appbindir}Emacs
-
-ns-app: ${ns_appdir} ${ns_appbindir}Emacs
+/* If HAVE_NS, some ns-specific rules (for OTHER_FILES) are inserted here.  */
+@ns_frag@
+
 
 mostlyclean:
        rm -f temacs${EXEEXT} prefix-args${EXEEXT} core *.core \#* *.o libXMenu11.a liblw.a
diff --git a/src/ns.mk b/src/ns.mk
new file mode 100644 (file)
index 0000000..255ffa7
--- /dev/null
+++ b/src/ns.mk
@@ -0,0 +1,39 @@
+/* autodeps.mk --- src/Makefile fragment for GNU Emacs
+
+Copyright (C) 2008, 2009, 2010  Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
+
+Commentary:
+
+This is inserted in src/Makefile if HAVE_NS. 
+
+The only reason this is in a separate file is because $ns_appdir,
+which appears as a target, is empty on non-NS builds.  Some makes
+do not like empty targets, even if they are never used.  */
+
+${ns_appdir}: ${ns_appsrc}
+       rm -fr ${ns_appdir}
+       mkdir -p ${ns_appdir}
+       ( cd ${ns_appsrc} ; tar cfh - . ) | ( cd ${ns_appdir} ; umask 022; tar xf - )
+
+${ns_appbindir}Emacs: emacs${EXEEXT}
+       mkdir -p ${ns_appbindir}
+       cp -f emacs${EXEEXT} ${ns_appbindir}Emacs
+
+ns-app: ${ns_appdir} ${ns_appbindir}Emacs
+
+/* ns.mk ends here  */