b68fce0d5227797084a24a420a917e6fc5b4b8cc
[pspp] / src / libpspp / automake.mk
1 # PSPP - a program for statistical analysis.
2 # Copyright (C) 2017 Free Software Foundation, Inc.
3
4 # This program is free software: you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation, either version 3 of the License, or
7 # (at your option) any later version.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13
14 # You should have received a copy of the GNU General Public License
15 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
16
17 ## Process this file with automake to produce Makefile.in  -*- makefile -*-
18
19
20 noinst_LTLIBRARIES += src/libpspp/liblibpspp.la
21
22 src_libpspp_liblibpspp_la_SOURCES = \
23         src/libpspp/abt.c \
24         src/libpspp/abt.h \
25         src/libpspp/argv-parser.c \
26         src/libpspp/argv-parser.h \
27         src/libpspp/array.c \
28         src/libpspp/array.h \
29         src/libpspp/assertion.h \
30         src/libpspp/bit-vector.h \
31         src/libpspp/bt.c \
32         src/libpspp/bt.h \
33         src/libpspp/cast.h \
34         src/libpspp/cmac-aes256.c \
35         src/libpspp/cmac-aes256.h \
36         src/libpspp/compiler.h \
37         src/libpspp/copyleft.c \
38         src/libpspp/copyleft.h \
39         src/libpspp/deque.c \
40         src/libpspp/deque.h \
41         src/libpspp/encoding-guesser.c \
42         src/libpspp/encoding-guesser.h \
43         src/libpspp/ext-array.c \
44         src/libpspp/ext-array.h \
45         src/libpspp/float-format.c \
46         src/libpspp/float-format.h \
47         src/libpspp/freaderror.c \
48         src/libpspp/freaderror.h \
49         src/libpspp/hash-functions.c \
50         src/libpspp/hash-functions.h \
51         src/libpspp/inflate.c \
52         src/libpspp/inflate.h \
53         src/libpspp/heap.c \
54         src/libpspp/heap.h \
55         src/libpspp/hmap.c \
56         src/libpspp/hmap.h \
57         src/libpspp/hmapx.c \
58         src/libpspp/hmapx.h \
59         src/libpspp/i18n.c \
60         src/libpspp/i18n.h \
61         src/libpspp/integer-format.c \
62         src/libpspp/integer-format.h \
63         src/libpspp/intern.c \
64         src/libpspp/intern.h \
65         src/libpspp/line-reader.c \
66         src/libpspp/line-reader.h \
67         src/libpspp/ll.c \
68         src/libpspp/ll.h \
69         src/libpspp/llx.c \
70         src/libpspp/llx.h \
71         src/libpspp/message.c \
72         src/libpspp/message.h \
73         src/libpspp/misc.c \
74         src/libpspp/misc.h \
75         src/libpspp/model-checker.c \
76         src/libpspp/model-checker.h \
77         src/libpspp/pool.c \
78         src/libpspp/pool.h \
79         src/libpspp/prompt.c \
80         src/libpspp/prompt.h \
81         src/libpspp/range-map.c \
82         src/libpspp/range-map.h \
83         src/libpspp/range-set.c \
84         src/libpspp/range-set.h \
85         src/libpspp/range-tower.c \
86         src/libpspp/range-tower.h \
87         src/libpspp/sparse-array.c \
88         src/libpspp/sparse-array.h \
89         src/libpspp/sparse-xarray.c \
90         src/libpspp/sparse-xarray.h \
91         src/libpspp/start-date.c \
92         src/libpspp/start-date.h \
93         src/libpspp/string-array.c \
94         src/libpspp/string-array.h \
95         src/libpspp/string-map.c \
96         src/libpspp/string-map.h \
97         src/libpspp/string-set.c \
98         src/libpspp/string-set.h \
99         src/libpspp/stringi-map.c \
100         src/libpspp/stringi-map.h \
101         src/libpspp/stringi-set.c \
102         src/libpspp/stringi-set.h \
103         src/libpspp/str.c \
104         src/libpspp/str.h \
105         src/libpspp/taint.c \
106         src/libpspp/taint.h \
107         src/libpspp/temp-file.c \
108         src/libpspp/temp-file.h \
109         src/libpspp/tower.c \
110         src/libpspp/tower.h \
111         src/libpspp/u8-istream.c \
112         src/libpspp/u8-istream.h \
113         src/libpspp/u8-line.c \
114         src/libpspp/u8-line.h \
115         src/libpspp/version.h \
116         src/libpspp/zip-private.h \
117         src/libpspp/zip-reader.c \
118         src/libpspp/zip-reader.h \
119         src/libpspp/zip-writer.c \
120         src/libpspp/zip-writer.h
121
122 DISTCLEANFILES+=src/libpspp/version.c
123
124 src_libpspp_liblibpspp_la_CPPFLAGS = \
125         -I $(top_srcdir)/src/libpspp \
126         $(AM_CPPFLAGS)
127
128 nodist_src_libpspp_liblibpspp_la_SOURCES = src/libpspp/version.c
129
130 src/libpspp/version.c: $(top_srcdir)/AUTHORS Makefile
131         @$(MKDIR_P) src/libpspp
132         $(AM_V_GEN)echo "/*     -*- mode: c; buffer-read-only: t -*-" > $@,tmp
133         $(AM_V_at)echo "   Generated by src/libpspp/automake.mk --- Do not edit.">> $@,tmp
134         $(AM_V_at)echo "" >> $@,tmp
135         $(AM_V_at)echo "   The following line is for the benefit of the perl module" >>$@,tmp
136         $(AM_V_at)echo "\$$VERSION='$(VERSION_FOR_PERL)';" >> $@,tmp
137         $(AM_V_at)echo "*/" >> $@,tmp
138         $(AM_V_at)echo "#include \"version.h\"" >> $@,tmp
139         $(AM_V_at)echo "const char bare_version[] = \"$(VERSION)\";" >> $@,tmp
140         $(AM_V_at)echo "const char version[] = \"GNU $(PACKAGE) $(VERSION)\";" >> $@,tmp
141         $(AM_V_at)printf "const char announced_version[] = \"GNU $(PACKAGE) $(VERSION)\"" >> $@,tmp
142         @case `echo $(VERSION) | $(SED) -e 's/[0-9][0-9]*\.[0-9]*\([0-9]\)\.[0-9][0-9]*/\1/'` in \
143           [13579]) printf "\"\\\nThis is an unreleased test version. It is not recommended for production use. Use at your own risk\"" >> $@,tmp \
144         ;;\
145         esac
146         $(AM_V_at)printf ";\n" >> $@,tmp
147         $(AM_V_at)echo "const char host_system[] = \"$(host_triplet)\";" >> $@,tmp
148         $(AM_V_at)echo "const char build_system[] = \"$(build_triplet)\";" >> $@,tmp
149         $(AM_V_at)echo "const char locale_dir[] = \"$(datadir)/locale\";" >> $@,tmp
150         $(AM_V_at)echo "const char examples_dir[] = \"$(examplesdir)\";" >> $@,tmp
151         $(AM_V_at)echo "const char *const authors[] = {" >> $@,tmp
152         $(AM_V_at)$(SED) -e 's/^/  \"/' -e 's/$$/\",/' $(top_srcdir)/AUTHORS >> $@,tmp
153         $(AM_V_at)echo "0 };" >> $@,tmp
154         $(AM_V_at)mv $@,tmp $@