Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Feb 2002 18:39:22 +0900
From:      Makoto Matsushita <matusita@jp.FreeBSD.org>
To:        current@freebsd.org
Cc:        murray@freebsd.org
Subject:   Re: FreeBSD/i386 "make release" breakage
Message-ID:  <20020226183922A.matusita@jp.FreeBSD.org>
In-Reply-To: <20020225132729N.matusita@jp.FreeBSD.org>
References:  <20020225132729N.matusita@jp.FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

matusita> Current 5-current fails 'make release' when processing release.4
matusita> target (making a crunch binary).  Here's sample session:
matusita> 	===> doc
matusita> 	rm -f cpio.info cpio.info.gz
matusita> 	rm -f .depend /usr/obj/usr/src/gnu/usr.bin/cpio/GPATH
matusita> 	/usr/obj/usr/src/gnu/usr.bin/cpio/GRTAGS
matusita> 	/usr/obj/usr/src/gnu/usr.bin/cpio/GSYMS
matusita> 	/usr/obj/usr/src/gnu/usr.bin/cpio/GTAGS
matusita> 	===> doc
matusita> 	make: don't know how to make dhclient_clean. Stop

This is because

	- src/sbin/dhclient/Makefile was changed (with ISC DHCP 3.x commit)
	- but src/release/${arch}/boot_crunch.conf is not changed
	- crunchgen(1) doesn't understands new src/sbin/dhclient/Makefile

Note that new dhclient requires some libraries which are *not*
installed to /usr/lib (libdhcp, libres, libomapi, and libdst).

I have tried a quick hack to solve this; here is a patch to boot_crunch.conf.

--- /usr/src/release/i386/boot_crunch.conf	Fri Jan 18 05:28:10 2002
+++ boot_crunch.conf	Tue Feb 26 09:10:51 2002
@@ -10,8 +10,12 @@
 srcdirs /usr/src/gnu/usr.bin
 progs cpio
 
+srcdirs /usr/src/sbin/dhclient
+progs client
+ln client dhclient
+
 srcdirs /usr/src/sbin
-progs dhclient fsck_ffs ifconfig
+progs fsck_ffs ifconfig
 progs mount_nfs newfs route rtsol
 progs slattach tunefs camcontrol
 
@@ -27,3 +31,7 @@
 
 libs -ll -ledit -lutil -lkvm -lmd -lcrypt -lftpio -lz -lnetgraph
 libs -ldialog -lncurses -ldisk -lcam -lsbuf
+libs /usr/obj/usr/src/sbin/dhclient/common/libdhcp.a
+libs /usr/obj/usr/src/sbin/dhclient/minires/libres.a
+libs /usr/obj/usr/src/sbin/dhclient/omapip/libomapi.a
+libs /usr/obj/usr/src/sbin/dhclient/dst/libdst.a

Absolutely dirty (filepath are inlined), but this does *not* work.
Here is a sample session:

% cd /usr/src/release
% make release.4
(... stuffs there ...)
cc -static -o boot_crunch boot_crunch.o hostname.lo pwd.lo rm.lo sh.lo test.lo cpio.lo client.lo fsck_ffs.lo ifconfig.lo mount_nfs.lo newfs.lo route.lo rtsol.lo slattach.lo tunefs.lo camcontrol.lo find.lo minigzip.lo sed.lo arp.lo pccardc.lo pccardd.lo ppp.lo sysinstall.lo usbd.lo usbdevs.lo -ll -ledit -lutil -lkvm -lmd -lcrypt -lftpio -lz -lnetgraph -ldialog -lncurses -ldisk -lcam -lsbuf /usr/obj/usr/src/sbin/dhclient/common/libdhcp.a /usr/obj/usr/src/sbin/dhclient/minires/libres.a /usr/obj/usr/src/sbin/dhclient/omapip/libomapi.a /usr/obj/usr/src/sbin/dhclient/dst/libdst.a
/usr/obj/usr/src/sbin/dhclient/common/libdhcp.a(tree.o): In function `evaluate_boolean_expression':
tree.o(.text+0x1372): undefined reference to `check_collection'
/usr/obj/usr/src/sbin/dhclient/common/libdhcp.a(parse.o): In function `parse_executable_statement':
parse.o(.text+0x26b5): undefined reference to `find_class'
parse.o(.text+0x2859): undefined reference to `parse_allow_deny'
/usr/obj/usr/src/sbin/dhclient/common/libdhcp.a(options.o): In function `do_packet':
options.o(.text+0x30e1): undefined reference to `dhcp'
options.o(.text+0x30ef): undefined reference to `bootp'
/usr/obj/usr/src/sbin/dhclient/common/libdhcp.a(execute.o): In function `execute_statements':
execute.o(.text+0x306): undefined reference to `classify'
/usr/obj/usr/src/sbin/dhclient/common/libdhcp.a(comapi.o): In function `dhcp_control_set_value':
comapi.o(.text+0xb16): undefined reference to `dhcp_set_control_state'
*** Error code 1

Stop in /usr/obj/usr/src/release/boot_crunch.
*** Error code 1

Stop in /usr/src/release.
%

These 'undefined reference' symbols are actually defined by dhclient's
source code, but it is not there (maybe renamed by crunchgen(1)).

Are there any good way to fix this?

-- -
Makoto `MAR' Matsushita

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020226183922A.matusita>