experimental support for loongson mips64el uefi

This commit is contained in:
longpanda 2021-03-05 23:03:34 +08:00
parent bb7e10d93e
commit b63ce2a3df
294 changed files with 26406 additions and 96 deletions

View file

@ -36,20 +36,34 @@ export SED=$BUSYBOX_PATH/sed
export SLEEP=$BUSYBOX_PATH/sleep
export HEAD=$BUSYBOX_PATH/head
if [ -e $BUSYBOX_PATH/32h ]; then
if [ -e $BUSYBOX_PATH/64h ]; then
#this is arm64
$BUSYBOX_PATH/xzminidecaa64 < $BUSYBOX_PATH/busyboxaa64.xz > $BUSYBOX_PATH/busybox
$BUSYBOX_PATH/vtchmodaa64 $BUSYBOX_PATH/busybox
if [ -e $BUSYBOX_PATH/busyboxaa64.xz ]; then
export VTOY_ARCH=aarch64
elif [ -e $BUSYBOX_PATH/busyboxm64e.xz ]; then
export VTOY_ARCH=mips64el
else
if [ -e $BUSYBOX_PATH/32h ]; then
export VTOY_ARCH=x86_64
else
#this is x86_64
$BUSYBOX_PATH/xzminidec64 < $BUSYBOX_PATH/busybox64.xz > $BUSYBOX_PATH/busybox
if [ -s $BUSYBOX_PATH/busybox ]; then
$BUSYBOX_PATH/vtchmod64 $BUSYBOX_PATH/busybox
else
$BUSYBOX_PATH/xzminidec64_musl < $BUSYBOX_PATH/busybox64.xz > $BUSYBOX_PATH/busybox
$BUSYBOX_PATH/vtchmod64_musl $BUSYBOX_PATH/busybox
fi
export VTOY_ARCH=i386
fi
fi
echo $VTOY_ARCH > $VTOY_PATH/ventoy_arch
if [ "$VTOY_ARCH" = "aarch64" ]; then
$BUSYBOX_PATH/xzminidecaa64 < $BUSYBOX_PATH/busyboxaa64.xz > $BUSYBOX_PATH/busybox
$BUSYBOX_PATH/vtchmodaa64 $BUSYBOX_PATH/busybox
elif [ "$VTOY_ARCH" = "mips64el" ]; then
$BUSYBOX_PATH/xzminidecm64e < $BUSYBOX_PATH/busyboxm64e.xz > $BUSYBOX_PATH/busybox
$BUSYBOX_PATH/vtchmodm64e $BUSYBOX_PATH/busybox
elif [ "$VTOY_ARCH" = "x86_64" ]; then
$BUSYBOX_PATH/xzminidec64 < $BUSYBOX_PATH/busybox64.xz > $BUSYBOX_PATH/busybox
if [ -s $BUSYBOX_PATH/busybox ]; then
$BUSYBOX_PATH/vtchmod64 $BUSYBOX_PATH/busybox
else
$BUSYBOX_PATH/xzminidec64_musl < $BUSYBOX_PATH/busybox64.xz > $BUSYBOX_PATH/busybox
$BUSYBOX_PATH/vtchmod64_musl $BUSYBOX_PATH/busybox
fi
else
$BUSYBOX_PATH/xzminidec32 < $BUSYBOX_PATH/busybox32.xz > $BUSYBOX_PATH/busybox
@ -91,35 +105,47 @@ else
xz -d -c loop.cpio.xz | cpio -idm 2>>$VTLOG
fi
if [ -e $BUSYBOX_PATH/32h ]; then
if [ -e $BUSYBOX_PATH/64h ]; then
echo "Use ARM64 busybox toolkit ..." >>$VTLOG
echo aarch64 > $VTOY_PATH/ventoy_arch
ln -s $BUSYBOX_PATH/xzminidecaa64 $BUSYBOX_PATH/xzminidec
ln -s $VTOY_PATH/tool/dmsetupaa64 $VTOY_PATH/tool/dmsetup
ln -s $VTOY_PATH/tool/lunzipaa64 $VTOY_PATH/tool/lunzip
rm -f $VTOY_PATH/tool/lz4cat $VTOY_PATH/tool/zstdcat
ln -s $VTOY_PATH/tool/lz4cataa64 $VTOY_PATH/tool/lz4cat
ln -s $VTOY_PATH/tool/zstdcataa64 $VTOY_PATH/tool/zstdcat
else
echo "Use x86_64 busybox toolkit ..." >>$VTLOG
echo x86_64 > $VTOY_PATH/ventoy_arch
ln -s $BUSYBOX_PATH/xzminidec64 $BUSYBOX_PATH/xzminidec
ln -s $VTOY_PATH/tool/dmsetup64 $VTOY_PATH/tool/dmsetup
ln -s $VTOY_PATH/tool/lunzip64 $VTOY_PATH/tool/lunzip
rm -f $VTOY_PATH/tool/lz4cat $VTOY_PATH/tool/zstdcat
ln -s $VTOY_PATH/tool/lz4cat64 $VTOY_PATH/tool/lz4cat
ln -s $VTOY_PATH/tool/zstdcat64 $VTOY_PATH/tool/zstdcat
fi
else
if [ "$VTOY_ARCH" = "x86_64" ]; then
echo "Use x86_64 busybox toolkit ..." >>$VTLOG
ln -s $BUSYBOX_PATH/xzminidec64 $BUSYBOX_PATH/xzminidec
ln -s $VTOY_PATH/tool/dmsetup64 $VTOY_PATH/tool/dmsetup
ln -s $VTOY_PATH/tool/lunzip64 $VTOY_PATH/tool/lunzip
rm -f $VTOY_PATH/tool/lz4cat $VTOY_PATH/tool/zstdcat
ln -s $VTOY_PATH/tool/lz4cat64 $VTOY_PATH/tool/lz4cat
ln -s $VTOY_PATH/tool/zstdcat64 $VTOY_PATH/tool/zstdcat
elif [ "$VTOY_ARCH" = "i386" ]; then
echo "Use i386 busybox toolkit ..." >>$VTLOG
echo i386 > $VTOY_PATH/ventoy_arch
ln -s $BUSYBOX_PATH/xzminidec32 $BUSYBOX_PATH/xzminidec
ln -s $VTOY_PATH/tool/dmsetup32 $VTOY_PATH/tool/dmsetup
ln -s $VTOY_PATH/tool/lunzip32 $VTOY_PATH/tool/lunzip
elif [ "$VTOY_ARCH" = "mips64el" ]; then
echo "Use MIPS64 busybox toolkit ..." >>$VTLOG
ln -s $BUSYBOX_PATH/xzminidecm64e $BUSYBOX_PATH/xzminidec
ln -s $VTOY_PATH/tool/dmsetupm64e $VTOY_PATH/tool/dmsetup
# TBD
#ln -s $VTOY_PATH/tool/lunzipm64e $VTOY_PATH/tool/lunzip
rm -f $VTOY_PATH/tool/lz4cat $VTOY_PATH/tool/zstdcat
ln -s $VTOY_PATH/tool/lz4catm64e $VTOY_PATH/tool/lz4cat
# TBD
#ln -s $VTOY_PATH/tool/zstdcataa64 $VTOY_PATH/tool/zstdcat
elif [ "$VTOY_ARCH" = "aarch64" ]; then
echo "Use ARM64 busybox toolkit ..." >>$VTLOG
ln -s $BUSYBOX_PATH/xzminidecaa64 $BUSYBOX_PATH/xzminidec
ln -s $VTOY_PATH/tool/dmsetupaa64 $VTOY_PATH/tool/dmsetup
ln -s $VTOY_PATH/tool/lunzipaa64 $VTOY_PATH/tool/lunzip
rm -f $VTOY_PATH/tool/lz4cat $VTOY_PATH/tool/zstdcat
ln -s $VTOY_PATH/tool/lz4cataa64 $VTOY_PATH/tool/lz4cat
ln -s $VTOY_PATH/tool/zstdcataa64 $VTOY_PATH/tool/zstdcat
else
echo "Unknown busybox toolkit ..." >>$VTLOG
fi
rm -f *.xz

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -39,7 +39,19 @@ if $GREP -q aarch64 $VTOY_PATH/ventoy_arch; then
done
$BUSYBOX_PATH/cp -a $VTOY_PATH/tool/vtoy_fuse_iso_aa64 $VTOY_PATH/tool/vtoy_fuse_iso
$BUSYBOX_PATH/cp -a $VTOY_PATH/tool/unsquashfs_aa64 $VTOY_PATH/tool/vtoy_unsquashfs
$BUSYBOX_PATH/cp -a $VTOY_PATH/tool/unsquashfs_aa64 $VTOY_PATH/tool/vtoy_unsquashfs
elif $GREP -q mips64el $VTOY_PATH/ventoy_arch; then
for vtdir in $(ls $VTOY_PATH/tool/vtoytool/); do
echo "try $VTOY_PATH/tool/vtoytool/$vtdir/ ..." >> $VTLOG
if $VTOY_PATH/tool/vtoytool/$vtdir/vtoytool_m64e --install 2>>$VTLOG; then
echo "vtoytool_m64e OK" >> $VTLOG
break
fi
done
# TBD
#$BUSYBOX_PATH/cp -a $VTOY_PATH/tool/vtoy_fuse_iso_aa64 $VTOY_PATH/tool/vtoy_fuse_iso
#$BUSYBOX_PATH/cp -a $VTOY_PATH/tool/unsquashfs_aa64 $VTOY_PATH/tool/vtoy_unsquashfs
else
for vtdir in $(ls $VTOY_PATH/tool/vtoytool/); do
echo "try $VTOY_PATH/tool/vtoytool/$vtdir/ ..." >> $VTLOG

