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