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