1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/support_cpp_scripts Thu Oct 30 11:35:04 2008 +0000
1.3 @@ -0,0 +1,189 @@
1.4 +Add Makefile/configure support for C++ version of mkoctfile, octave-config and octave-bug
1.5 +
1.6 +diff -r 229bd50e6e8f ChangeLog
1.7 +--- a/ChangeLog Tue Sep 09 18:56:51 2008 -0400
1.8 ++++ b/ChangeLog Wed Sep 10 13:00:54 2008 +0200
1.9 +@@ -1,3 +1,20 @@
1.10 ++2008-09-10 Michael Goffioul <michael.goffioul@gmail.com>
1.11 ++
1.12 ++ * configure.in (SCRIPTS_EXE_SUFFIX): New substituted
1.13 ++ variable. Define to ".exe" for MSVC compilation.
1.14 ++ * octMakefile.in (SCRIPTS_EXE_SUFFIX): New variable.
1.15 ++ (DISTFILES): Add mkoctfile.cc.in, octave-config.cc.in and
1.16 ++ octave-bug.cc.in.
1.17 ++ (SHELL_SCRIPTS): Use SCRIPTS_EXE_SUFFIX.
1.18 ++ (mkoctfile.cc, mkoctfile$(EXEEXT)): New build rules.
1.19 ++ (octave-config.cc, octave-config$(EXEEXT)): Likewise.
1.20 ++ (octave-bug.cc, octave-bug$(EXEEXT)): Likewise.
1.21 ++ (install, install-strip, uninstall): Use SCRIPTS_EXE_SUFFIX.
1.22 ++ (maintainer-clean, distclean): Remove mkoctfile.[cc|o|exe],
1.23 ++ octave-config.[cc|o|exe] and octave-bug.[cc|o|exe].
1.24 ++ (clean): Remove mkoctfile$(EXEEXT), octave-config$(EXEEXT),
1.25 ++ octave-bug$(EXEEXT) and the corresponding object files.
1.26 ++
1.27 + 2008-09-08 John W. Eaton <jwe@octave.org>
1.28 +
1.29 + * mkoctfile.cc.in, octave-bug.cc.in, octave-config.cc.in: Style fixes.
1.30 +diff -r 229bd50e6e8f configure.in
1.31 +--- a/configure.in Tue Sep 09 18:56:51 2008 -0400
1.32 ++++ b/configure.in Wed Sep 10 13:00:54 2008 +0200
1.33 +@@ -1115,6 +1115,7 @@
1.34 + OCTINTERP_DLL_DEFS=
1.35 + OCTGRAPHICS_DLL_DEFS=
1.36 + library_path_var=LD_LIBRARY_PATH
1.37 ++SCRIPTS_EXE_SUFFIX=
1.38 + case "$canonical_host_type" in
1.39 + *-*-386bsd* | *-*-netbsd*)
1.40 + SH_LD=ld
1.41 +@@ -1188,6 +1189,7 @@
1.42 + OCTAVE_DLL_DEFS="-DOCTAVE_DLL"
1.43 + OCTINTERP_DLL_DEFS="-DOCTINTERP_DLL"
1.44 + OCTGRAPHICS_DLL_DEFS="-DOCTGRAPHICS_DLL"
1.45 ++ SCRIPTS_EXE_SUFFIX='$(EXEEXT)'
1.46 + ;;
1.47 + *-*-linux* | *-*-gnu*)
1.48 + MKOCTFILE_DL_LDFLAGS="-shared -Wl,-Bsymbolic"
1.49 +@@ -1319,6 +1321,7 @@
1.50 + AC_SUBST(OCTINTERP_DLL_DEFS)
1.51 + AC_SUBST(OCTGRAPHICS_DLL_DEFS)
1.52 + AC_SUBST(library_path_var)
1.53 ++AC_SUBST(SCRIPTS_EXE_SUFFIX)
1.54 +
1.55 + ### special checks for odd OS specific things.
1.56 + ###
1.57 +diff -r 229bd50e6e8f octMakefile.in
1.58 +--- a/octMakefile.in Tue Sep 09 18:56:51 2008 -0400
1.59 ++++ b/octMakefile.in Wed Sep 10 13:00:54 2008 +0200
1.60 +@@ -26,6 +26,8 @@
1.61 + abs_top_srcdir = @abs_top_srcdir@
1.62 + VPATH = @srcdir@
1.63 +
1.64 ++SCRIPTS_EXE_SUFFIX = @SCRIPTS_EXE_SUFFIX@
1.65 ++
1.66 + include $(TOPDIR)/Makeconf
1.67 +
1.68 + INSTALL = @INSTALL@
1.69 +@@ -46,9 +48,9 @@
1.70 + COPYING INSTALL NEWS \
1.71 + NEWS.[0-9] PROJECTS README README.Linux README.Windows \
1.72 + README.Cygwin README.MSVC README.kpathsea ROADMAP SENDING-PATCHES \
1.73 +- THANKS move-if-change octave-sh octave-bug.in \
1.74 +- octave-config.in missing mk-opts.pl mkinstalldirs \
1.75 +- mkoctfile.in run-octave.in ChangeLog ChangeLog.[0-9]
1.76 ++ THANKS move-if-change octave-sh octave-bug.cc.in octave-bug.in \
1.77 ++ octave-config.in octave-config.cc.in missing mk-opts.pl mkinstalldirs \
1.78 ++ mkoctfile.in mkoctfile.cc.in run-octave.in ChangeLog ChangeLog.[0-9]
1.79 +
1.80 + # Subdirectories in which to run `make all'.
1.81 + SUBDIRS = libcruft liboctave src scripts doc examples
1.82 +@@ -71,7 +73,8 @@
1.83 + $(localapioctfiledir) $(localveroctfiledir) $(imagedir) $(archlibdir) \
1.84 + $(localarchlibdir) $(localapiarchlibdir) $(localverarchlibdir)
1.85 +
1.86 +-SHELL_SCRIPTS = octave-bug octave-config mkoctfile run-octave
1.87 ++SHELL_SCRIPTS = octave-bug$(SCRIPTS_EXE_SUFFIX) octave-config$(SCRIPTS_EXE_SUFFIX) \
1.88 ++ mkoctfile$(SCRIPTS_EXE_SUFFIX) run-octave
1.89 +
1.90 + all: $(SHELL_SCRIPTS) $(filter-out libcruft liboctave, $(SUBDIRS)) dist-info-files
1.91 + @echo ""
1.92 +@@ -95,13 +98,40 @@
1.93 + @$(do-subst-config-vals)
1.94 + chmod a+rx $@
1.95 +
1.96 ++octave-bug.cc: octave-bug.cc.in Makeconf octMakefile
1.97 ++ @$(do-subst-config-vals)
1.98 ++
1.99 ++ifneq ($(EXEEXT),)
1.100 ++octave-bug$(EXEEXT): octave-bug.o
1.101 ++ $(LD_CXX) $(CPPFLAGS) $(ALL_CXXFLAGS) $(RDYNAMIC_FLAG) \
1.102 ++ $(ALL_LDFLAGS) -o $@ octave-bug.o
1.103 ++endif
1.104 ++
1.105 + octave-config: octave-config.in Makeconf octMakefile $(top_srcdir)/src/version.h
1.106 + @$(do-subst-default-vals)
1.107 + chmod a+rx $@
1.108 +
1.109 ++octave-config.cc: octave-config.cc.in Makeconf octMakefile
1.110 ++ @$(do-subst-default-vals)
1.111 ++
1.112 ++ifneq ($(EXEEXT),)
1.113 ++octave-config$(EXEEXT): octave-config.o
1.114 ++ $(LD_CXX) $(CPPFLAGS) $(ALL_CXXFLAGS) $(RDYNAMIC_FLAG) \
1.115 ++ $(ALL_LDFLAGS) -o $@ octave-config.o
1.116 ++endif
1.117 ++
1.118 + mkoctfile: mkoctfile.in Makeconf octMakefile $(top_srcdir)/src/version.h
1.119 + @$(do-subst-config-vals)
1.120 + chmod a+rx $@
1.121 ++
1.122 ++mkoctfile.cc: mkoctfile.cc.in Makeconf octMakefile
1.123 ++ @$(do-subst-config-vals)
1.124 ++
1.125 ++ifneq ($(EXEEXT),)
1.126 ++mkoctfile$(EXEEXT): mkoctfile.o
1.127 ++ $(LD_CXX) $(CPPFLAGS) $(ALL_CXXFLAGS) $(RDYNAMIC_FLAG) \
1.128 ++ $(ALL_LDFLAGS) -o $@ mkoctfile.o
1.129 ++endif
1.130 +
1.131 + run-octave: run-octave.in Makeconf octMakefile
1.132 + @$(do-subst-script-vals)
1.133 +@@ -122,25 +152,29 @@
1.134 + install install-strip ::
1.135 + $(top_srcdir)/mkinstalldirs $(addprefix $(DESTDIR), $(DIRS_TO_MAKE))
1.136 + rm -f $(DESTDIR)$(bindir)/octave-bug
1.137 +- $(INSTALL_SCRIPT) octave-bug $(DESTDIR)$(bindir)/octave-bug-$(version)
1.138 +- (cd $(DESTDIR)$(bindir); $(LN_S) octave-bug-$(version) $(DESTDIR)$(bindir)/octave-bug)
1.139 +- rm -f $(DESTDIR)$(bindir)/octave-config
1.140 ++ $(INSTALL_SCRIPT) octave-bug$(SCRIPTS_EXE_SUFFIX) \
1.141 ++ $(DESTDIR)$(bindir)/octave-bug-$(version)$(SCRIPTS_EXE_SUFFIX)
1.142 ++ (cd $(DESTDIR)$(bindir); $(LN_S) octave-bug-$(version)$(SCRIPTS_EXE_SUFFIX) \
1.143 ++ $(DESTDIR)$(bindir)/octave-bug$(SCRIPTS_EXE_SUFFIX))
1.144 ++ rm -f $(DESTDIR)$(bindir)/octave-config$(SCRIPTS_EXE_SUFFIX)
1.145 + $(INSTALL_SCRIPT) \
1.146 +- octave-config $(DESTDIR)$(bindir)/octave-config-$(version)
1.147 +- (cd $(DESTDIR)$(bindir); $(LN_S) octave-config-$(version) $(DESTDIR)$(bindir)/octave-config)
1.148 +- rm -f $(DESTDIR)$(bindir)/mkoctfile
1.149 +- $(INSTALL_SCRIPT) mkoctfile $(DESTDIR)$(bindir)/mkoctfile-$(version)
1.150 +- (cd $(DESTDIR)$(bindir); $(LN_S) mkoctfile-$(version) $(DESTDIR)$(bindir)/mkoctfile)
1.151 ++ octave-config$(SCRIPTS_EXE_SUFFIX) $(DESTDIR)$(bindir)/octave-config-$(version)$(SCRIPTS_EXE_SUFFIX)
1.152 ++ (cd $(DESTDIR)$(bindir); $(LN_S) octave-config-$(version)$(SCRIPTS_EXE_SUFFIX) \
1.153 ++ $(DESTDIR)$(bindir)/octave-config$(SCRIPTS_EXE_SUFFIX))
1.154 ++ rm -f $(DESTDIR)$(bindir)/mkoctfile$(SCRIPTS_EXE_SUFFIX)
1.155 ++ $(INSTALL_SCRIPT) mkoctfile$(SCRIPTS_EXE_SUFFIX) $(DESTDIR)$(bindir)/mkoctfile-$(version)$(SCRIPTS_EXE_SUFFIX)
1.156 ++ (cd $(DESTDIR)$(bindir); $(LN_S) mkoctfile-$(version)$(SCRIPTS_EXE_SUFFIX) \
1.157 ++ $(DESTDIR)$(bindir)/mkoctfile$(SCRIPTS_EXE_SUFFIX))
1.158 + $(INSTALL_DATA) config.h $(DESTDIR)$(octincludedir)/octave/config.h
1.159 + $(INSTALL_DATA) $(srcdir)/NEWS $(DESTDIR)$(datadir)/octave/$(version)/NEWS
1.160 +
1.161 + uninstall::
1.162 +- rm -f $(DESTDIR)$(bindir)/octave-bug
1.163 +- rm -f $(DESTDIR)$(bindir)/octave-bug-$(version)
1.164 +- rm -f $(DESTDIR)$(bindir)/octave-config
1.165 +- rm -f $(DESTDIR)$(bindir)/octave-config-$(version)
1.166 +- rm -f $(DESTDIR)$(bindir)/mkoctfile
1.167 +- rm -f $(DESTDIR)$(bindir)/mkoctfile-$(version)
1.168 ++ rm -f $(DESTDIR)$(bindir)/octave-bug$(SCRIPTS_EXE_SUFFIX)
1.169 ++ rm -f $(DESTDIR)$(bindir)/octave-bug-$(version)$(SCRIPTS_EXE_SUFFIX)
1.170 ++ rm -f $(DESTDIR)$(bindir)/octave-config$(SCRIPTS_EXE_SUFFIX)
1.171 ++ rm -f $(DESTDIR)$(bindir)/octave-config-$(version)$(SCRIPTS_EXE_SUFFIX)
1.172 ++ rm -f $(DESTDIR)$(bindir)/mkoctfile$(SCRIPTS_EXE_SUFFIX)
1.173 ++ rm -f $(DESTDIR)$(bindir)/mkoctfile-$(version)$(SCRIPTS_EXE_SUFFIX)
1.174 + rm -f $(DESTDIR)$(octincludedir)/octave/config.h
1.175 + rm -f $(DESTDIR)$(datadir)/octave/$(version)/NEWS
1.176 +
1.177 +@@ -167,10 +201,15 @@
1.178 + rm -f config.cache config.h config.log config.status
1.179 + rm -rf autom4te.cache
1.180 + rm -f $(SHELL_SCRIPTS)
1.181 ++ rm -f mkoctfile.cc octave-config.cc octave-bug.cc
1.182 + rm -f unistd.h
1.183 +
1.184 + maintainer-clean::
1.185 + rm -f configure config.h.in BUGS INSTALL.OCTAVE
1.186 ++
1.187 ++maintainer-clean distclean clean::
1.188 ++ rm -f mkoctfile$(EXEEXT) octave-config$(EXEEXT) octave-bug$(EXEEXT)
1.189 ++ rm -f mkoctfile.o octave-config.o octave-bug.o
1.190 +
1.191 + # Rules for making a source distribution.
1.192 +