version 1.2, 2012/10/12 08:22:43
|
version 1.6.2.1, 2021/03/17 17:17:09
|
Line 37 if [ "${USER}" != "root" ]; then
|
Line 37 if [ "${USER}" != "root" ]; then
|
exit 1 |
exit 1 |
fi |
fi |
|
|
|
# Set TARGET_CPUTYPE only for world compiling. Don't use this in kernel build! |
|
X_TARGET_CPUTYPE="TARGET_CPUTYPE=${TARGET_CPUTYPE}" |
|
|
clean_world() |
clean_world() |
{ |
{ |
echo "+++ Clean ELWIX World ..." | echo "+++ Clean ELWIX World ... $WORLD" |
rm -rf $WORLD |
rm -rf $WORLD |
mkdir -p $WORLD |
mkdir -p $WORLD |
|
|
rm -f ${CBUILD} ${CGBUILD} ${CENV} |
rm -f ${CBUILD} ${CGBUILD} ${CENV} |
} |
} |
|
|
|
build_toolchain() |
|
{ |
|
echo "+++ Build ELWIX Toolchain ..." |
|
cd $BSDSRC |
|
env MAKEOBJDIRPREFIX=${BSDOBJ} make ${PARALLEL_BUILD} \ |
|
TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} ${X_TARGET_CPUTYPE} \ |
|
SRCCONF=${SRCCONF} __MAKE_CONF=${MAKECONF} DESTDIR=${WORLD} toolchain |
|
if [ $? -eq 0 ]; then |
|
cd - |
|
else |
|
exit 1 |
|
fi |
|
} |
|
|
build_world() |
build_world() |
{ |
{ |
echo "+++ Build ELWIX World ..." |
echo "+++ Build ELWIX World ..." |
cd $BSDSRC |
cd $BSDSRC |
env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ | if [ -z "$1" ]; then |
-j${PARALLEL_BUILD} buildworld DESTDIR=${WORLD} | env MAKEOBJDIRPREFIX=${BSDOBJ} make ${PARALLEL_BUILD} \ |
| TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} ${X_TARGET_CPUTYPE} \ |
| SRCCONF=${SRCCONF} __MAKE_CONF=${MAKECONF} buildworld |
| else |
| env MAKEOBJDIRPREFIX=${BSDOBJ} NO_CLEAN="YES" make ${PARALLEL_BUILD} \ |
| TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} ${X_TARGET_CPUTYPE} \ |
| SRCCONF=${SRCCONF} __MAKE_CONF=${MAKECONF} buildworld |
| fi |
if [ $? -eq 0 ]; then |
if [ $? -eq 0 ]; then |
cd - |
cd - |
else |
else |
Line 61 build_world()
|
Line 85 build_world()
|
|
|
install_world() |
install_world() |
{ |
{ |
echo "+++ Install ELWIX World ..." | echo "+++ Install ELWIX World ... $WORLD" |
cd $BSDSRC |
cd $BSDSRC |
env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ | env MAKEOBJDIRPREFIX=${BSDOBJ} make \ |
installworld DESTDIR=${WORLD} | TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} ${X_TARGET_CPUTYPE} \ |
| SRCCONF=${SRCCONF} __MAKE_CONF=${MAKECONF} DESTDIR=${WORLD} installworld |
cd - |
cd - |
|
|
if [ $? -eq 0 ]; then |
if [ $? -eq 0 ]; then |
echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix.ver |
echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix.ver |
fi |
fi |
|
|
|
echo "+++ Completed ELWIX World ... $WORLD" |
} |
} |
|
|
build_cross() |
build_cross() |
Line 83 build_cross()
|
Line 110 build_cross()
|
# |
# |
export \\ |
export \\ |
_EOF |
_EOF |
env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ | env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} ${X_TARGET_CPUTYPE} \ |
buildenvvars >> ${CENV} | WORLDTMP=${WORLD} buildenvvars >> ${CENV} |
cat >>${CENV} <<_EOF |
cat >>${CENV} <<_EOF |
PATH=$WORLD/elwix/pkg/bin:$WORLD/elwix/pkg/sbin:/elwix/pkg/bin:/elwix/pkg/sbin:$PKG/bin:$PKG/sbin:\$PATH:$PATH |
PATH=$WORLD/elwix/pkg/bin:$WORLD/elwix/pkg/sbin:/elwix/pkg/bin:/elwix/pkg/sbin:$PKG/bin:$PKG/sbin:\$PATH:$PATH |
|
|
|
if [ -n "\${REPLACE_MAKEOBJDIRPREFIX}" ]; then |
|
MAKEOBJDIRPREFIX="\${REPLACE_MAKEOBJDIRPREFIX}" |
|
fi |
|
|
|
export CROSS_WORLD=$WORLD |
|
export CFLAGS="\$CFLAGS -I\${CROSS_WORLD}/usr/include" |
|
export LDFLAGS="\$LDFLAGS -L\${CROSS_WORLD}/lib -L\${CROSS_WORLD}/usr/lib" |
|
|
_EOF |
_EOF |
cd - |
cd - |
cp ${CENV} ${CBUILD} |
cp ${CENV} ${CBUILD} |
Line 95 _EOF
|
Line 131 _EOF
|
cat >>${CBUILD} <<_EOF |
cat >>${CBUILD} <<_EOF |
make \$* |
make \$* |
_EOF |
_EOF |
|
echo "+++ Ready cross script ${CBUILD}" |
cat >>${CGBUILD} <<_EOF |
cat >>${CGBUILD} <<_EOF |
gmake \$* |
gmake \$* |
_EOF |
_EOF |
|
echo "+++ Ready cross script ${CGBUILD}" |
cat >>${CEXEC} <<_EOF |
cat >>${CEXEC} <<_EOF |
eval \$* |
eval \$* |
_EOF |
_EOF |
|
echo "+++ Ready cross script ${CEXEC}" |
chmod +x ${CBUILD} ${CGBUILD} ${CEXEC} ${CENV} |
chmod +x ${CBUILD} ${CGBUILD} ${CEXEC} ${CENV} |
echo "Done." |
echo "Done." |
} |
} |
|
|
### main() |
### main() |
|
if [ -n "${1}" ]; then |
|
rm ${WORLD}/elwix.ver |
|
fi |
|
|
if ! SnitVer ${WORLD}/elwix.ver; then |
if ! SnitVer ${WORLD}/elwix.ver; then |
clean_world | if [ -z "$1" ]; then |
build_world | clean_world |
| fi |
| # build_toolchain $1 |
| build_world $1 |
install_world |
install_world |
|
|
build_cross |
build_cross |