dirs := $(sort $(dir $(src)))
csrc := $(filter %.c, $(src))
tsrc := $(filter %.t, $(src))
-m4src := $(filter m4/%.m4, $(src))
man6 := $(filter man/%.6, $(src))
builtins := $(filter src/lib/global/%.config, $(src))
builtindir := $(datadir)/empire/builtin
einfodir := $(datadir)/empire/info.nr
ehtmldir := $(datadir)/empire/info.html
+client/w32 := arpa/inet.h netdb.h netinet/in.h sys/time.h sys/socket.h \
+sys/uio.h unistd.h w32io.c w32sockets.c w32types.h
# How to substitute Autoconf output variables
# Recursively expanded so that $@ and $< work.
ifeq ($(empthread),Windows) # really: W32, regardless of thread package
libs += lib/libw32.a
+$(client): lib/libw32.a
endif
# Cleanliness
-Wstrict-prototypes -Wmissing-prototypes -Wnested-externs \
-Wredundant-decls
endif
-ifeq ($(empthread),Windows) # really: W32, regardless of thread package
-# FIXME split src/lib/w32/posixio.c
-LDLIBS := $(LIBS_server)
-endif
$(client): LDLIBS := $(LIBS_client)
$(server): LDLIBS := $(LIBS_server)
$(client): $(filter src/client/%, $(obj)) src/lib/global/version.o
$(LINK.o) $^ $(LOADLIBES) $(LDLIBS) -o $@
-ifeq ($(empthread),Windows) # really: W32, regardless of thread package
-$(client): src/lib/w32/getopt.o
-endif
$(util): $(libs)
$(notdir $(filter src/client/%, $(src)) $(cli_distgen)) \
-C $(srcdir)/include proto.h version.h \
-C $(srcdir)/src/lib/global version.c \
- -C $(srcdir)/src/lib/w32 getopt.h getopt.c \
+ -C $(srcdir)/src/lib $(addprefix w32/, $(client/w32)) \
-C $(srcdir)/man empire.6 \
-C $(srcdir) COPYING INSTALL install-sh
cd $(srcdir) && autoheader
touch $@
-$(srcdir)/aclocal.m4: $(m4src)
+$(srcdir)/aclocal.m4: $(filter m4/%.m4, $(src))
cd $(srcdir) && aclocal -I m4
# config.status might not change config.h; use the stamp file.
cd $(dir $@) && autoheader
touch $@
-$(srcdir)/src/client/aclocal.m4: $(m4src)
- cd $(srcdir)/src/client && aclocal -I ../../m4
+$(srcdir)/src/client/aclocal.m4: m4/lib_socket_nsl.m4 m4/my_terminfo.m4 m4/my_windows_api.m4
+ cat $^ >$@