version 1.1.2.10, 2013/07/31 16:28:45
|
version 1.3.2.3, 2016/12/15 14:32:50
|
Line 1
|
Line 1
|
#!/bin/sh |
#!/bin/sh |
# |
# |
# ELWIX Build script for ELWIX raw base firmware | # ELWIX Build script for ELWIX raw BaseFS firmware |
# |
# |
# (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org> |
# (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org> |
# by Michael Pounov <misho@elwix.org> |
# by Michael Pounov <misho@elwix.org> |
Line 25 fi
|
Line 25 fi
|
|
|
if [ "${USER}" != "root" ]; then |
if [ "${USER}" != "root" ]; then |
echo |
echo |
echo "ELWIX project is not configured - base must build under root !?!" | echo "ELWIX project is not configured - BaseFS must build under root !?!" |
echo |
echo |
exit 1 |
exit 1 |
fi |
fi |
|
|
clean_basefs() |
clean_basefs() |
{ |
{ |
echo "+++ Clean ELWIX base firmware ..." | echo "+++ Clean ELWIX BaseFS firmware ... $BASEFS" |
chflags -Rf noschg $BASEFS $BASE_FS | chflags -Rf noschg,nosunlink $BASEFS $BASE_FS |
rm -rf $BASEFS $BASE_FS ${REL}/${BASE_OS} | rm -rf $BASEFS $BASE_FS ${REL}/${BASE_OS} ${REL}/kernel.gz |
} |
} |
|
|
build_basefs() |
build_basefs() |
{ |
{ |
echo "+++ Build ELWIX base directory ..." | echo "+++ Build ELWIX BaseFS directory ... $BASEFS" |
mkdir -p $BASEFS |
mkdir -p $BASEFS |
|
|
cd $BASEFS |
cd $BASEFS |
Line 56 build_basefs()
|
Line 56 build_basefs()
|
install -d elwix/altroot; |
install -d elwix/altroot; |
install -d elwix/altroot/var; |
install -d elwix/altroot/var; |
install -d elwix/cf; |
install -d elwix/cf; |
|
case ${TARGET} in |
|
i386) |
|
ln -fs /dev/ada0g elwix/cf/map.cfg |
|
;; |
|
mips) |
|
ln -fs /dev/map/cfg elwix/cf/map.cfg |
|
;; |
|
esac |
install -d elwix/etc; |
install -d elwix/etc; |
install -d -o 883 -g 883 elwix/etc/mqtt; |
install -d -o 883 -g 883 elwix/etc/mqtt; |
install -d elwix/exports; |
install -d elwix/exports; |
install -d elwix/home; |
install -d elwix/home; |
install -d -m 0750 elwix/root; |
install -d -m 0750 elwix/root; |
install -d -m 0750 elwix/root/.ssh; |
install -d -m 0750 elwix/root/.ssh; |
install -d elwix/system; |
|
install -d elwix/tftpboot; |
install -d elwix/tftpboot; |
install -d elwix/pkg; |
install -d elwix/pkg; |
install -d elwix/pkg/bin; |
install -d elwix/pkg/bin; |
Line 74 build_basefs()
|
Line 81 build_basefs()
|
ln -fs /elwix/exports exports; |
ln -fs /elwix/exports exports; |
ln -fs /elwix/home home; |
ln -fs /elwix/home home; |
ln -fs /elwix/root root; |
ln -fs /elwix/root root; |
ln -fs /elwix/system system; |
|
ln -fs /elwix/tftpboot tftpboot; |
ln -fs /elwix/tftpboot tftpboot; |
install -d mnt; |
install -d mnt; |
install -d -m 0555 proc; |
install -d -m 0555 proc; |
Line 120 install_basefs()
|
Line 126 install_basefs()
|
SKEL="${SHARE}/skel" |
SKEL="${SHARE}/skel" |
MISC="${SHARE}/misc" |
MISC="${SHARE}/misc" |
|
|
echo "+++ Install ELWIX base software ..." | echo "+++ Install ELWIX BaseFS software ... $BASEFS" |
if [ -r ${BSDSRC}/release/picobsd/mfs_tree/etc/termcap ]; then |
if [ -r ${BSDSRC}/release/picobsd/mfs_tree/etc/termcap ]; then |
install -v -m 644 ${BSDSRC}/release/picobsd/mfs_tree/etc/termcap $MISC; |
install -v -m 644 ${BSDSRC}/release/picobsd/mfs_tree/etc/termcap $MISC; |
install -v -m 644 ${BSDSRC}/release/picobsd/mfs_tree/etc/services $MISC; |
install -v -m 644 ${BSDSRC}/release/picobsd/mfs_tree/etc/services $MISC; |
Line 137 install_basefs()
|
Line 143 install_basefs()
|
|
|
find ${WORLD}/libexec -type f -name ld-elf.so\* -exec install {} $LIBEXEC \; |
find ${WORLD}/libexec -type f -name ld-elf.so\* -exec install {} $LIBEXEC \; |
|
|
find ${WORLD}/lib -type f -name \*.so.\* -exec install {} $LIBS \; | find ${WORLD}/lib -type f -name \*.so.\* ! -name \*.debug -exec install {} $LIBS \; |
find ${WORLD}/lib -type f -name libalias_\*.so -exec install {} $LIBS \; |
find ${WORLD}/lib -type f -name libalias_\*.so -exec install {} $LIBS \; |
find ${WORLD}/lib/geom -type f -name \*.so -exec install {} $LIBS/geom \; |
find ${WORLD}/lib/geom -type f -name \*.so -exec install {} $LIBS/geom \; |
find ${WORLD}/usr/lib -type f -name \*.so.\* -exec install {} $LIBS \; | find ${WORLD}/usr/lib -type f -name \*.so.\* ! -name \*.debug -exec install {} $LIBS \; |
find ${WORLD}/usr/lib/engines -type f -name \*.so -exec install {} $LIBS/engines \; |
find ${WORLD}/usr/lib/engines -type f -name \*.so -exec install {} $LIBS/engines \; |
|
|
InstallList ${ELWIX_BASEFS} ${WORLD} ${BASEFS} |
InstallList ${ELWIX_BASEFS} ${WORLD} ${BASEFS} |
Line 153 install_basefs()
|
Line 159 install_basefs()
|
InstallDir ${WORLD}/usr/local/libdata $LIBDATA |
InstallDir ${WORLD}/usr/local/libdata $LIBDATA |
|
|
chown -R root:wheel $SBIN $BIN $USBIN $UBIN $LIBDATA $LIBEXEC $LIBS |
chown -R root:wheel $SBIN $BIN $USBIN $UBIN $LIBDATA $LIBEXEC $LIBS |
|
|
|
echo "+++ Completed ELWIX BaseFS software ... $BASEFS" |
} |
} |
|
|
prepare_fs() |
prepare_fs() |
{ |
{ |
echo "+++ Prepare ELWIX fs ..." | echo "+++ Prepare ELWIX fs ... $BASEFS --> $1" |
mkdir -p $1 |
mkdir -p $1 |
|
|
if [ -d ${BASEFS} ]; then |
if [ -d ${BASEFS} ]; then |
Line 173 create_etc_fstab()
|
Line 181 create_etc_fstab()
|
# Automatic generated fstab for ELWIX $2 at ${BUILD_DATE} |
# Automatic generated fstab for ELWIX $2 at ${BUILD_DATE} |
# |
# |
/dev/ufs/elwix / ufs ro 0 1 |
/dev/ufs/elwix / ufs ro 0 1 |
md2 /tmp mfs rw,-s8m,-oasync,-S 0 0 | md0 /tmp mfs rw,-s8m,-oasync,-S,-n 0 0 |
md3 /var mfs rw,-s16m,-S 0 0 | md1 /var mfs rw,-s16m,-S,-n 0 0 |
_EOF |
_EOF |
} |
} |
|
|
install_fs() |
install_fs() |
{ |
{ |
echo "+++ Install ELWIX base $1 in bundle OS install file ..." | echo "+++ Install ELWIX BaseFS $1 in bundle OS install file ..." |
OSZ="" |
OSZ="" |
|
|
install -v ${KERNEL} $1/boot/kernel; |
install -v ${KERNEL} $1/boot/kernel; |
cd $1/boot/kernel; |
cd $1/boot/kernel; |
gzip -9 kernel; |
gzip -9 kernel; |
|
cp kernel.gz ${REL} |
cd -; |
cd -; |
|
echo "+++ Released native ELWIX kernel ... ${REL}/kernel.gz" |
|
|
case "$2" in |
case "$2" in |
*) |
*) |
Line 196 install_fs()
|
Line 206 install_fs()
|
|
|
cd $1 |
cd $1 |
tar -czvf $OSZ . |
tar -czvf $OSZ . |
|
echo "+++ Completed ELWIX BaseFS $1 --> $OSZ" |
} |
} |
|
|
### main() |
### main() |
Line 214 MakeFS_backup ${BASE_FS}/elwix
|
Line 225 MakeFS_backup ${BASE_FS}/elwix
|
MakeFS_boot ${BASE_FS} |
MakeFS_boot ${BASE_FS} |
install_fs ${BASE_FS} |
install_fs ${BASE_FS} |
|
|
echo "+++ Complete build ELWIX base" | echo "+++ Complete build ELWIX BaseFS system" |
| echo "ELWIX BaseFS finish version ${VERSION}, Good luck!" |