Hello,

as you probably know, the x86_64 CD is unmaintained, and there were even "don't use, it's broken" notes in IRC logs (that I can't confirm or disprove due to lack of hardware). Since I cannot maintain this myself, I propose to invite Matt Darcy to the LiveCD team as a developer from CLFS (we already discussed this on IRC with Matt, the only issue to solve is with SVN permissions, but AFAIK that's Archaic's territory).

The suggested change:

* Since CLFS and LFS LiveCDs are too different, Matt should primarily work in a branch, not in trunk. The branch that reflects the state of the repository before removal of the unmaintained CLFS instructions is at:

svn://svn.linuxfromscratch.org/livecd/branches/cross/

* This branch will not be merged to trunk (because it is based on a completely different book), but useful fixes can be easily ported.

The branch needs some cleanup:

 * the x86 non-cross CD builds fine, but it is a wrong branch to build this CD 
from
 * the cross-x86 arch was never functional
* the instructions for x86_64 don't match any available book (they are an attempt to UTFize CLFS)
 * Sparc64 was never buildable because the boot loader is not in SVN
 * there are many BLFS packages that were never built on non-x86
 * the book on CLFS CDs is still the regular LFS book, which is wrong

The config.site file is not used (because rejected by Ryan Oliver), but it would be a good idea, because it allows one to write BLFS Makefiles without care about /lib{,64} differences and thus port packages between the branch and trunk easily. The config.site example in the tree is old, there is a better attempt attached.

--
Alexander E. Patrakov
#!/bin/sh

test "$prefix" = NONE && prefix=/usr

if test -n "${LFS_USE_32_BITS}"
then
        LFS_TARGET_MAYBE32="${LFS_TARGET32}"
        LIB_MAYBE64=lib
        CC=${CC_32:-gcc}
        CXX=${CXX_32:-g++}
else
        LFS_TARGET_MAYBE32="${LFS_TARGET}"
        CC=${CC:-gcc}
        CXX=${CXX:-g++}
fi

if test -n "${LFS_HOST}"
then
    case "$prefix" in
        /cross-tools)
                host=${LFS_HOST}
                target=${LFS_TARGET_MAYBE32}
                host_alias=${LFS_HOST}
                target_alias=${LFS_TARGET_MAYBE32}
                ;;
        /tools)
                # On IRC, Jim confirmed that always adding --build is harmless
                build=${LFS_HOST}
                host=${LFS_TARGET_MAYBE32}
                target=${LFS_TARGET}
                build_alias=${LFS_HOST}
                host_alias=${LFS_TARGET_MAYBE32}
                target_alias=${LFS_TARGET}
                cross_compiling=yes
                ;;
    esac
fi


test "$mandir" = '${prefix}/man' && mandir='${prefix}/share/man'
test "$infodir" = '${prefix}/info' && infodir='${prefix}/share/info'
if test "$prefix" != /cross-tools
then
        test "$libdir" = '${prefix}/lib' && libdir='${prefix}'/${LIB_MAYBE64}
        test "$libdir" = '${exec_prefix}/lib' && 
libdir='${exec_prefix}'/${LIB_MAYBE64}
        test "$libexecdir" = '${exec_prefix}/libexec' && 
libexecdir='${exec_prefix}'/${LIB_MAYBE64}
        test "$libexecdir" = '${exec_prefix}/lib' && 
libexecdir='${exec_prefix}'/${LIB_MAYBE64}
fi
test -z "$CFLAGS" && CFLAGS="-Os -s -pipe"
test -z "$CXXFLAGS" && CXXFLAGS=${CFLAGS}

if test -n "$LFS_TARGET" && test "$prefix" = /tools
then
        ac_cv_func_setvbuf_reversed=no
        am_cv_func_working_getline=yes
        libc_cv_c_cleanup=yes
        libc_cv_forced_unwind=yes
        libc_cv_initfini_array=yes
        utils_cv_sys_open_max=1024
        if test "$LFS_TARGET" = "sparc64"
        then
                libc_cv_sparc64_tls=yes
        fi
fi

# For debugging only
cat <<EOF
Build: $build
Host: $host
Target: $target
Prefix: $prefix
Libdir: $libdir
Libexecdir: $libexecdir
CC: $CC
CXX: $CXX
EOF
-- 
http://linuxfromscratch.org/mailman/listinfo/livecd
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to