Use default encoding when reading system files if no encoding is given in file.
[pspp-builds.git] / Smake
diff --git a/Smake b/Smake
index 49f499fcc88e1406f578d5a83997c813cc75100a..78789d4fed818420b8567a8508ed155dc5fde5b9 100644 (file)
--- a/Smake
+++ b/Smake
-Makefile config.h: Makefile.in configure config.h.in install-sh
-       ./configure
+# -*- makefile -*-
 
-configure:  configure.ac aclocal.m4
-       autoconf
+# Adjust these to reflect where you've installed gnulib.
+GNULIB = ../gnulib
+GNULIB_TOOL = $(GNULIB)/gnulib-tool
+
+GNULIB_MODULES = \
+       argp \
+       assert \
+       byteswap \
+       c-ctype \
+       c-strtod \
+       close \
+       count-one-bits \
+       crypto/md4 \
+       dirname \
+       environ \
+       exit \
+       fatal-signal \
+       fcntl \
+       fpieee \
+       fprintf-posix \
+       full-read \
+       full-write \
+        fseeko \
+        ftello \
+       fwriteerror \
+       gethostname \
+       getline \
+       getlogin_r \
+       getopt \
+       gettext-h \
+       gettimeofday \
+       gitlog-to-changelog \
+       isfinite \
+       isinf \
+       isnan \
+       intprops \
+       inttostr \
+       localcharset \
+        mbchar \
+       memcasecmp \
+       memchr \
+       memcmp \
+       memmove \
+       mempcpy \
+       memset \
+       minmax \
+       mkstemp \
+       printf-posix \
+       printf-safe \
+       progname \
+       regex \
+       relocatable-prog \
+       rename \
+       round \
+       snprintf \
+       snprintf-posix \
+       sprintf-posix \
+       stdarg \
+       stdbool \
+       stdint \
+       stpcpy \
+       strcase \
+       strcspn \
+       strerror \
+       strftime \
+       strsep \
+       strtod \
+       strtok_r \
+       strtol \
+       strtoul \
+       sys_stat \
+       tempname \
+       tmpfile \
+       trunc \
+       unilbrk/ulc-width-linebreaks \
+       unistd \
+       unlocked-io \
+       vasprintf-posix \
+       vfprintf-posix \
+       vprintf-posix \
+       vsnprintf \
+       vsnprintf-posix \
+       vsprintf-posix \
+       xalloc \
+       xalloc-die \
+       xmalloca \
+       xmemdup0 \
+       xsize \
+       xstrndup \
+       xvasprintf
 
-config.h.in: configure.ac
+all: po/POTFILES.in
+       test -e ChangeLog || touch ChangeLog
+       test -d m4 || mkdir m4
+       echo '*' > m4/.cvsignore
+       touch m4/Makefile.am
+       $(GNULIB_TOOL) --import --no-changelog --m4-base=gl/m4 \
+               --source-base=gl --lib=libgl --tests-base=tests \
+               --doc-base=gl/doc --aux-dir=. --import $(GNULIB_MODULES)
+       echo '*' > gl/.cvsignore
+       echo '*' > gl/m4/.cvsignore
+       libtoolize --force --automake
+       autopoint --force
+       aclocal -I m4 -I gl/m4
+       autoconf
        autoheader
+       automake --add-missing --copy --no-force
+
+gettextize:
+       test -d m4 || mkdir m4
+       touch m4/Makefile.am
+       gettextize --force --no-changelog
 
-aclocal.m4:
-       aclocal -I m4
+po/POTFILES.in:
+       for f in `find src \( -name \*.[qc] -o -name \*.glade \) ! -name .\* -print` ; do \
+               if test $$f = src/libpspp/version.c; then continue; fi;   \
+               if test $$f = src/ui/gui/psppire-marshal.c; then continue; fi; \
+               if test -e `dirname $$f`/`basename $$f .c`.q ; then continue; fi; \
+               echo $$f ; \
+       done | sort | uniq > $@.tmp
+       if test ! -e $@ || ! cmp -s $@.tmp $@; then mv $@.tmp $@; fi
+       rm -f $@.tmp
 
+check: all
+       rm -rf _check
+       mkdir _check
+       cd _check && ../configure $(CONFIGUREFLAGS)
+       cd _check && make distcheck
+       rm -rf _check
 
-install-sh Makefile.in: Makefile.am aclocal.m4 config.h.in
-       automake --add-missing
+_build: all
+       test -d _build || mkdir _build
+       cd _build && ../configure $(CONFIGUREFLAGS)
 
+_debug: all
+       test -d _debug || mkdir _debug
+       cd _debug && ../configure $(CONFIGUREFLAGS) --enable-debug
 
+PO_FILES = po/ChangeLog po/Makefile po/Makefile.in po/Makefile.in.in   \
+po/POTFILES po/POTFILES.in po/Rules-quot po/boldquot.sed               \
+po/cat-id-tbl.c po/en@boldquot.header po/en@quot.header                        \
+po/insert-header.sin po/quot.sed po/remove-potcdate.sin po/stamp-po    \
+po/Makevars.template po/pspp.pot
 
-.PHONY: clean
 clean:
-       $(RM) config.sub config.guess
-       $(RM) -r autom4te.cache
-       $(RM) aclocal.m4
-       $(RM) missing mkinstalldirs
-       $(RM) install-sh
-       $(RM) configure
-       $(RM) depcomp
+       rm -f config.sub config.guess config.rpath
+       rm -f ABOUT-NLS
+       rm -fr autom4te.cache
+       rm -f aclocal.m4
+       rm -f missing mkinstalldirs
+       rm -f install-sh
+       rm -f configure Makefile 
+       rm -f depcomp
+       rm -rf intl gl
+       rm -f m4/*.m4
+       rm -f $(PO_FILES) po/*.gmo 
+       rm -f mdate-sh texinfo.tex
+       rm -f doc/stamp-vti
+       rm -f config.h.in~
+       rm -f config.h.in
+       find . -name Makefile.in -exec rm -f {} \; 
+       rm -f compile
+       rm -f ltmain.sh
+       rm -f reloc-ldflags install-reloc
 
+.PHONY: all gettextize potfiles clean