summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2010-05-20 17:48:14 -0700
committerGlenn Morris <rgm@gnu.org>2010-05-20 17:48:14 -0700
commit66dbf213eabcba05f54ff85e79ae44bbbeae4386 (patch)
tree0205cff46fcf6198581c5083aef6298f6d456bf3
parent04384b2d186ef8e3fb77f644d6621fc52b83c99a (diff)
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.
-rw-r--r--ChangeLog2
-rw-r--r--configure.in3
-rw-r--r--msdos/ChangeLog2
-rw-r--r--msdos/sed1v2.inp1
-rw-r--r--src/ChangeLog4
-rw-r--r--src/Makefile.in19
-rw-r--r--src/ns.mk39
7 files changed, 54 insertions, 16 deletions
diff --git a/ChangeLog b/ChangeLog
index 9242ab5ef9..53424301ef 100644
--- 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.
diff --git a/configure.in b/configure.in
index cd20908e13..6d82a20351 100644
--- a/configure.in
+++ b/configure.in
@@ -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 )
diff --git a/msdos/ChangeLog b/msdos/ChangeLog
index df532f60c9..54e9f9cbe7 100644
--- a/msdos/ChangeLog
+++ b/msdos/ChangeLog
@@ -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".
diff --git a/msdos/sed1v2.inp b/msdos/sed1v2.inp
index a54e40b5c0..ca397e6b08 100644
--- a/msdos/sed1v2.inp
+++ b/msdos/sed1v2.inp
@@ -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/
diff --git a/src/ChangeLog b/src/ChangeLog
index 5335dfc150..d74fb712e6 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -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.
diff --git a/src/Makefile.in b/src/Makefile.in
index 8c2994f6e8..f82a01cbde 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -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
index 0000000000..255ffa7046
--- /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 */