12 Star 75 Fork 13

wine-ce / wine-ce

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
build_all.sh 2.19 KB
一键复制 编辑 原始数据 按行查看 历史
Fan WenJie 提交于 2023-01-23 21:10 . initialize wine-ce project
#!/bin/sh
INSTALL_DIR=/opt/wine-ce
if [ $# -gt 0 ] ; then
INSTALL_DIR=$1
fi
echo "install directory: $INSTALL_DIR"
ARCH_PLATFORM=$(arch)
QEMU_TARGET_LIST=
BOX64_DYNAREC=
if [ "$ARCH_PLATFORM" = "x86_64" ] || [ "$ARCH_PLATFORM" = "amd64" ]; then
QEMU_TARGET_LIST="aarch64-linux-user"
elif [ "$ARCH_PLATFORM" = "aarch64" ] || [ "$ARCH_PLATFORM" = "arm64" ]; then
BOX64_DYNAREC="ARM_DYNAREC"
elif [ "$ARCH_PLATFORM" = "riscv64" ]; then
BOX64_DYNAREC="RV64_DYNAREC"
QEMU_TARGET_LIST="aarch64-linux-user"
else
QEMU_TARGET_LIST="x86_64-linux-user,aarch64-linux-user"
fi
echo "Build Wine"
cd wine
i386_CC="clang -fuse-ld=lld -march=x86-64 --target=i686-pc-windows" \
x86_64_CC="clang -fuse-ld=lld -march=x86-64 --target=x86_64-pc-windows" \
x86_64_UNIX_CC="clang -fuse-ld=lld -march=x86-64 --target=x86_64-pc-linux -I/usr/x86_64-linux-gnu/include" \
aarch64_CC="clang -fuse-ld=lld -march=armv8+lse --target=aarch64-pc-windows" \
aarch64_UNIX_CC="clang -fuse-ld=lld -march=armv8+lse --target=aarch64-pc-linux -I/usr/aarch64-linux-gnu/include" \
./configure --prefix="$INSTALL_DIR" --disable-tests --enable-archs=i386,x86_64,aarch64
make -j$(nproc)
rm -rf $INSTALL_DIR
make install-lib
cd ..
if [ $QEMU_TARGET_LIST ]; then
echo "Build QEMU"
rm -rf build.qemu
mkdir build.qemu && cd build.qemu
CC=gcc CC_FOR_BUILD="$CC" CXX="$CC" HOST_CC="$CC" CFLAGS="-fPIC" \
LDFLAGS="-Wl,-Ttext-segment=0x100000000 -Wl,-z,max-page-size=0x1000 -Wl,-Bstatic,-lglib-2.0 -Wl,-Bdynamic,-ldl" \
../qemu/configure --without-default-features --disable-fdt --disable-system --enable-ca11c0de --disable-rcu --target-list=$QEMU_TARGET_LIST
ninja -j$(nproc)
if [ -e qemu-x86_64 ] ; then
strip qemu-x86_64 -o "$INSTALL_DIR"/bin/qemu-x86_64
fi
if [ -e qemu-aarch64 ] ; then
strip qemu-aarch64 -o "$INSTALL_DIR"/bin/qemu-aarch64
fi
cd ..
fi
if [ $BOX64_DYNAREC ]; then
echo "Build BOX64"
rm -rf build.box64
mkdir build.box64 && cd build.box64
cmake -D $BOX64_DYNAREC=ON -D CMAKE_POSITION_INDEPENDENT_CODE=ON -D CMAKE_BUILD_TYPE=RelWithDebinfo ../box64
make -j$(nproc)
cp box64 "$INSTALL_DIR"/bin/box64
cd ..
fi
sh generate_scripts.sh "$INSTALL_DIR"/bin
C
1
https://gitee.com/wine-ce/wine-ce.git
git@gitee.com:wine-ce/wine-ce.git
wine-ce
wine-ce
wine-ce
main

搜索帮助

53164aa7 5694891 3bd8fe86 5694891