mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
buildsys: define TARGET_KERNEL_ARCH early
This commit is contained in:
parent
436e3e6937
commit
ae9e7cab5f
@ -47,6 +47,9 @@
|
||||
;;
|
||||
esac
|
||||
|
||||
TARGET_GCC_ARCH=$(echo $TARGET_SUBARCH | sed -e "s,-,,")
|
||||
TARGET_KERNEL_ARCH=arm
|
||||
|
||||
# setup ARCH specific *FLAGS
|
||||
TARGET_CFLAGS="-march=$TARGET_SUBARCH -mabi=aapcs-linux -Wno-psabi -Wa,-mno-warn-deprecated $TARGET_EXTRA_FLAGS"
|
||||
[ -n "$TARGET_FPU" ] && TARGET_CFLAGS="$TARGET_CFLAGS $TARGET_FPU_FLAGS"
|
||||
|
@ -6,6 +6,9 @@
|
||||
# determine architecture's family
|
||||
TARGET_SUBARCH=x86_64
|
||||
|
||||
TARGET_GCC_ARCH=$(echo $TARGET_SUBARCH | sed -e "s,-,,")
|
||||
TARGET_KERNEL_ARCH=x86
|
||||
|
||||
# setup ARCH specific *FLAGS
|
||||
TARGET_CFLAGS="-march=$TARGET_CPU -m64"
|
||||
TARGET_LDFLAGS="-march=$TARGET_CPU -m64"
|
||||
|
@ -17,7 +17,7 @@ set -e
|
||||
fi
|
||||
|
||||
HOST_NAME=`$LOCAL_CC -dumpmachine`
|
||||
TARGET_NAME=$(echo $TARGET_SUBARCH | sed -e "s,-,,")-openelec-linux-gnu${TARGET_ABI}
|
||||
TARGET_NAME=$TARGET_GCC_ARCH-openelec-linux-gnu${TARGET_ABI}
|
||||
|
||||
BUILD=$BUILD_BASE.$DISTRONAME-$PROJECT.$TARGET_ARCH-$OPENELEC_VERSION
|
||||
if [ "$OPENELEC_VERSION" = "devel" ] ; then
|
||||
|
@ -40,7 +40,7 @@ pre_make_target() {
|
||||
|
||||
make_target() {
|
||||
make V=1 \
|
||||
ARCH=$TARGET_ARCH \
|
||||
ARCH=$TARGET_KERNEL_ARCH \
|
||||
KSRC=$(kernel_path) \
|
||||
CROSS_COMPILE=$TARGET_PREFIX \
|
||||
CONFIG_POWER_SAVING=n
|
||||
|
@ -39,7 +39,7 @@ pre_make_target() {
|
||||
|
||||
make_target() {
|
||||
make V=1 \
|
||||
ARCH=$TARGET_ARCH \
|
||||
ARCH=$TARGET_KERNEL_ARCH \
|
||||
KSRC=$(kernel_path) \
|
||||
CROSS_COMPILE=$TARGET_PREFIX \
|
||||
CONFIG_POWER_SAVING=n
|
||||
|
@ -39,7 +39,7 @@ pre_make_target() {
|
||||
|
||||
make_target() {
|
||||
make V=1 \
|
||||
ARCH=$TARGET_ARCH \
|
||||
ARCH=$TARGET_KERNEL_ARCH \
|
||||
KSRC=$(kernel_path) \
|
||||
CROSS_COMPILE=$TARGET_PREFIX \
|
||||
CONFIG_POWER_SAVING=n
|
||||
|
@ -39,7 +39,7 @@ pre_make_target() {
|
||||
|
||||
make_target() {
|
||||
make V=1 \
|
||||
ARCH=$TARGET_ARCH \
|
||||
ARCH=$TARGET_KERNEL_ARCH \
|
||||
KSRC=$(kernel_path) \
|
||||
CROSS_COMPILE=$TARGET_PREFIX \
|
||||
CONFIG_POWER_SAVING=n \
|
||||
|
@ -39,7 +39,7 @@ pre_make_target() {
|
||||
|
||||
make_target() {
|
||||
make V=1 \
|
||||
ARCH=$TARGET_ARCH \
|
||||
ARCH=$TARGET_KERNEL_ARCH \
|
||||
KSRC=$(kernel_path) \
|
||||
CROSS_COMPILE=$TARGET_PREFIX \
|
||||
CONFIG_POWER_SAVING=n
|
||||
|
@ -38,7 +38,7 @@ PKG_AUTORECONF="no"
|
||||
|
||||
make_target() {
|
||||
cd x86-64
|
||||
KBUILD_NOPEDANTIC=1 make V=1 CC=$CC -C $(kernel_path) M=`pwd` BINARCH=$TARGET_ARCH
|
||||
KBUILD_NOPEDANTIC=1 make V=1 CC=$CC -C $(kernel_path) M=`pwd` BINARCH=$TARGET_KERNEL_ARCH
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
|
@ -48,7 +48,7 @@ esac
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
PKG_MAKE_OPTS_HOST="ARCH=$TARGET_ARCH headers_check"
|
||||
PKG_MAKE_OPTS_HOST="ARCH=$TARGET_KERNEL_ARCH headers_check"
|
||||
|
||||
if [ "$BOOTLOADER" = "u-boot" ]; then
|
||||
KERNEL_IMAGE="$KERNEL_UBOOT_TARGET"
|
||||
@ -69,7 +69,7 @@ post_patch() {
|
||||
|
||||
sed -i -e "s|^HOSTCC[[:space:]]*=.*$|HOSTCC = $HOST_CC|" \
|
||||
-e "s|^HOSTCXX[[:space:]]*=.*$|HOSTCXX = $HOST_CXX|" \
|
||||
-e "s|^ARCH[[:space:]]*?=.*$|ARCH = $TARGET_ARCH|" \
|
||||
-e "s|^ARCH[[:space:]]*?=.*$|ARCH = $TARGET_KERNEL_ARCH|" \
|
||||
-e "s|^CROSS_COMPILE[[:space:]]*?=.*$|CROSS_COMPILE = $TARGET_PREFIX|" \
|
||||
$PKG_BUILD/Makefile
|
||||
|
||||
@ -112,7 +112,7 @@ post_patch() {
|
||||
}
|
||||
|
||||
makeinstall_host() {
|
||||
make ARCH=$TARGET_ARCH INSTALL_HDR_PATH=dest headers_install
|
||||
make ARCH=$TARGET_KERNEL_ARCH INSTALL_HDR_PATH=dest headers_install
|
||||
mkdir -p $SYSROOT_PREFIX/usr/include
|
||||
cp -R dest/include/* $SYSROOT_PREFIX/usr/include
|
||||
}
|
||||
@ -148,25 +148,25 @@ make_target() {
|
||||
LDFLAGS="" make $KERNEL_IMAGE $KERNEL_MAKE_EXTRACMD
|
||||
|
||||
if [ "$BUILD_ANDROID_BOOTIMG" = "yes" ]; then
|
||||
LDFLAGS="" mkbootimg --kernel arch/arm/boot/$KERNEL_IMAGE --ramdisk $ROOT/$BUILD/image/initramfs.cpio \
|
||||
--second "$ANDROID_BOOTIMG_SECOND" --output arch/arm/boot/boot.img
|
||||
mv -f arch/arm/boot/boot.img arch/arm/boot/$KERNEL_IMAGE
|
||||
LDFLAGS="" mkbootimg --kernel arch/$TARGET_KERNEL_ARCH/boot/$KERNEL_IMAGE --ramdisk $ROOT/$BUILD/image/initramfs.cpio \
|
||||
--second "$ANDROID_BOOTIMG_SECOND" --output arch/$TARGET_KERNEL_ARCH/boot/boot.img
|
||||
mv -f arch/$TARGET_KERNEL_ARCH/boot/boot.img arch/$TARGET_KERNEL_ARCH/boot/$KERNEL_IMAGE
|
||||
fi
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
if [ "$BOOTLOADER" = "u-boot" ]; then
|
||||
mkdir -p $INSTALL/usr/share/bootloader
|
||||
for dtb in arch/arm/boot/dts/*.dtb; do
|
||||
for dtb in arch/TARGET_KERNEL_ARCH/boot/dts/*.dtb; do
|
||||
cp $dtb $INSTALL/usr/share/bootloader 2>/dev/null || :
|
||||
done
|
||||
elif [ "$BOOTLOADER" = "bcm2835-bootloader" ]; then
|
||||
mkdir -p $INSTALL/usr/share/bootloader/overlays
|
||||
cp -p arch/arm/boot/dts/*.dtb $INSTALL/usr/share/bootloader
|
||||
for dtb in arch/arm/boot/dts/overlays/*.dtb; do
|
||||
cp -p arch/TARGET_KERNEL_ARCH/boot/dts/*.dtb $INSTALL/usr/share/bootloader
|
||||
for dtb in arch/TARGET_KERNEL_ARCH/boot/dts/overlays/*.dtb; do
|
||||
cp $dtb $INSTALL/usr/share/bootloader/overlays 2>/dev/null || :
|
||||
done
|
||||
cp -p arch/arm/boot/dts/overlays/README $INSTALL/usr/share/bootloader/overlays
|
||||
cp -p arch/TARGET_KERNEL_ARCH/boot/dts/overlays/README $INSTALL/usr/share/bootloader/overlays
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -226,18 +226,12 @@ fi
|
||||
KERNEL_IMAGE="bzImage"
|
||||
fi
|
||||
|
||||
if [ "$TARGET_ARCH" = x86_64 ]; then
|
||||
KERNEL_ARCH="x86"
|
||||
elif [ "$TARGET_ARCH" = arm ]; then
|
||||
KERNEL_ARCH="arm"
|
||||
fi
|
||||
|
||||
if [ "$BOOTLOADER" = "bcm2835-bootloader" ]; then
|
||||
echo "injecting DeviceTreeBlobs to kernel..."
|
||||
perl $BUILD/linux-$(kernel_version)/scripts/mkknlimg $BUILD/linux-$(kernel_version)/arch/$KERNEL_ARCH/boot/$KERNEL_IMAGE $TARGET_IMG/$IMAGE_NAME.kernel
|
||||
perl $BUILD/linux-$(kernel_version)/scripts/mkknlimg $BUILD/linux-$(kernel_version)/arch/$TARGET_KERNEL_ARCH/boot/$KERNEL_IMAGE $TARGET_IMG/$IMAGE_NAME.kernel
|
||||
echo "...done"
|
||||
else
|
||||
cp -PR $BUILD/linux-$(kernel_version)/arch/$KERNEL_ARCH/boot/$KERNEL_IMAGE $TARGET_IMG/$IMAGE_NAME.kernel
|
||||
cp -PR $BUILD/linux-$(kernel_version)/arch/$TARGET_KERNEL_ARCH/boot/$KERNEL_IMAGE $TARGET_IMG/$IMAGE_NAME.kernel
|
||||
fi
|
||||
chmod 0644 $TARGET_IMG/$IMAGE_NAME.kernel
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user