[crux64] multiarch

Lucas Hazel lucas at die.net.au
Thu Jan 11 10:25:10 UTC 2007


In the upcoming CRUX64 release, I am dabbling in a multiarch
implementation. This is a deviation from the method used in 2.1.1-rc2
that uses a seperate compat32 repo.

The implemenation I am using extends existing ports using the following
hierarchy (? indicates that the file is optional)

port/
	Pkgfile
	.footprint
	.md5sum

	x86_64/
		Pkgfile?
		.footprint?
		...
		(x86_64 specific sources included in port)

	compat32/
		Pkgfile?
		...
	

The build variables can be overwritten in the required arch's Pkgfile,
thus making it only necesarry to change the build script for many ports.

I have chosen this method mainly to make it easier to follow the
official crux release cycle via git, to remove the need for constant
conflict resolution (if there is an easier way, let me know as I am
fairly new to git).

I have also added multiarch support to pkgmk, you can specify the arch
with -a <arch>, for example to build the compat32 glib port:

	cd /usr/port/opt; pkgmk -a compat32

This will build a package named glib-compat32#...

This all works really well in terms of development, as I tend to build
the dependency chain manually rather than by using prt-get.

However, this method breaks prt-get in many ways (due to it not being
aware of the multiarch ports structure)

The way I see it there are 2 options:

1. Continue using the multiarch structure, modifying existing utilities
as needed.

2. Only use the multiarch in the development tree and use a utility to
merge each arch into it's own public repo.

Each has their own pros and cons, however I feel that the true
multiarch support is something CRUX needs to continue to thrive. We
currently have derivative, CRUX projects for i586, ulibc, ppc, sparc,
arm, x86_64 and even openbsd some sort of unification is needed.

Personally, I get the impression that multiarch is an issue the offical
CRUX developers are not taking seriously. Johannes was probably the
only one taking it seriously (mainly because he started the sparc port),
but he's quit the development team.

Also,

	irc://irc.freenode.net#crux64

See you there....maybe.
-- 
Lucas Hazel <lucas at die.net.au>

=================================================

"Clothes make the man. Naked men are rarely taken
seriously, or given employment." (Mark Twain)

=================================================



More information about the crux64 mailing list