[oe-users] squid bb etc for gumstix

Terry Kemp tkemp at klc.net.nz
Thu Nov 8 22:55:29 UTC 2007


Hi all,

Just joined list - usually lurk for a while to get up with the play but
I have a few probs...

I have a gumstix connex 200xm + netDUOmmc running on OE Angstrom 2007-1
console-image + iptables, squid and dansguardian. It goes pretty good.

The later 3 have been built (mostly) and packaged (kind of) with OE but
there are some uglies I need help with.

firstly squid fails with...
./cf_gen cf.data
./cf_gen: ./cf_gen: cannot execute binary file
make[1]: *** [cf_parser.h] Error 126
make[1]: Leaving directory
`/build/gumstix/oe-connex/build/tmp/angstrom/work/armv5te-angstrom-linux-gnueabi/squid-2.6.STABLE14-r0/squid-2.6.STABLE14/src'
make: *** [all-recursive] Error 1
FATAL: oe_runmake failed

Now I know that it needs the 'native' version of cf_gen to be built so I
modified the squid bb to do a native build of squid as well - which
seems to work OK, but I need to copy the native cf_gen to the cross
build src directory. (I did try to just natively compile the
src/cf_gen.c using $BUILD_CC -DHAVE_SYS_STAT_H -o cf_gen cf_gen.c but
that rapidly got too hard.)

Here is my modified squid_2.6STABLE14.bb...

---------------------------------------------------------------------------
DESCRIPTION = "Squid is a caching proxy for the Web supporting HTTP,
HTTPS, FTP, and more"
LICENSE = "GPLv2"

DEPENDS = "libaio squid-native-${PV}"

SRC_URI =
"http://www.squid-cache.org/Versions/v2/2.6/squid-2.6.STABLE14.tar.bz2"

inherit autotools

EXTRA_OECONF = "--disable-epoll --disable-nls"

do_configure() {
export ac_cv_af_unix_large_dgram=yes \
	ac_cv_func_setresuid=yes \ 
	ac_cv_func_va_copy=yes \
	ac_cv_func___va_copy=yes

	autotools_do_configure
        
}

do_compile_prepend() {
	rm -f src/cf_gen

cp /build/gumstix/oe-connex/build/tmp/angstrom/work/x86_64-linux/squid-native-2.6.STABLE14-r1/squid-2.6.STABLE14/src/cf_gen src/cf_gen
	touch src/cf_gen 

}

This works...
NOTE: Running task 256 of 256 (ID:
4, /build/gumstix/oe-connex/org.openembedded.dev/packages/squid/squid_2.6.STABLE14.bb, do_build)
NOTE: package squid-2.6.STABLE14: started
NOTE: package squid-2.6.STABLE14-r0: task do_build: started
NOTE: package squid-2.6.STABLE14-r0: task do_build: completed
NOTE: package squid-2.6.STABLE14: completed
NOTE: Tasks Summary: Attempted 256 tasks of which 248 didn't need to be
rerun and 0 failed.
NOTE: build 200711091144: completed

yipee - but 

Question (finally) is how do I define the native work directory properly
instead of my hard coded kludge? something like
${NATIVE_WORKDIR}/squid-native-${PV}/src/cf_gen???

Packaging also has a prob but I will fight that a for bit first. 
Questions on iptables and dansguardian to come later :)

Thanks

Terry










More information about the Openembedded-users mailing list