View file

@ -2,9 +2,15 @@
VENTOY_PATH=$PWD/../
rm -f ventoy.cpio
if [ -d cpio_tmp ]; then
rm -rf cpio_tmp
fi
############### cpio ############
chmod -R 777 cpio
rm -f ventoy.cpio ventoy_x86.cpio ventoy_arm64.cpio ventoy_mips64.cpio
cp -a cpio cpio_tmp
@ -15,24 +21,6 @@ ln -s sbin/init linuxrc
cd ventoy
cp -a $VENTOY_PATH/DMSETUP/dmsetup* tool/
cp -a $VENTOY_PATH/SQUASHFS/unsquashfs_* tool/
cp -a $VENTOY_PATH/FUSEISO/vtoy_fuse_iso_* tool/
cp -a $VENTOY_PATH/VtoyTool/vtoytool tool/
cp -a $VENTOY_PATH/VBLADE/vblade-master/vblade_* tool/
cp -a $VENTOY_PATH/LZIP/lunzip32 tool/
cp -a $VENTOY_PATH/LZIP/lunzip64 tool/
cp -a $VENTOY_PATH/LZIP/lunzipaa64 tool/
chmod -R 777 ./tool
find ./tool | cpio -o -H newc>tool.cpio
xz tool.cpio
rm -rf tool
find ./loop | cpio -o -H newc>loop.cpio
xz loop.cpio
rm -rf loop
@ -50,8 +38,110 @@ find .| cpio -o -H newc>../ventoy.cpio
cd ..
rm -rf cpio_tmp
########## cpio_x86 ##############
chmod -R 777 cpio_x86
cp -a cpio_x86 cpio_tmp
cd cpio_tmp/ventoy
cp -a $VENTOY_PATH/DMSETUP/dmsetup32 tool/
cp -a $VENTOY_PATH/DMSETUP/dmsetup64 tool/
cp -a $VENTOY_PATH/SQUASHFS/unsquashfs_32 tool/
cp -a $VENTOY_PATH/SQUASHFS/unsquashfs_64 tool/
cp -a $VENTOY_PATH/FUSEISO/vtoy_fuse_iso_32 tool/
cp -a $VENTOY_PATH/FUSEISO/vtoy_fuse_iso_64 tool/
cp -a $VENTOY_PATH/VtoyTool/vtoytool tool/
rm -f tool/vtoytool/00/vtoytool_aa64
rm -f tool/vtoytool/00/vtoytool_m64e
cp -a $VENTOY_PATH/VBLADE/vblade-master/vblade_32 tool/
cp -a $VENTOY_PATH/VBLADE/vblade-master/vblade_64 tool/
cp -a $VENTOY_PATH/LZIP/lunzip32 tool/
cp -a $VENTOY_PATH/LZIP/lunzip64 tool/
chmod -R 777 ./tool
find ./tool | cpio -o -H newc>tool.cpio
xz tool.cpio
rm -rf tool
cd ..
find .| cpio -o -H newc>../ventoy_x86.cpio
cd ..
rm -rf cpio_tmp
########## cpio_arm64 ##############
chmod -R 777 cpio_arm64
cp -a cpio_arm64 cpio_tmp
cp -a cpio_x86/ventoy/tool/*.sh cpio_tmp/ventoy/tool/
cd cpio_tmp/ventoy
cp -a $VENTOY_PATH/DMSETUP/dmsetupaa64 tool/
cp -a $VENTOY_PATH/SQUASHFS/unsquashfs_aa64 tool/
cp -a $VENTOY_PATH/FUSEISO/vtoy_fuse_iso_aa64 tool/
cp -a $VENTOY_PATH/VtoyTool/vtoytool tool/
rm -f tool/vtoytool/00/vtoytool_32
rm -f tool/vtoytool/00/vtoytool_64
rm -f tool/vtoytool/00/vtoytool_m64e
cp -a $VENTOY_PATH/VBLADE/vblade-master/vblade_aa64 tool/
cp -a $VENTOY_PATH/LZIP/lunzipaa64 tool/
chmod -R 777 ./tool
find ./tool | cpio -o -H newc>tool.cpio
xz tool.cpio
rm -rf tool
cd ..
find .| cpio -o -H newc>../ventoy_arm64.cpio
cd ..
rm -rf cpio_tmp
########## cpio_mips64 ##############
chmod -R 777 cpio_mips64
cp -a cpio_mips64 cpio_tmp
cp -a cpio_x86/ventoy/tool/*.sh cpio_tmp/ventoy/tool/
cd cpio_tmp/ventoy
cp -a $VENTOY_PATH/DMSETUP/dmsetupm64e tool/
# cp -a $VENTOY_PATH/SQUASHFS/unsquashfs_m64e tool/
# cp -a $VENTOY_PATH/FUSEISO/vtoy_fuse_iso_m64e tool/
cp -a $VENTOY_PATH/VtoyTool/vtoytool tool/
rm -f tool/vtoytool/00/vtoytool_32
rm -f tool/vtoytool/00/vtoytool_64
rm -f tool/vtoytool/00/vtoytool_aa64
# cp -a $VENTOY_PATH/VBLADE/vblade-master/vblade_m64e tool/
# cp -a $VENTOY_PATH/LZIP/lunzipaa64 tool/
chmod -R 777 ./tool
find ./tool | cpio -o -H newc>tool.cpio
xz tool.cpio
rm -rf tool
cd ..
find .| cpio -o -H newc>../ventoy_mips64.cpio
cd ..
rm -rf cpio_tmp
echo '======== SUCCESS ============='
rm -f $VENTOY_PATH/INSTALL/ventoy/ventoy.cpio
cp -a ventoy.cpio $VENTOY_PATH/INSTALL/ventoy/
rm -f $VENTOY_PATH/INSTALL/ventoy/ventoy*.cpio
cp -a ventoy*.cpio $VENTOY_PATH/INSTALL/ventoy/