Made the code relocatable (using the relocate function from gnulib).
[pspp-builds.git] / Smake
1 # -*- makefile -*-
2
3 # Adjust these to reflect where you've installed gnulib.
4 GNULIB = ../gnulib
5 GNULIB_TOOL = $(GNULIB)/gnulib-tool
6
7 GNULIB_MODULES = \
8         alloca \
9         alloca-opt \
10         assert \
11         byteswap \
12         c-ctype \
13         c-strtod \
14         dirname \
15         exit \
16         full-read \
17         full-write \
18         gethostname \
19         getline \
20         getlogin_r \
21         getopt \
22         gettext-h \
23         intprops \
24         inttostr \
25         linebreak \
26         localcharset \
27         mbchar \
28         memcasecmp \
29         memchr \
30         memcmp \
31         memmem \
32         memmove \
33         mempcpy \
34         memset \
35         minmax \
36         mkstemp \
37         progname \
38         relocatable-prog \
39         snprintf \
40         stdarg \
41         stdbool \
42         stdint \
43         stpcpy \
44         strcase \
45         strcspn \
46         strerror \
47         strftime \
48         strsep \
49         strtod \
50         strtok_r \
51         strtol \
52         strtoul \
53         sys_stat \
54         tmpfile \
55         unistd \
56         unlocked-io \
57         vsnprintf \
58         xalloc \
59         xalloc-die \
60         xsize \
61         xstrndup \
62         xvasprintf
63
64 all: po/POTFILES.in
65         test -d m4 || mkdir m4
66         echo '*' > m4/.cvsignore
67         touch m4/Makefile.am
68         $(GNULIB_TOOL) --import --no-changelog --m4-base=gl/m4 \
69                 --source-base=gl --lib=libgl --tests-base=tests \
70                 --doc-base=gl/doc --import $(GNULIB_MODULES)
71         echo '*' > gl/.cvsignore
72         echo '*' > gl/m4/.cvsignore
73         libtoolize --force --automake
74         autopoint --force
75         aclocal -I m4 -I gl/m4
76         autoconf
77         autoheader
78         automake --add-missing --copy --no-force
79
80 gettextize:
81         test -d m4 || mkdir m4
82         touch m4/Makefile.am
83         gettextize --force --no-changelog
84
85 po/POTFILES.in:
86         for f in `find src \( -name \*.[qc] -o -name \*.glade \) ! -name .\* -print` ; do \
87                 if test $$f = src/libpspp/version.c; then continue; fi;   \
88                 if test -e `dirname $$f`/`basename $$f .c`.q ; then continue; fi; \
89                 echo $$f ; \
90         done | sort | uniq > $@.tmp
91         if test ! -e $@ || ! cmp -s $@.tmp $@; then mv $@.tmp $@; fi
92         rm -f $@.tmp
93
94 check: all
95         rm -rf _check
96         mkdir _check
97         cd _check && ../configure $(CONFIGUREFLAGS)
98         cd _check && make distcheck
99         rm -rf _check
100
101 _build: all
102         test -d _build || mkdir _build
103         cd _build && ../configure $(CONFIGUREFLAGS)
104
105 _debug: all
106         test -d _debug || mkdir _debug
107         cd _debug && ../configure $(CONFIGUREFLAGS) --enable-debug
108
109 PO_FILES = po/ChangeLog po/Makefile po/Makefile.in po/Makefile.in.in    \
110 po/POTFILES po/POTFILES.in po/Rules-quot po/boldquot.sed                \
111 po/cat-id-tbl.c po/en@boldquot.header po/en@quot.header                 \
112 po/insert-header.sin po/quot.sed po/remove-potcdate.sin po/stamp-po     \
113 po/Makevars.template po/pspp.pot
114
115 clean:
116         rm -f config.sub config.guess config.rpath
117         rm -f ABOUT-NLS
118         rm -fr autom4te.cache
119         rm -f aclocal.m4
120         rm -f missing mkinstalldirs
121         rm -f install-sh
122         rm -f configure Makefile 
123         rm -f depcomp
124         rm -rf intl gl
125         rm -f m4/*.m4
126         rm -f $(PO_FILES) po/*.gmo 
127         rm -f mdate-sh texinfo.tex
128         rm -f doc/stamp-vti
129         rm -f config.h.in~
130         rm -f config.h.in
131         find . -name Makefile.in -exec rm -f {} \; 
132         rm -f compile
133         rm -f ltmain.sh
134
135 .PHONY: all gettextize potfiles clean