Checkin of new directory structure.
[pspp-builds.git] / Smake
diff --git a/Smake b/Smake
index eae10349e95931c1f01a6450ee6157bf0ceec484..b4ed61a8280670fdd1c1931b2449d52ef5b75457 100644 (file)
--- a/Smake
+++ b/Smake
@@ -1,47 +1,70 @@
-Makefile po/Makefile.in: Makefile.in configure install-sh config.h.in po/Makefile.in.in
-       ./configure
+# -*- makefile -*-
 
-configure:  configure.ac aclocal.m4
-       autoconf
+GNULIB = ../gnulib
+GNULIB_TOOL = $(GNULIB)/gnulib-tool
 
-config.h.in: configure.ac
-       autoheader
+GNULIB_MODULES = alloca alloca-opt assert full-read full-write         \
+gethostname getline getlogin_r getopt gettext memcasecmp memchr memcmp \
+memmem memmove memset progname readlink restrict snprintf stat-macros  \
+stdbool stpcpy strcase strcspn strerror strftime strstr strtod         \
+strtok_r strtol strtoul vsnprintf xalloc xalloc-die xreadlink          \
+xvasprintf
 
-aclocal.m4:
-       aclocal -I m4
+all: po/POTFILES.in
+       test -d m4 || mkdir m4
+       touch m4/Makefile.am
+       $(GNULIB_TOOL) --import --no-changelog --m4-base=gl/m4 \
+               --source-base=gl --lib=libgl --tests-base=tests \
+               --import $(GNULIB_MODULES)
+       autoreconf --install
 
+gettextize:
+       test -d m4 || mkdir m4
+       touch m4/Makefile.am
+       gettextize -f -c --intl --no-changelog
 
-install-sh Makefile.in: intl Makefile.am aclocal.m4 config.h.in ABOUT-NLS
-       automake --add-missing
+po/POTFILES.in:
+       for f in `find src -name \*.[qc] ! -name .\* -print \
+                 | sed 's/\.[qc]$$//'`; do \
+               if test $$f = src/libpspp/version.c; then break; fi;              \
+               if test -e $$f.q; then echo $$f.q; else echo $$f.c; fi    \
+       done | sort | uniq > $@.tmp
+       if test ! -e $@ || ! cmp -s $@.tmp $@; then mv $@.tmp $@; fi
+       rm -f $@.tmp
 
-po/Makefile.in.in intl ABOUT-NLS:
-       ./gettextize -f -c --no-changelog --intl
+check: all
+       rm -rf _check
+       mkdir _check
+       cd _check && ../configure $(CONFIGUREFLAGS)
+       cd _check && make distcheck
+       rm -rf _check
 
+_build: all
+       test -d _build || mkdir _build
+       cd _build && ../configure $(CONFIGUREFLAGS)
 
+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
 
-.PHONY: clean
 clean:
-       $(RM) config.sub config.guess
-       $(RM) ABOUT-NLS
-       $(RM) -r autom4te.cache
-       $(RM) aclocal.m4
-       $(RM) missing mkinstalldirs
-       $(RM) install-sh
-       $(RM) configure Makefile Makefile.in
-       $(RM) depcomp
-       $(RM) -r m4 intl
-       $(RM) po/ChangeLog \
-       po/Makefile \
-       po/Makefile.in \
-       po/Makefile.in.in \
-       po/POTFILES \
-       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
+       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)
+       rm -f mdate-sh texinfo.tex
+       rm -f doc/stamp-vti
+       rm -f config.h.in~
+       find . -name Makefile.in -exec rm -f {} \; 
+       rm -f compile
+
+.PHONY: all gettextize potfiles clean