$NetBSD: patch-src_Makefile,v 1.2 2024/10/07 00:40:58 schmonz Exp $ Libtoolize for portable shared libraries. --- src/Makefile.orig 2024-10-05 13:21:14.000000000 +0000 +++ src/Makefile @@ -6,10 +6,14 @@ SHELL=/bin/sh CCFLAGS=-I../include SRCS=*.c -OBJS=*.o -COMPILE=./compile -MAKELIB=./makelib -SHAREDLIB=./sharedlib +.SUFFIXES: .lo +.c.lo: + $(LIBTOOL) --mode=compile $(CC) $(CFLAGS) $(CCFLAGS) -c -o $@ $< + +OBJS=*.lo +COMPILE=../compile +MAKELIB=../makelib +SHAREDLIB=../sharedlib default: clean check libs @@ -25,42 +29,40 @@ 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 +ip.a socket.a dnsresolv.a \ +base64.o pathexec.o prot.o readclose.o \ +uint128p.o uint16p.o uint32p.o uint64p.o uint8p.o -libs: obj core qlibs.a dnsresolv.a - -obj: - @echo Making all in qlibs ... - $(COMPILE) $(CCFLAGS) $(CFLAGS) $(SRCS) +libs: core qlibs.a dnsresolv.a install: setup setup: - @../install + @cd .. && ./install shared: $(COMPILE) $(SHAREDLIB) $(OBJS) ./dnsstub/$(OBJS) @echo "Building shared qlibs ..." - $(SHAREDLIB) $(LDFLAGS) $(OBJS) -o libqlibs.so - $(SHAREDLIB) $(LDFLAGS) ./dnsstub/$(OBJS) -o libdnsresolv.so - @ln -f libqlibs.so ../libqlibs.so - @ln -f libdnsresolv.so ../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) @echo "Creating libqlibs ... " - @ln -f qlibs.a ../libqlibs.a + @ln -f 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 -f dnsresolv.a ../libdnsresolv.a + @ln -f 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