Merge commit 'origin/stable'
[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         argp \
9         assert \
10         byteswap \
11         c-ctype \
12         c-strtod \
13         close \
14         crypto/md4 \
15         dirname \
16         environ \
17         exit \
18         fatal-signal \
19         fcntl \
20         fpieee \
21         fprintf-posix \
22         full-read \
23         full-write \
24         fseeko \
25         ftello \
26         fwriteerror \
27         gethostname \
28         getline \
29         getlogin_r \
30         getopt \
31         gettext-h \
32         gettimeofday \
33         gitlog-to-changelog \
34         isfinite \
35         isinf \
36         isnan \
37         intprops \
38         inttostr \
39         localcharset \
40         mbchar \
41         memcasecmp \
42         memchr \
43         memcmp \
44         memmove \
45         mempcpy \
46         memset \
47         minmax \
48         mkstemp \
49         printf-posix \
50         printf-safe \
51         progname \
52         regex \
53         relocatable-prog \
54         round \
55         snprintf \
56         snprintf-posix \
57         sprintf-posix \
58         stdarg \
59         stdbool \
60         stdint \
61         stpcpy \
62         strcase \
63         strcspn \
64         strerror \
65         strftime \
66         strsep \
67         strtod \
68         strtok_r \
69         strtol \
70         strtoul \
71         sys_stat \
72         tempname \
73         tmpfile \
74         trunc \
75         unilbrk/ulc-width-linebreaks \
76         unistd \
77         unlocked-io \
78         vasprintf-posix \
79         vfprintf-posix \
80         vprintf-posix \
81         vsnprintf \
82         vsnprintf-posix \
83         vsprintf-posix \
84         xalloc \
85         xalloc-die \
86         xmalloca \
87         xsize \
88         xstrndup \
89         xvasprintf
90
91 all: po/POTFILES.in
92         test -e ChangeLog || touch ChangeLog
93         test -d m4 || mkdir m4
94         echo '*' > m4/.cvsignore
95         touch m4/Makefile.am
96         $(GNULIB_TOOL) --import --no-changelog --m4-base=gl/m4 \
97                 --source-base=gl --lib=libgl --tests-base=tests \
98                 --doc-base=gl/doc --aux-dir=. --import $(GNULIB_MODULES)
99         echo '*' > gl/.cvsignore
100         echo '*' > gl/m4/.cvsignore
101         libtoolize --force --automake
102         autopoint --force
103         aclocal -I m4 -I gl/m4
104         autoconf
105         autoheader
106         automake --add-missing --copy --no-force
107
108 gettextize:
109         test -d m4 || mkdir m4
110         touch m4/Makefile.am
111         gettextize --force --no-changelog
112
113 po/POTFILES.in:
114         for f in `find src \( -name \*.[qc] -o -name \*.glade \) ! -name .\* -print` ; do \
115                 if test $$f = src/libpspp/version.c; then continue; fi;   \
116                 if test $$f = src/ui/gui/psppire-marshal.c; then continue; fi; \
117                 if test -e `dirname $$f`/`basename $$f .c`.q ; then continue; fi; \
118                 echo $$f ; \
119         done | sort | uniq > $@.tmp
120         if test ! -e $@ || ! cmp -s $@.tmp $@; then mv $@.tmp $@; fi
121         rm -f $@.tmp
122
123 check: all
124         rm -rf _check
125         mkdir _check
126         cd _check && ../configure $(CONFIGUREFLAGS)
127         cd _check && make distcheck
128         rm -rf _check
129
130 _build: all
131         test -d _build || mkdir _build
132         cd _build && ../configure $(CONFIGUREFLAGS)
133
134 _debug: all
135         test -d _debug || mkdir _debug
136         cd _debug && ../configure $(CONFIGUREFLAGS) --enable-debug
137
138 PO_FILES = po/ChangeLog po/Makefile po/Makefile.in po/Makefile.in.in    \
139 po/POTFILES po/POTFILES.in po/Rules-quot po/boldquot.sed                \
140 po/cat-id-tbl.c po/en@boldquot.header po/en@quot.header                 \
141 po/insert-header.sin po/quot.sed po/remove-potcdate.sin po/stamp-po     \
142 po/Makevars.template po/pspp.pot
143
144 clean:
145         rm -f config.sub config.guess config.rpath
146         rm -f ABOUT-NLS
147         rm -fr autom4te.cache
148         rm -f aclocal.m4
149         rm -f missing mkinstalldirs
150         rm -f install-sh
151         rm -f configure Makefile 
152         rm -f depcomp
153         rm -rf intl gl
154         rm -f m4/*.m4
155         rm -f $(PO_FILES) po/*.gmo 
156         rm -f mdate-sh texinfo.tex
157         rm -f doc/stamp-vti
158         rm -f config.h.in~
159         rm -f config.h.in
160         find . -name Makefile.in -exec rm -f {} \; 
161         rm -f compile
162         rm -f ltmain.sh
163         rm -f reloc-ldflags install-reloc
164
165 .PHONY: all gettextize potfiles clean