]> git.ipfire.org Git - thirdparty/bash.git/blob - examples/loadables/Makefile.in
bash-5.1 distribution sources and documentation
[thirdparty/bash.git] / examples / loadables / Makefile.in
1 #
2 # Simple makefile for the sample loadable builtins
3 #
4 # Copyright (C) 1996-2019 Free Software Foundation, Inc.
5
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
10 #
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
18 #
19
20 PACKAGE = @PACKAGE_NAME@
21 VERSION = @PACKAGE_VERSION@
22
23 # Include some boilerplate Gnu makefile definitions.
24 prefix = @prefix@
25
26 exec_prefix = @exec_prefix@
27 bindir = @bindir@
28 libdir = @libdir@
29 infodir = @infodir@
30 includedir = @includedir@
31
32 datarootdir = @datarootdir@
33
34 loadablesdir = @loadablesdir@
35 headersdir = @headersdir@
36
37 topdir = @top_srcdir@
38 BUILD_DIR = @BUILD_DIR@
39 srcdir = @srcdir@
40 VPATH = @srcdir@
41
42 # Support an alternate destination root directory for package building
43 DESTDIR =
44
45 INSTALL = @INSTALL@
46 INSTALL_PROGRAM = @INSTALL_PROGRAM@
47 INSTALL_SCRIPT = @INSTALL_SCRIPT@
48 INSTALL_DATA = @INSTALL_DATA@
49 INSTALLMODE= -m 0755
50
51 @SET_MAKE@
52 CC = @CC@
53 RM = rm -f
54
55 SHELL = @MAKE_SHELL@
56
57 host_os = @host_os@
58 host_cpu = @host_cpu@
59 host_vendor = @host_vendor@
60
61 CFLAGS = @CFLAGS@
62 LOCAL_CFLAGS = @LOCAL_CFLAGS@
63 DEFS = @DEFS@
64 LOCAL_DEFS = @LOCAL_DEFS@
65
66 CPPFLAGS = @CPPFLAGS@
67
68 BASHINCDIR = ${topdir}/include
69
70 SUPPORT_SRC = $(topdir)/support/
71
72 LIBBUILD = ${BUILD_DIR}/lib
73
74 INTL_LIBSRC = ${topdir}/lib/intl
75 INTL_BUILDDIR = ${LIBBUILD}/intl
76 INTL_INC = @INTL_INC@
77 LIBINTL_H = @LIBINTL_H@
78
79 CCFLAGS = $(DEFS) $(LOCAL_DEFS) $(LOCAL_CFLAGS) $(CPPFLAGS) $(CFLAGS)
80
81 #
82 # These values are generated for configure by ${topdir}/support/shobj-conf.
83 # If your system is not supported by that script, but includes facilities for
84 # dynamic loading of shared objects, please update the script and send the
85 # changes to bash-maintainers@gnu.org.
86 #
87 SHOBJ_CC = @SHOBJ_CC@
88 SHOBJ_CFLAGS = @SHOBJ_CFLAGS@
89 SHOBJ_LD = @SHOBJ_LD@
90 SHOBJ_LDFLAGS = @SHOBJ_LDFLAGS@ @LDFLAGS@
91 SHOBJ_XLDFLAGS = @SHOBJ_XLDFLAGS@
92 SHOBJ_LIBS = @SHOBJ_LIBS@
93 SHOBJ_STATUS = @SHOBJ_STATUS@
94
95 INC = -I. -I.. -I$(topdir) -I$(topdir)/lib -I$(topdir)/builtins -I${srcdir} \
96 -I$(BASHINCDIR) -I$(BUILD_DIR) -I$(LIBBUILD) \
97 -I$(BUILD_DIR)/builtins $(INTL_INC)
98
99 .c.o:
100 $(SHOBJ_CC) $(SHOBJ_CFLAGS) $(CCFLAGS) $(INC) -c -o $@ $<
101
102
103 ALLPROG = print truefalse sleep finfo logname basename dirname fdflags \
104 tty pathchk tee head mkdir rmdir mkfifo mktemp printenv id whoami \
105 uname sync push ln unlink realpath strftime mypid setpgid seq rm \
106 accept csv cut
107 OTHERPROG = necho hello cat pushd stat asort
108
109 all: $(SHOBJ_STATUS)
110
111 supported: $(ALLPROG)
112 others: $(OTHERPROG)
113
114 unsupported:
115 @echo "Your system (${host_os}) is not supported by the"
116 @echo "${topdir}/support/shobj-conf script."
117 @echo "If your operating system provides facilities for dynamic"
118 @echo "loading of shared objects using the dlopen(3) interface,"
119 @echo "please update the script and re-run configure."
120 @echo "Please send the changes you made to bash-maintainers@gnu.org"
121 @echo "for inclusion in future bash releases."
122
123 everything: supported others
124
125 print: print.o
126 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ print.o $(SHOBJ_LIBS)
127
128 necho: necho.o
129 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ necho.o $(SHOBJ_LIBS)
130
131 hello: hello.o
132 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ hello.o $(SHOBJ_LIBS)
133
134 truefalse: truefalse.o
135 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ truefalse.o $(SHOBJ_LIBS)
136
137 accept: accept.o
138 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ accept.o $(SHOBJ_LIBS)
139
140 sleep: sleep.o
141 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ sleep.o $(SHOBJ_LIBS)
142
143 finfo: finfo.o
144 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ finfo.o $(SHOBJ_LIBS)
145
146 cat: cat.o
147 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ cat.o $(SHOBJ_LIBS)
148
149 rm: rm.o
150 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ rm.o $(SHOBJ_LIBS)
151
152 fdflags: fdflags.o
153 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ fdflags.o $(SHOBJ_LIBS)
154
155 seq: seq.o
156 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ seq.o $(SHOBJ_LIBS)
157
158 logname: logname.o
159 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ logname.o $(SHOBJ_LIBS)
160
161 basename: basename.o
162 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ basename.o $(SHOBJ_LIBS)
163
164 dirname: dirname.o
165 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ dirname.o $(SHOBJ_LIBS)
166
167 tty: tty.o
168 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ tty.o $(SHOBJ_LIBS)
169
170 pathchk: pathchk.o
171 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ pathchk.o $(SHOBJ_LIBS)
172
173 tee: tee.o
174 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ tee.o $(SHOBJ_LIBS)
175
176 mkdir: mkdir.o
177 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ mkdir.o $(SHOBJ_LIBS)
178
179 rmdir: rmdir.o
180 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ rmdir.o $(SHOBJ_LIBS)
181
182 mkfifo: mkfifo.o
183 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ mkfifo.o $(SHOBJ_LIBS)
184
185 mktemp: mktemp.o
186 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ mktemp.o $(SHOBJ_LIBS)
187
188 head: head.o
189 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ head.o $(SHOBJ_LIBS)
190
191 printenv: printenv.o
192 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ printenv.o $(SHOBJ_LIBS)
193
194 id: id.o
195 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ id.o $(SHOBJ_LIBS)
196
197 whoami: whoami.o
198 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ whoami.o $(SHOBJ_LIBS)
199
200 uname: uname.o
201 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ uname.o $(SHOBJ_LIBS)
202
203 sync: sync.o
204 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ sync.o $(SHOBJ_LIBS)
205
206 push: push.o
207 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ push.o $(SHOBJ_LIBS)
208
209 ln: ln.o
210 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ ln.o $(SHOBJ_LIBS)
211
212 unlink: unlink.o
213 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ unlink.o $(SHOBJ_LIBS)
214
215 realpath: realpath.o
216 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ realpath.o $(SHOBJ_LIBS)
217
218 csv: csv.o
219 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ csv.o $(SHOBJ_LIBS)
220
221 cut: cut.o
222 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ cut.o $(SHOBJ_LIBS)
223
224 strftime: strftime.o
225 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ strftime.o $(SHOBJ_LIBS)
226
227 mypid: mypid.o
228 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ mypid.o $(SHOBJ_LIBS)
229
230 setpgid: setpgid.o
231 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ setpgid.o $(SHOBJ_LIBS)
232
233 stat: stat.o
234 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ stat.o $(SHOBJ_LIBS)
235
236 asort: asort.o
237 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ asort.o $(SHOBJ_LIBS)
238
239 # pushd is a special case. We use the same source that the builtin version
240 # uses, with special compilation options.
241 #
242 pushd.c: ${topdir}/builtins/pushd.def
243 $(RM) $@
244 ${BUILD_DIR}/builtins/mkbuiltins -D ${topdir}/builtins ${topdir}/builtins/pushd.def
245
246 pushd.o: pushd.c
247 $(RM) $@
248 $(SHOBJ_CC) -DHAVE_CONFIG_H -DPUSHD_AND_POPD -DLOADABLE_BUILTIN $(SHOBJ_CFLAGS) $(CFLAGS) $(CPPFLAGS) $(INC) -c -o $@ $<
249
250 pushd: pushd.o
251 $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ pushd.o $(SHOBJ_LIBS)
252
253 clean:
254 $(RM) $(ALLPROG) $(OTHERPROG) *.o
255 -( cd perl && ${MAKE} ${MFLAGS} $@ )
256
257 mostlyclean: clean
258 -( cd perl && ${MAKE} ${MFLAGS} $@ )
259
260 distclean maintainer-clean: clean
261 $(RM) Makefile Makefile.inc pushd.c
262 -( cd perl && ${MAKE} ${MFLAGS} $@ )
263
264 installdirs:
265 @${SHELL} $(SUPPORT_SRC)mkinstalldirs $(DESTDIR)$(loadablesdir)
266
267 install-dev: installdirs
268 @$(INSTALL_DATA) Makefile.inc $(DESTDIR)$(loadablesdir)/Makefile.inc
269 @$(INSTALL_DATA) $(srcdir)/loadables.h $(DESTDIR)$(loadablesdir)/loadables.h
270 @( cd $(BUILD_DIR) && ${MAKE} ${MFLAGS} DESTDIR="$(DESTDIR)" install-headers)
271
272 install-supported: all installdirs install-dev
273 @echo installing example loadable builtins in $(DESTDIR)${loadablesdir}
274 @for prog in ${ALLPROG}; do \
275 echo $$prog ; \
276 $(INSTALL_PROGRAM) $(INSTALLMODE) $$prog $(DESTDIR)$(loadablesdir)/$$prog ;\
277 done
278
279 uninstall-dev:
280 -$(RM) $(DESTDIR)$(loadablesdir)/Makefile.inc $(DESTDIR)$(loadablesdir)/loadables.h
281 -( cd $(BUILD_DIR) && ${MAKE} ${MFLAGS} DESTDIR="$(DESTDIR)" uninstall-headers)
282
283 uninstall-supported: uninstall-dev
284 -( cd $(DESTDIR)${loadablesdir} && $(RM) ${ALLPROG} )
285
286 install-unsupported:
287 uninstall-unsupported:
288
289 install: install-$(SHOBJ_STATUS)
290 uninstall: uninstall-$(SHOBJ_STATUS)
291
292 print.o: print.c
293 truefalse.o: truefalse.c
294 accept.o: accept.c
295 sleep.o: sleep.c
296 finfo.o: finfo.c
297 logname.o: logname.c
298 basename.o: basename.c
299 dirname.o: dirname.c
300 tty.o: tty.c
301 pathchk.o: pathchk.c
302 tee.o: tee.c
303 head.o: head.c
304 rmdir.o: rmdir.c
305 necho.o: necho.c
306 hello.o: hello.c
307 cat.o: cat.c
308 csv.o: csv.c
309 cut.o: cut.c
310 printenv.o: printenv.c
311 id.o: id.c
312 whoami.o: whoami.c
313 uname.o: uname.c
314 sync.o: sync.c
315 push.o: push.c
316 mkdir.o: mkdir.c
317 mktemp.o: mktemp.c
318 realpath.o: realpath.c
319 strftime.o: strftime.c
320 setpgid.o: setpgid.c
321 stat.o: stat.c
322 fdflags.o: fdflags.c
323 seq.o: seq.c
324 asort.o: asort.c