I am flipping back and forth between architectures quite a bit (i686 and x86_64), so I keep both 32-bit and 64-bit extensions in my tce folder. I have optional32 & optional64, then link one to tce/optional. I was swapping manually, but now I've patched tce-setup to let it update the tce/optional link at boot time based upon the kernel architecture.
If you're going to use this, you'll need to unpack/patch/repack both the 32-bit and 64-bit core.gz. One patch for tce-setup in both architectures.
Patch text (or download attachment):
--- /usr/bin/tce-setup
+++ tce-setup
@@ -59,6 +59,15 @@
}
setupExtnDirs() {
+ # link to repository by architecture
+ if [ -d "$MOUNTPOINT"/"$TCE_DIR"/optional32 ] || [ -d "$MOUNTPOINT"/"$TCE_DIR"/optional64 ]; then
+ if [ "$(uname -m)" = "x86_64" ]; then
+ ARCH=64
+ else ARCH=32
+ fi
+ [ -d "$MOUNTPOINT"/"$TCE_DIR"/optional"$ARCH" ] || mkdir -p "$MOUNTPOINT"/"$TCE_DIR"/optional"$ARCH"
+ ln -snf optional"$ARCH" "$MOUNTPOINT"/"$TCE_DIR"/optional
+ fi
[ -d "$MOUNTPOINT"/"$TCE_DIR"/optional ] || mkdir -p "$MOUNTPOINT"/"$TCE_DIR"/optional
[ -d "$MOUNTPOINT"/"$TCE_DIR"/ondemand ] || mkdir -p "$MOUNTPOINT"/"$TCE_DIR"/ondemand
touch "$MOUNTPOINT"/"$TCE_DIR"/onboot.lst