On Wed, 07 Dec 2011 15:37:09 +0100 Thomas Bächler <thomas@archlinux.org> wrote:
Still another idea to think about: What about going through the whole build process including --mixed, but then only packaging the 32 bit libraries? Will that work as well?
In short, nope as you intend it. I try to make clarifications on this point: The jack2 build system (based on waf) come out with a --mixed flag that does not just build the 32 bit library, but a multilib capable server too. In particular the --mixed flag adds a -DJACK_32_64 macro that enables the preprocessor in posix/JackCompilerDeps_os.h at #37: #define POST_PACKED_STRUCTURE __attribute__((__packed__)) This ensures that structures have the same size on all processors, in the way a 32 bit jack client can correctly communicate with a 64 bit server. When it was discussed on #archaudio @ freenode.net, 3 solutions come out: 1. jack2: leave as it is now jack2-multilib: build with --mixed, provides and conflicts with jack2 and lib32-jack2 2. jack2: build with --mixed for x86_64 ([ "$CARCH" = 'x86_64' ]) removing the generated 32 bit lib from the final package lib32-jack2: build with --mixed, removing all but the 32 bit lib 3. jack2: build with a patch that just adds the -DJACK_32_64 macro in the build process without building the 32 bit lib lib32-jack2: build with a patch the builds just the 32 bit lib About Pros and Cons: 1. Pros: proposed by Ray as it is the most simple to maintain, and the one that upstream suggests Cons: jack2 server is built twice 2. Pros: lib32-jack2 contains just the 32 bit lib Cons: jack2 builds the 32 bit lib and then deletes it, lib32-jack2 builds the jack server and deletes it, loss of time 3. Pros: jack2 builds and provides a 32 bit capable jack server for x86_64 lib32-jack2 builds and provides just the 32 bit lib Cons: harder to maintain since the build system needs to be patched Since Ray is the actual maintainer and solutions graves more on maintaining, he's the only one who should make the choice. The patches I wrote for the third solution would be more harder to adapt for him, on an eventual future massive change in the build system. Also, technically, a not --mixed server differs from a --mixed one for the POST_PACKED_STRUCTURE definition, even if it seems to not comport any difference on functionality nor stability. I hope I made myself clear, cheers. - speps -