# $Id: Makefile.am,v 1.17 2003/08/19 07:22:22 crosser Exp $ # $Log: Makefile.am,v $ # Revision 1.17 2003/08/19 07:22:22 crosser # clean autogenerated .c files # # Revision 1.16 2003/08/14 12:50:31 crosser # Memory leak in the client code (ilya@glas.net) # Changes to recent autoconf/automake (woods@weird.com) # use pidfile() if it exists (woods@weird.com) # # Revision 1.15 2001/09/23 12:42:10 crosser # cleaner security warnings # More preport ChangeLog dependency (I hope) # # Revision 1.14 2001/07/20 08:50:13 crosser # dependency for ChangeLog # # Revision 1.13 2001/07/20 08:47:15 crosser # run cvs2cl # change version # unixd params # # Revision 1.12 2001/05/28 21:43:25 crosser # tune .cvsignore, provision for ChangeLog # # Revision 1.11 2000/03/28 20:44:00 crosser # build Makefile.PL for the perl5 module by configure # # Revision 1.10 1999/11/26 17:18:57 crosser # tune for sunos4 # # Revision 1.9 1999/10/03 21:18:03 crosser # First (probably) working version with new run time config parser. # Also added listenq parameter (backlog size for listen()) and # renamed wtest to whoson (and with man page). Release 2.00beta1. # # Revision 1.8 1999/08/30 14:21:40 crosser # Make shared library # # Revision 1.7 1999/08/19 17:58:14 crosser # Mention new files in Makefile.am # # Revision 1.6 1999/08/19 17:22:13 crosser # Move to new config scheme (does not work yet) # # Revision 1.5 1999/08/04 21:08:10 crosser # Add hooks to install and uninstall # # Revision 1.4 1999/08/03 07:21:01 crosser # add options to Makefile # # Revision 1.3 1999/07/30 23:25:09 crosser # Automakifying clenups # # Revision 1.2 1999/07/27 17:14:59 crosser # cleaning # # Revision 1.1 1999/07/27 16:49:13 crosser # Initial revision # AUTOMAKE_OPTIONS = foreign sbin_PROGRAMS = whosond whoson lib_LTLIBRARIES = libwhoson.la include_HEADERS = whoson.h man_MANS = whoson.conf.5 whoson.3 whoson.8 whosond.8 ## Documentation says that you can inlcude directories in EXTRA_DIST ## but this is not true. If you do that, "make dist" fails because ## "distdir" target depends on the dir object and cannot create it. ## Or somesuch. Anyway, it does not work. So, include all files. EXTRA_DIST = whoson.ms whoson.txt fix.pl whoson.conf $(man_MANS) \ WHOSON/Changes WHOSON/MANIFEST WHOSON/Makefile.PL.in \ WHOSON/WHOSON.pm WHOSON/WHOSON.xs WHOSON/test.pl \ ChangeLog noinst_HEADERS = whosond.h report.h serv_common.h lhash.h checkperm.h \ rtconfig.h rtc_begin.h rtc_middle.h rtc_end.h \ serv_tcp_cfg.h serv_unix_cfg.h serv_unixd_cfg.h \ serv_udp_cfg.h serv_common_cfg.h clnt_common.h \ clnt_udp_cfg.h clnt_unixd_cfg.h clnt_tcp_cfg.h \ clnt_unix_cfg.h getopt.h whoson_SOURCES = whoson.c whoson_LDADD = $(lib_LTLIBRARIES) whoson_LDFLAGS = -static whosond_SOURCES = whosond.c mainloop.c servlist.c lhash.c serv_common.c EXTRA_whosond_SOURCES = serv_tcp.c serv_unix.c serv_unixd.c serv_udp.c whosond_LDADD = $(lib_LTLIBRARIES) @LIBOBJS@ @SERV_CONN_OBJ@ ## Documentation days that dependencies are created automatically from ## LDADD but this is not true. So we have to specify then explicitely. ## The same for LIBADD below. whosond_DEPENDENCIES = @SERV_CONN_OBJ@ libwhoson_la_SOURCES = clnt_common.c rtconfig.c clntlist.c checkperm.c EXTRA_libwhoson_la_SOURCES = clnt_tcp.c clnt_unix.c clnt_unixd.c clnt_udp.c libwhoson_la_LIBADD = @CLNT_CONN_OBJ@ libwhoson_la_DEPENDENCIES = @CLNT_CONN_OBJ@ libwhoson_la_LDFLAGS = -version-info 0:0:0 MAN3XTRA = wso_version.3 wso_login.3 wso_logout.3 wso_query.3 CLEANFILES = clntlist.c servlist.c install-data-hook: if test -f $(DEFAULT_CONFIG); then \ $(ECHO) "$(DEFAULT_CONFIG) exists, not overwritten"; \ else \ $(INSTALL_DATA) $(srcdir)/whoson.conf $(DEFAULT_CONFIG); \ fi; \ for f in $(MAN3XTRA); do \ rm -f $(DESTDIR)$(man3dir)/$$f; \ $(LN) $(DESTDIR)$(man3dir)/whoson.3 $(DESTDIR)$(man3dir)/$$f; \ done uninstall-local: rm -f $(DEFAULT_CONFIG); \ for f in $(MAN3XTRA); do \ rm -f $(DESTDIR)$(man3dir)/$$f; \ done whoson.txt: whoson.ms ${NROFF} -ms ${srcdir}/whoson.ms | ${PERL} ${srcdir}/fix.pl >whoson.txt servlist.c: Makefile ( \ echo '#include "sys/types.h"'; \ echo '#include "whosond.h"'; \ echo '#include "rtconfig.h"'; \ echo ""; \ for f in @CONNECTORS@; do \ echo "extern struct _cfgdesc desc_wso_serv_$${f}_cfg;"; \ echo "extern struct _evdesc $${f}_serv_init(void *priv);"; \ echo ""; \ done; \ echo "extern struct _cfgdesc desc_wso_serv_global_cfg;"; \ echo "extern struct _evdesc global_serv_init(void *priv);"; \ echo ""; \ echo ""; \ echo "struct _cfgrec wso_cfglist[] = {"; \ for f in @CONNECTORS@; do \ echo " {\"$$f\",&desc_wso_serv_$${f}_cfg,{$${f}_serv_init}},"; \ done; \ echo " {\"global\",&desc_wso_serv_global_cfg,{global_serv_init}},"; \ echo " {(void*)0,(void*)0,{(void*)0}}"; \ echo "};"; \ ) >servlist.c clntlist.c: Makefile ( \ echo '#include "sys/types.h"'; \ echo '#include "whosond.h"'; \ echo '#include "rtconfig.h"'; \ echo ""; \ for f in @CONNECTORS@; do \ echo "extern struct _cfgdesc desc_wso_clnt_$${f}_cfg;"; \ echo "extern struct _evdesc wso_$${f}_clnt_connect(void *priv);"; \ echo ""; \ done; \ echo ""; \ echo "struct _cfgrec wso_cfglist[] = {"; \ for f in @CONNECTORS@; do \ echo " {\"$$f\",&desc_wso_clnt_$${f}_cfg,{wso_$${f}_clnt_connect}},"; \ done; \ echo " {(void*)0,(void*)0,{(void*)0}}"; \ echo "};"; \ ) >clntlist.c # This leads to circular dependency. Fortunately this is not a problem # at least for GNU make, and this target is only used for "make dist". # Let me know if it causes troubles for you. ChangeLog: $(DISTFILES) $(CVS2CL)