changeset 108730:c554bb2aba83

Handle some HAVE_NS Makefile conditionals with configure. * 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.
author Glenn Morris <rgm@gnu.org>
date Thu, 20 May 2010 17:48:14 -0700
parents 83fdad33d6fa
children 2a2ab709769e
files ChangeLog configure.in msdos/ChangeLog msdos/sed1v2.inp src/ChangeLog src/Makefile.in src/ns.mk
diffstat 7 files changed, 53 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Thu May 20 17:40:12 2010 -0700
+++ b/ChangeLog	Thu May 20 17:48:14 2010 -0700
@@ -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.
 
--- a/configure.in	Thu May 20 17:40:12 2010 -0700
+++ b/configure.in	Thu May 20 17:48:14 2010 -0700
@@ -1525,6 +1525,7 @@
 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 "${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 @@
 AC_SUBST(NS_OBJ)
 AC_SUBST(NS_SUPPORT)
 AC_SUBST(LIB_STANDARD)
+AC_SUBST_FILE(ns_frag)
 
 case "${window_system}" in
   x11 )
--- a/msdos/ChangeLog	Thu May 20 17:40:12 2010 -0700
+++ b/msdos/ChangeLog	Thu May 20 17:48:14 2010 -0700
@@ -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".
 
--- a/msdos/sed1v2.inp	Thu May 20 17:40:12 2010 -0700
+++ b/msdos/sed1v2.inp	Thu May 20 17:48:14 2010 -0700
@@ -149,6 +149,7 @@
 /^[ 	]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/
--- a/src/ChangeLog	Thu May 20 17:40:12 2010 -0700
+++ b/src/ChangeLog	Thu May 20 17:48:14 2010 -0700
@@ -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.
--- a/src/Makefile.in	Thu May 20 17:40:12 2010 -0700
+++ b/src/Makefile.in	Thu May 20 17:48:14 2010 -0700
@@ -700,22 +700,9 @@
 doc.o: buildobj.h
 
 
-/* System-specific programs to be made.
-   OTHER_FILES select which of these should be compiled.  */
+/* If HAVE_NS, some ns-specific rules (for OTHER_FILES) are inserted here.  */
+@ns_frag@
 
-#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
 
 mostlyclean:
 	rm -f temacs${EXEEXT} prefix-args${EXEEXT} core *.core \#* *.o libXMenu11.a liblw.a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ns.mk	Thu May 20 17:48:14 2010 -0700
@@ -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  */