Hi! Per Jessen wrote:
our production environment is AMD64, so x86_64. Our test environment is still old i386, and will likely be for a while.
We have a similar situation in our company. Most of the time, we still build 32-bit executables for the various OS we have to support (all i386 and x86_64 RHEL-based, I have to admit). We also have a 64-bit build but that's hardly ever used in production for various reasons.
How do you guys go about building for an i386 target on your x86_64 workstations? In plain practical terms - I know how to build 32bit objects, but how do you organise source code, builds etc? A typical project would involve one or more binaries, some of our own libraries and some external ditto.
We have dedicated build hosts for the various platforms and OS. The source code and various other files are kept in an SVN repository (which is hosted by a special server). The master Makefile simply includes a <hostname>.mk file which contains all the host-dependent (i.e. system- and OS-dependent) settings. Very simple, but very effective. The build hosts also have the required MPI libraries and other tools installed. We can trigger automatic nightly builds on all build hosts. The latest source code (trunk) and the source code for bugfix releases are stored in different branches in the SVN. The releases for one OS are built separately but on the same build host. We're running a full suite of automatic tests to identify obvious problems with a certain build and/or release. We have our own R&D cluster to fully test the various executables on all supported platforms (i386 and x86_64). Our experience shows that dedicated build hosts are simpler to handle and operate than, for instance, building 32-bit and 64-bit executables on the same machine running a 64-bit OS. Our company has developed software for the last 36 years. Take care, Thomas --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-programming+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-programming+help@opensuse.org