Thu, 04 Oct 2012 20:30:05 +0200
Correct out of date build configuration, porting to Solaris 11 network
link infrastructure and new libpcap logic. This additionally allows for
device drivers in subdirectories of /dev. Correct packaged nmap
personalities and signatures to work out of the box. Finally, hack
arpd logic to properly close sockets and quit on TERM by repeating
signaling in the run command script. Sadly, all this fails to correct
the run time behaviour of honeyd which fails to bind to the IP layer.
1 # Makefile for GNU patch.
3 # Copyright (C) 1993, 1997, 1998, 1999, 2001, 2002, 2003, 2009
4 # Free Software Foundation, Inc.
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 2, or (at your option)
9 # any later version.
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.
16 # You should have received a copy of the GNU General Public License
17 # along with this program; see the file COPYING.
18 # If not, write to the Free Software Foundation,
19 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21 #### Start of system configuration section. ####
23 srcdir = @srcdir@
24 VPATH = @srcdir@
26 @SET_MAKE@
28 CC = @CC@
29 ed_PROGRAM = @ed_PROGRAM@
30 INSTALL = @INSTALL@
31 INSTALL_PROGRAM = @INSTALL_PROGRAM@
32 INSTALL_DATA = @INSTALL_DATA@
33 TEST_SHELL = @TEST_SHELL@
34 transform = @program_transform_name@
36 CFLAGS = @CFLAGS@
37 CPPFLAGS = @CPPFLAGS@
38 DEFS = @DEFS@
39 EXEEXT = @EXEEXT@
40 LDFLAGS = @LDFLAGS@
41 LIBOBJDIR = gl/lib/
42 LIBOBJS = @LIBOBJS@ ${LIBOBJDIR}full-write$U.o
43 LIBS = @LIBS@
44 OBJEXT = @OBJEXT@
45 PACKAGE_NAME = @PACKAGE_NAME@
46 PACKAGE_VERSION = @PACKAGE_VERSION@
47 STDBOOL_H = @STDBOOL_H@
48 GETOPT_H = @GETOPT_H@
49 HAVE__BOOL = @HAVE__BOOL@
50 ENABLE_MERGE = @ENABLE_MERGE@
52 prefix = @prefix@
53 exec_prefix = @exec_prefix@
54 bindir = @bindir@
56 # Where to put the manual pages.
57 datarootdir = @datarootdir@
58 mandir = @mandir@
59 man1dir = $(mandir)/man1
60 # Extension (including `.') for the manual page filenames.
61 man1ext = .1
63 # Hook for nonstandard builds.
64 CONFIG_STATUS = config.status
66 #### End of system configuration section. ####
68 SHELL = /bin/sh
70 LIBSRCS = \
71 gl/lib/argmatch.c \
72 gl/lib/backupfile.c \
73 gl/lib/basename.c \
74 gl/lib/dirname.c \
75 gl/lib/error.c \
76 gl/lib/exitfail.c \
77 gl/lib/full-write.c \
78 gl/lib/getopt1.c \
79 gl/lib/getopt.c \
80 gl/lib/hash.c \
81 gl/lib/malloc.c \
82 gl/lib/mbrtowc.c \
83 gl/lib/memchr.c \
84 gl/lib/quotearg.c \
85 gl/lib/quote.c \
86 gl/lib/realloc.c \
87 gl/lib/rename.c \
88 gl/lib/safe-read.c \
89 gl/lib/safe-write.c \
90 gl/lib/strcasecmp.c \
91 gl/lib/stripslash.c \
92 gl/lib/strncasecmp.c \
93 gl/lib/strndup.c \
94 gl/lib/xmalloc.c \
95 gl/lib/xstrndup.c
97 SRCS = $(LIBSRCS) \
98 src/inp.c \
99 src/maketime.c \
100 src/merge.c \
101 src/partime.c \
102 src/patch.c \
103 src/pch.c \
104 src/quotesys.c \
105 src/util.c \
106 src/version.c
108 MERGEOBJ = src/merge.$(OBJEXT)
110 OBJS = $(LIBOBJS) $(MERGEOBJ) \
111 src/inp.$(OBJEXT) \
112 src/maketime.$(OBJEXT) \
113 src/partime.$(OBJEXT) \
114 src/patch.$(OBJEXT) \
115 src/pch.$(OBJEXT) \
116 src/quotesys.$(OBJEXT) \
117 src/util.$(OBJEXT) \
118 src/version.$(OBJEXT)
120 LIBHDRS = \
121 gl/lib/argmatch.h \
122 gl/lib/backupfile.h \
123 gl/lib/dirname.h \
124 gl/lib/error.h \
125 gl/lib/exitfail.h \
126 gl/lib/full-write.h \
127 gl/lib/getopt.hin \
128 gl/lib/getopt_int.h \
129 gl/lib/gettext.h \
130 gl/lib/hash.h \
131 gl/lib/minmax.h \
132 gl/lib/quotearg.h \
133 gl/lib/quote.h \
134 gl/lib/safe-write.h \
135 gl/lib/stdbool.hin \
136 gl/lib/unlocked-io.h \
137 gl/lib/verify.h \
138 gl/lib/xalloc.h \
139 gl/lib/xstrndup.h
141 HDRS = $(LIBHDRS) \
142 src/bestmatch.h \
143 src/common.h \
144 src/diffseq.h \
145 src/inp.h \
146 src/maketime.h \
147 src/partime.h \
148 src/pch.h \
149 src/quotesys.h \
150 src/util.h \
151 src/version.h
153 MISC = \
154 AUTHORS \
155 COPYING \
156 ChangeLog \
157 INSTALL \
158 Makefile.in \
159 NEWS \
160 README \
161 VERSION \
162 aclocal.m4 \
163 config.guess\
164 config.hin \
165 config.sub \
166 configure \
167 configure.ac \
168 install-sh \
169 mkinstalldirs \
170 patch.man \
171 tests/test-lib.sh \
172 update-version.sh
174 DISTFILES = $(MISC) $(SRCS) $(HDRS) $(M4FILES) \
175 pc/chdirsaf.c \
176 pc/djgpp/config.sed \
177 pc/djgpp/configure.bat \
178 pc/djgpp/configure.sed \
179 pc/djgpp/README
181 MORE_DISTFILES = $(TESTS) $(BROKEN_TESTS)
183 patch_name = `echo patch | sed '$(transform)'`
185 all:: src/patch$(EXEEXT)
187 info::
188 installcheck::
190 TESTS = \
191 tests/asymmetric-hunks \
192 tests/backup-prefix-suffix \
193 tests/corrupt-reject-files \
194 tests/create-delete \
195 tests/crlf-handling \
196 tests/filename-choice \
197 tests/global-reject-files \
198 tests/inname \
199 tests/line-numbers \
200 tests/merge \
201 tests/munged-context-format \
202 tests/need-filename \
203 tests/no-newline-triggers-assert \
204 tests/preserve-c-function-names \
205 tests/preserve-mode-and-timestamp \
206 tests/reject-format \
207 tests/remember-backup-files \
208 tests/remember-reject-files \
209 tests/unmodified-files
211 BROKEN_TESTS = \
212 tests/dash-o-append
214 check:: $(TESTS)
215 @echo All tests succeeded!
217 .PHONY: $(TESTS) $(BROKEN_TESTS)
218 $(TESTS) $(BROKEN_TESTS): all
219 @echo "[$@]"
220 @srcdir=$(srcdir)/tests $(TEST_SHELL) $(srcdir)/$@
222 DEFINE_ENABLE_MERGE = -DENABLE_MERGE
223 COMPILE = $(CC) -c $(CPPFLAGS) $(DEFS) -Ded_PROGRAM=\"$(ed_PROGRAM)\" \
224 $(DEFINE_ENABLE_MERGE) -I. -I$(srcdir)/src -I$(srcdir)/gl/lib $(CFLAGS)
226 .c.$(OBJEXT):
227 @mkdir -p $(@D)
228 $(COMPILE) -o $@ $<
230 src/patch$(EXEEXT): $(OBJS)
231 $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(OBJS) $(LIBS)
233 install:: all
234 $(SHELL) $(srcdir)/mkinstalldirs $(DESTDIR)$(bindir) $(DESTDIR)$(man1dir)
235 $(INSTALL_PROGRAM) src/patch$(EXEEXT) $(DESTDIR)$(bindir)/$(patch_name)$(EXEEXT)
236 $(INSTALL_DATA) $(srcdir)/patch.man $(DESTDIR)$(man1dir)/$(patch_name)$(man1ext)
238 install-strip::
239 $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' install
241 uninstall::
242 rm -f $(DESTDIR)$(bindir)/$(patch_name)$(EXEEXT) \
243 $(DESTDIR)$(man1dir)/$(patch_name)$(man1ext)
245 Makefile: Makefile.in $(CONFIG_STATUS)
246 $(SHELL) $(CONFIG_STATUS)
247 FORCE:
248 VERSION: FORCE
249 @cd $(srcdir) && $(SHELL) ./update-version.sh VERSION
250 config.status: configure
251 $(SHELL) $(CONFIG_STATUS) --recheck
252 configure: configure.ac $(srcdir)/aclocal.m4 $(srcdir)/VERSION
253 cd $(srcdir) && autoconf --force
254 config.hin: configure.ac $(srcdir)/aclocal.m4
255 cd $(srcdir) && autoheader --force
257 # We need the following in order to create <getopt.h> when the system
258 # doesn't have one that works with the given compiler.
259 getopt.h: gl/lib/getopt.hin
260 rm -f $@-t $@
261 { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
262 cat $(srcdir)/gl/lib/getopt.hin; \
263 } > $@-t
264 mv -f $@-t $@
266 # We need the following in order to create <stdbool.h> when the system
267 # doesn't have one that works.
268 #gl/lib/stdbool.h: gl/lib/stdbool.hin
269 stdbool.h: gl/lib/stdbool.hin
270 rm -f $@-t $@
271 { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
272 sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' \
273 < $(srcdir)/gl/lib/stdbool.hin; \
274 } > $@-t
275 mv $@-t $@
277 LIBM4FILES = \
278 gl/m4/argmatch.m4 \
279 gl/m4/backupfile.m4 \
280 gl/m4/d-ino.m4 \
281 gl/m4/dirname.m4 \
282 gl/m4/dos.m4 \
283 gl/m4/double-slash-root.m4 \
284 gl/m4/error.m4 \
285 gl/m4/exitfail.m4 \
286 gl/m4/extensions.m4 \
287 gl/m4/getopt.m4 \
288 gl/m4/gettext.m4 \
289 gl/m4/hash.m4 \
290 gl/m4/inline.m4 \
291 gl/m4/malloc.m4 \
292 gl/m4/mbrtowc.m4 \
293 gl/m4/mbstate_t.m4 \
294 gl/m4/memchr.m4 \
295 gl/m4/minmax.m4 \
296 gl/m4/onceonly.m4 \
297 gl/m4/quotearg.m4 \
298 gl/m4/quote.m4 \
299 gl/m4/realloc.m4 \
300 gl/m4/rename.m4 \
301 gl/m4/safe-write.m4 \
302 gl/m4/ssize_t.m4 \
303 gl/m4/stdbool.m4 \
304 gl/m4/strcase.m4 \
305 gl/m4/strndup.m4 \
306 gl/m4/unlocked-io.m4 \
307 gl/m4/utimbuf.m4 \
308 gl/m4/xalloc.m4 \
309 gl/m4/xstrndup.m4
311 M4FILES = $(LIBM4FILES) \
312 m4/mkdir.m4 \
313 m4/setmode.m4
315 $(srcdir)/aclocal.m4: $(M4FILES)
316 aclocal -I m4 -I gl/m4
318 TAGS: $(HDRS) $(SRCS)
319 etags $(HDRS) $(SRCS)
321 mostlyclean::
322 rm -f core* *core src/*.$(OBJEXT) gl/lib/*.$(OBJEXT) \
323 stdbool.h getopt.h gl/lib/*.h-t
325 clean:: mostlyclean
326 rm -f src/patch$(EXEEXT)
328 distclean:: clean
329 rm -f Makefile config.cache config.hin~ config.log config.status \
330 config.h
331 rm -rf autom4te.cache/
333 maintainer-clean::
334 @echo "This command is intended for maintainers to use;"
335 @echo "rebuilding the deleted files requires special tools."
336 $(MAKE) distclean
337 rm -f TAGS VERSION aclocal.m4 config.hin configure \
338 patch-*.tar.gz patch-*.tar.gz.sig
340 PV = $(PACKAGE_NAME)-$(PACKAGE_VERSION)
342 dist:: $(DISTFILES)
343 @rm -rf $(PV)
344 @ln -s . $(PV)
345 @tar -cf - `( printf "%s\n" $(DISTFILES) $(MORE_DISTFILES); \
346 grep -q -E -- '-[0-9]+-[0-9a-z]+(-dirty)?$$' VERSION \
347 && echo README-alpha \
348 ) | sed -e 's,^$(srcdir)/,,' -e "s,^,$(PV)/," \
349 | LC_ALL=C sort` \
350 | gzip -9 > $(PV).tar.gz
351 @if which bzip2 >/dev/null 2>/dev/null; then \
352 gzip -d < $(PV).tar.gz | bzip2 -9 > $(PV).tar.bz2; fi
353 @if which xz >/dev/null 2>/dev/null; then \
354 gzip -d < $(PV).tar.gz | xz -9 > $(PV).tar.xz; fi
355 @rm -rf $(PV)
356 @whereto=$$(if grep -q -E -- '-[0-9]+-[0-9a-z]+(-dirty)?$$' VERSION; \
357 then echo alpha; else echo ftp; fi); \
358 echo; \
359 echo "# gnupload --to $$whereto.gnu.org:patch $(PV).tar.gz"; \
360 test ! -e $(PV).tar.bz2 || echo "# gnupload" \
361 "--to $$whereto.gnu.org:patch $(PV).tar.bz2"; \
362 test ! -e $(PV).tar.xz || echo "# gnupload" \
363 "--to $$whereto.gnu.org:patch $(PV).tar.xz"; \
364 echo
366 $(OBJS): config.h
367 COMMON = src/common.h $(STDBOOL_H)
369 gl/lib/addext.$(OBJEXT): gl/lib/backupfile.h gl/lib/dirname.h
370 gl/lib/argmatch.$(OBJEXT): $(STDBOOL_H) gl/lib/argmatch.h gl/lib/gettext.h \
371 gl/lib/error.h gl/lib/quote.h gl/lib/quotearg.h gl/lib/unlocked-io.h
372 gl/lib/backupfile.$(OBJEXT): gl/lib/argmatch.h gl/lib/backupfile.h \
373 gl/lib/dirname.h
374 gl/lib/basename.$(OBJEXT): gl/lib/dirname.h
375 gl/lib/dirname.$(OBJEXT): gl/lib/dirname.h gl/lib/xalloc.h
376 gl/lib/error.$(OBJEXT): gl/lib/error.h gl/lib/gettext.h gl/lib/unlocked-io.h
377 gl/lib/exitfail.$(OBJEXT): gl/lib/exitfail.h
378 gl/lib/full-write.$(OBJEXT): gl/lib/full-write.h gl/lib/safe-write.h
379 gl/lib/getopt.$(OBJEXT) gl/lib/getopt1.$(OBJEXT): getopt.h
380 gl/lib/hash.$(OBJEXT): $(STDBOOL_H) gl/lib/hash.h
381 gl/lib/safe-read.$(OBJEXT): gl/lib/safe-write.h
382 gl/lib/safe-write.$(OBJEXT): gl/lib/safe-read.c
384 src/inp.$(OBJEXT): gl/lib/backupfile.h $(COMMON) src/inp.h src/pch.h \
385 gl/lib/quotearg.h src/util.h gl/lib/xalloc.h
386 src/maketime.$(OBJEXT): src/maketime.h src/partime.h
387 src/partime.$(OBJEXT): src/partime.h
388 src/patch.$(OBJEXT): gl/lib/argmatch.h gl/lib/backupfile.h $(COMMON) \
389 gl/lib/exitfail.h $(GETOPT_H) src/inp.h src/pch.h \
390 gl/lib/quotearg.h src/util.h src/version.h gl/lib/xalloc.h
391 src/pch.$(OBJEXT): gl/lib/backupfile.h $(COMMON) gl/lib/dirname.h src/inp.h \
392 src/pch.h gl/lib/quotearg.h src/util.h
393 gl/lib/quote.$(OBJECT): gl/lib/quote.h gl/lib/quotearg.h
394 gl/lib/quotearg.$(OBJEXT): gl/lib/gettext.h gl/lib/quotearg.h gl/lib/xalloc.h
395 src/quotesys.$(OBJEXT): src/quotesys.h
396 gl/lib/strncasecmp.$(OBJEXT): gl/lib/strcasecmp.c
397 src/util.$(OBJEXT): gl/lib/backupfile.h $(COMMON) gl/lib/dirname.h gl/lib/full-write.h \
398 gl/lib/hash.h src/maketime.h src/partime.h gl/lib/quotearg.h \
399 src/quotesys.h src/util.h src/version.h gl/lib/xalloc.h
400 src/version.$(OBJEXT): $(COMMON) src/version.h
401 gl/lib/xmalloc.$(OBJEXT): gl/lib/error.h gl/lib/exitfail.h gl/lib/gettext.h \
402 gl/lib/xalloc.h