$NetBSD: patch-Makefile,v 1.4 2024/04/15 16:24:52 schmonz Exp $ Libtoolize for portable shared libraries. --- Makefile.orig 2021-04-02 21:24:02.000000000 +0000 +++ Makefile @@ -5,8 +5,11 @@ SHELL=/bin/sh # static flags - DO NOT EDIT! CCFLAGS=-Iinclude -SRCS=*.c -OBJS=*.o +.SUFFIXES: .lo +.c.lo: + $(LIBTOOL) --mode=compile $(CC) $(CFLAGS) $(CCFLAGS) -c -o $@ $< + +OBJS=*.lo COMPILE=./compile MAKELIB=./makelib SHAREDLIB=./sharedlib @@ -25,13 +28,11 @@ clean: core: alloc.a buffer.a case.a cdb.a constmap.a env.a \ fd.a fs.a getln.a getopt.a lock.a logmsg.a ndelay.a open.a \ seek.a sig.a str.a stralloc.a time.a wait.a \ -ip.a socket.a dnsresolv.a - -libs: obj core qlibs.a dnsresolv.a +ip.a socket.a dnsresolv.a \ +base64.o pathexec.o prot.o readclose.o \ +uint128p.o uint16p.o uint32p.o uint64p.o uint8p.o -obj: - @echo Making all in qlibs ... - $(COMPILE) $(CCFLAGS) $(CFLAGS) $(SRCS) +libs: core qlibs.a dnsresolv.a install: setup @@ -40,23 +41,26 @@ setup: shared: $(COMPILE) $(SHAREDLIB) $(OBJS) ./dnsstub/$(OBJS) @echo Building shared qlibs ... - $(SHAREDLIB) $(LDFLAGS) $(OBJS) -o libqlibs.so - $(SHAREDLIB) $(LDFLAGS) ./dnsstub/$(OBJS) -o libdnsresolv.so + $(SHAREDLIB) libqlibs.la $(OBJS) \ + -version-info 0:0:0 -rpath $(PREFIX)/lib/qlibs + $(SHAREDLIB) libdnsresolv.la ./dnsstub/$(OBJS) \ + -version-info 0:0:0 -rpath $(PREFIX)/lib/qlibs -qlibs.a: obj socket.a - $(MAKELIB) $(LDFLAGS) qlibs.a *.o +qlibs.a: $(OBJS) socket.a + $(MAKELIB) $(LDFLAGS) qlibs.a $(OBJS) ln -sf qlibs.a libqlibs.a dnsresolv.a: @echo "Building @dnsresolv lib ..." - @cd dnsstub ; make + @cd dnsstub ; $(MAKE) dnsresolv.a @cp dnsstub/dnsresolv.a dnsresolv.a ln -sf dnsresolv.a libdnsresolv.a -socket.a: ip.a +socket.a: socket_if.o socket_bind.o socket_connect.o \ +socket_info.o socket_recv.o socket_send.o socket_setup.o socket_tcp.o socket_udp.o ip.a @echo "Building socket lib ..." $(MAKELIB) $(LDFLAGS) socket.a socket_if.o socket_bind.o socket_connect.o \ - socket_info.o socket_setup.o socket_tcp.o socket_udp.o ip.a + socket_info.o socket_recv.o socket_send.o socket_setup.o socket_tcp.o socket_udp.o ip.a # build each file separately (backwards compat) - better use recipe qlibs.a alloc.a: alloc.o