* flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
* config.hh.in (HAVE_STL_DATA_METHOD): Add.
* stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
* configure.in: Use it.
*.pdf
*.png
*.ps
+*.pyc
*.svg
*.tely
*.tex
+*.twy
*.txt
*[0-9]pk
+*configure
*~
.gdbinit
+.gdbinit
.htaccess
.lineno
-1000.scsm
GNUmakefile
-System
-ab
-aclocal.m4
-add
-aly
-arial.pfa
autom4te.cache
-ay
-ay.tar.gz
-aybabtu.afm
-b
-bench.sh
-bla
-bla.lytex
-builddir.make
-c.afm
-c.pfb
-calls
-cf2.zip
-cffpats
-conf32255.sh
-config-g16.hh
-config-g16.make
-config-g164.hh
-config-g164.make
-config-g16nothread.hh
-config-g16nothread.make
-config-g16opt.hh
-config-g16opt.make
-config-opt.hh
-config-opt.make
-config-optsize.hh
-config-optsize.make
-config-prof.hh
-config-prof.make
-config-speed.hh
-config-speed.make
-config.hh
-config.make
-config.status
-configure
-cont
-cp.out
-crashes
+config-*.h
+config-*.make
custom.py
-d
-dif
-example-1.texstr
-exp.scm
-f.texstr
-f.textmetrics
-fcc.c
-fi.py
-fingpats
-firefox.icns
-fondu3FB3-2
-fondu_src-050825.tgz
-fontconfig
-fontconfig.c
-foo.c
-foo.make
-glob
-grob-array-pats
-gsbug-inv
-gspatch
-gstest
-hello
-hello.utf
-htpasswd
-install-sh
-invstrength
-les-nereides.dsc
-les-nereides.texstr
-les-nereides.textmetrics
-lib
-lilymydear.zip
-lilypond-2.6.0-2.7.0.diff
-lilypond-internals.texi
-lilypond-tools.zip
-log
-lppats
-lute_archives
-m
-makefile.pango
-makelily.py
-mehl
-mingw
-morgenlied.lpm
-morgenlied.texstr
-munix
-mxlpats
-ncsb-ttf
-ncsb-ttf.tar.gz
-notitle.zip
-o2
-ok
-optpars.py
-optparse.py
-optparse.pyc
-os
-otftest.c
+dummy.dep
+nohup.out
+*/out/*
out
-out-g16
-out-g164
-out-g16nothread
-out-g16opt
-out-opt
-out-optsize
-out-prof
-out-speed
+out-*
out-www
-out.ai
-out.pfa
-out.sk
-out.spsc
-p
-p2
-pango
-pango.c
-patch
-patent
-pats
-pic
-pl.afm
-polyprof
-quotpats
-re
-s
-s.py
-scons.cache
-setup.ini
-sf.ai
-sgz
-share
-sib.py
-simple-song.twy
socket-output
-stat
-string
-sys
-t
-t.gz
-t2.c
-talk.py
-test.py
-test.scm
-timtekst
-ud
-uninstalldirs
-update-rhsources.sh
-us
-usr
-ver
-webdif
-wrap.scm
-wtk-prof
-wtk-prof2
-wtk1-fugue2.scm
+2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
+
+ * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
+
+ * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
+
+ * config.hh.in (HAVE_STL_DATA_METHOD): Add.
+
+ * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
+
+ * configure.in: Use it.
+
2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
* scm/music-functions.scm (pitch-of-note): new function.
/* define if you have snprintf */
#define HAVE_SNPRINTF 0
+/* define if you have lrint */
+#define HAVE_LRINT 0
+
+/* define if you have stl data () method */
+#define HAVE_STL_DATA_METHOD 0
+
/* define if you have vsnprintf */
#define HAVE_VSNPRINTF 0
STEPMAKE_CXX(REQUIRED)
STEPMAKE_GXX(REQUIRED, 3.0.5)
STEPMAKE_CXXTEMPLATE
+STEPMAKE_STL_DATA_METHOD
STEPMAKE_LIB(REQUIRED)
STEPMAKE_DLOPEN
# Do not use bison 1.50 and 1.75.
#if !STD_VECTOR
/* Also declare vector, in the wrong way. */
-#include <algorithm>
#include <iostream>
#include <sstream>
#endif
#if STD_VECTOR
+#include "config.hh"
+
+#if HAVE_STL_DATA_METHOD
+#include <vector>
+#else /* !HAVE_STL_DATA_METHOD */
+#define vector __vector
#include <vector>
+#undef vector
+namespace std {
+ /* Interface without pointer arithmetic (iterator) semantics. */
+ template<typename T>
+ class vector : public __vector<T>
+ {
+ public:
+ typedef typename __vector<T>::iterator iterator;
+ typedef typename __vector<T>::const_iterator const_iterator;
+
+ vector<T> () : __vector<T> ()
+ {
+ }
+
+ vector<T> (const_iterator b, const_iterator e) : __vector<T> (b, e)
+ {
+ }
+
+ T*
+ data ()
+ {
+ return &(*this)[0];
+ }
+
+ T const*
+ data () const
+ {
+ return &(*this)[0];
+ }
+ };
+}
+#endif /* !HAVE_STL_DATA_METHOD */
namespace std {
do `make conf=CONF' to get output in ./out-CONF],
[CONFIGURATION=$enableval])
- ##'
+ ##'`#
test -n "$CONFIGURATION" && CONFIGSUFFIX="-$CONFIGURATION"
CONFIGFILE=config$CONFIGSUFFIX
fi
])
+AC_DEFUN(STEPMAKE_STL_DATA_METHOD, [
+ AC_LANG_PUSH(C++)
+ AC_CACHE_CHECK([for stl.data () method],
+ [stepmake_stl_data_method],
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+#include <vector>
+using namespace std;
+vector <int> v;
+(void) v.data ();
+]])],
+ [stepmake_stl_data_method=yes],
+ [stepmake_stl_data_method=no]))
+ if test $stepmake_stl_data_method = yes; then
+ AC_DEFINE(HAVE_STL_DATA_METHOD, 1, [define if stl classes have data () method])
+ fi
+ AC_LANG_POP(C++)
+])
+
+
AC_DEFUN(STEPMAKE_TEXMF_DIRS, [
# ugh
STEPMAKE_PROGS(KPSEWHICH, kpsewhich, OPTIONAL)