Hi tech-pkg,
I assume we've discussed wanting to do this in some variation in the
past,
and people have their opinions all set up.
For the purpose of building wine32 as a package on 64bit machines, we
will
(unquestionably) need 32bit packages. So I have a first working draft.
Please list your wishlists and desires of this feature. I can try to
fulfil
all the requests. I'd like to do it so it doesn't block wine (we have a
GSoC project for it).
At current, I could make a separate compat package that has the
following
structure:
compat-libxml2/Makefile:
ORIGINAL_PACKAGE= ../../textproc/libxml2
.include "../../mk/bsd.compatlib.mk"
And have it spit out a package that looks like:
/usr/pkg/lib/32/cmake/libxml2/libxml2-config.cmake
/usr/pkg/lib/32/libxml2.la
/usr/pkg/lib/32/libxml2.a
/usr/pkg/lib/32/libxml2.so.2.9.9
/usr/pkg/lib/32/pkgconfig/libxml-2.0.pc
/usr/pkg/lib/32/xml2Conf.sh
The working, functional draft is the following:
ORIGINAL_PACKAGE= ../../textproc/libxml2
ABI?= 32
ORIGINAL_PKGNAME!= make -V PKGNAME -C ${ORIGINAL_PACKAGE}
PKGNAME= compat${ABI}_${ORIGINAL_PKGNAME}
# XXX make a definition for netbsd archs.
LIBABISUFFIX?= /32
CONFIGURE_ARGS+= --libdir=${PREFIX}/lib${LIBABISUFFIX}
CFLAGS+= -m32
remove-non-libraries:
echo "Removing non-compat library package content"
find ${DESTDIR}${PREFIX} -path ${DESTDIR}${PREFIX}/lib${LIBABISUFFIX}
-prune -o -type f -exec ${RM} {} +
post-install: remove-non-libraries
GENERATE_PLIST= ${SED} -n '/^lib/ s;lib;lib${LIBABISUFFIX};p'
${ORIGINAL_PACKAGE}/PLIST;
.include "${ORIGINAL_PACKAGE}/Makefile"