Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > e62f51b3c9c4797a380d8e815dd2df0a > files > 14

dhcpv6-0.10-33.el5.src.rpm

--- dhcp-0.10/Makefile.in.libdhcp6client-Makefile	2006-06-20 16:03:07.000000000 -0400
+++ dhcp-0.10/Makefile.in	2006-06-20 16:04:23.000000000 -0400
@@ -10,8 +10,8 @@
 CC=	@CC@
 YACC=	@YACC@
 LEX=	@LEX@
-TARGET=	dhcp6c dhcp6s dhcp6r
-DESTDIR=
+TARGET=	dhcp6c dhcp6s dhcp6r libdhcp6client.so.1 libdhcp6client.a
+DESTDIR ?=
 
 INSTALL=@INSTALL@
 INSTALL_PROGRAM=@INSTALL_PROGRAM@
@@ -27,6 +27,9 @@
 etc=/etc
 sysconfigdir=/etc/sysconfig
 CHKCONFIG=/sbin/chkconfig
+LIBDIR ?= /usr/lib
+INCLUDEDIR ?= /usr/include
+PKGCFGDIR ?= /usr/lib/pkgconfig
 
 CFLAGS+= -Wall -DCONF_DH6OPT_DNS_RESOLVERS=@dhcpopt_dns_resolvers@ \
 	-DCONF_DH6OPT_DOMAIN_LIST=@dhcpopt_domain_list@ \
@@ -48,11 +51,16 @@
 CLEANFILES=cf.tab.h cp.tab.h sf.tab.h dad_token.c ra_token.c client6_token.c client6_parse.c \
 		server6_parse.c server6_token.c lease_token.c resolv_token.c radvd_token.c
 
+CLIENTHDRS=common.h  config.h  cp.tab.h dhcp6.h  hash.h  lease.h  queue.h  timer.h
+
 all:	$(TARGET) 
+
 dhcp6c:	$(CLIENTOBJS) $(LIBOBJS)
 	$(CC) $(LDFLAGS) -o dhcp6c $(CLIENTOBJS) $(LIBOBJS) $(LIBS) 
+
 dhcp6s:	$(SERVOBJS) $(LIBOBJS)
 	$(CC) $(LDFLAGS) -o dhcp6s $(SERVOBJS) $(LIBOBJS) $(LIBS) 
+
 dhcp6r: $(RELAYOBJS) $(LIBOBJS)
 	$(CC) $(LDFLAGS) -o dhcp6r $(RELAYOBJS)
 
@@ -94,6 +102,21 @@
 	$(LEX) -Psfyy server6_token.l
 	mv lex.sfyy.c $@
 
+libdhcp6client/.: $(CLIENTOBJS:%.o=%.c)
+	mkdir -p libdhcp6client/
+	cp -fa $(CLIENTOBJS:%.o=%.c) $(CLIENTHDRS) $(COMMONGENSRCS:%.c=%.l) $(subst client6_parse.l,client6_parse.y,$(CLIENTGENSRCS:%.c=%.l)) strlcat.c strlcpy.c libdhcp6client/
+	cp -fa Makefile libdhcp6client/
+
+libdhcp6client/%.o: $(@:%.o:%.c) $(patsubst %,libdhcp6client/%,$(CLIENTHDRS))
+	$(MAKE) -C libdhcp6client $*.o CFLAGS="$(subst -fPIE,-fPIC,$(subst -O2,-Os,$(CFLAGS))) -DLIBDHCP"
+
+libdhcp6client.a: libdhcp6client/. $(patsubst %,libdhcp6client/%,$(CLIENTOBJS) strlcpy.o strlcat.o dhc6_alloc.o)
+	$(AR) cruv $@ $(patsubst %,libdhcp6client/%,$(CLIENTOBJS) strlcpy.o strlcat.o dhc6_alloc.o)
+
+libdhcp6client.so.1: libdhcp6client/. $(patsubst %,libdhcp6client/%,$(CLIENTOBJS) strlcpy.o strlcat.o dhc6_alloc.o)
+	$(CC) -shared -o $@ -Wl,-soname,$@ $(patsubst %,libdhcp6client/%,$(CLIENTOBJS) strlcpy.o strlcat.o dhc6_alloc.o) -lresolv -lcrypto
+	/bin/ln -sf $@ $(@:%=%.1)
+
 install::
 	$(INSTALL) -d $(DESTDIR)$(sbindir)
 	$(INSTALL) -d $(DESTDIR)/sbin
@@ -112,7 +135,13 @@
 	$(INSTALL) -d  $(DESTDIR)/etc/sysconfig
 	$(INSTALL_DATA) -o $(INSTALL_USER) -g $(INSTALL_GROUP) dhcp6s.sysconfig  $(DESTDIR)/etc/sysconfig/dhcp6s
 	$(INSTALL_DATA) -o $(INSTALL_USER) -g $(INSTALL_GROUP) dhcp6r.sysconfig  $(DESTDIR)/etc/sysconfig/dhcp6r
-
+	$(INSTALL) -m 754 -D  -o $(INSTALL_USER) -g $(INSTALL_GROUP) libdhcp6client.so.1 $(DESTDIR)/$(LIBDIR)/libdhcp6client.so.1
+	/bin/ln -sf libdhcp6client.so.1 $(DESTDIR)/$(LIBDIR)/libdhcp6client.so
+	$(INSTALL) -m 644 -D  -o $(INSTALL_USER) -g $(INSTALL_GROUP) libdhcp6client.a  $(DESTDIR)/$(LIBDIR)/libdhcp6client.a
+	mkdir -p $(DESTDIR)/$(INCLUDEDIR)/dhcp6client/dhcpv6
+	$(INSTALL) -m 644 -o $(INSTALL_USER) -g $(INSTALL_GROUP) libdhcp6client/*.h $(DESTDIR)/$(INCLUDEDIR)/dhcp6client/dhcpv6
+	mv $(DESTDIR)/$(INCLUDEDIR)/dhcp6client/dhcpv6/{libdhcp_control.h,dhcp6client.h} $(DESTDIR)/$(INCLUDEDIR)/dhcp6client
+	$(INSTALL) -m 644 -D -o $(INSTALL_USER) -g $(INSTALL_GROUP) libdhcp6client.pc $(DESTDIR)/$(PKGCFGDIR)/libdhcp6client.pc
 
 rh_install:: install
 	$(INSTALL) -d $(initdir)