Fix segfault with evince
[hvlinux.git] / stage1 / pkg / linux
index 0857772..79d09cd 100644 (file)
@@ -1,17 +1,17 @@
 #!/bin/bash
 
-HV_NO_CONFIGURE_SCRIPT=1
-
 hvbuild()
 {
-    cd ${LFS_TMP}/${PACKAGE}
-
-    # Move kernel source files to their final destination
-    mkdir -pv ${LFS}/usr/src
+    # Decompress kernel sources
     decompress_package ${PACKAGE} ${LFS}/usr/src
 
-    cd ${LFS}/usr/src/${PACKAGE}
-    ${HVMAKE} mrproper
+    apply_patches ${PACKAGE} ${LFS}/usr/src
+
+    # Copy kernel configuration file in source tree.
+    cp -v ${SCRDIR}/../config/${KERNEL_CONFIG} ${LFS}/usr/src/${PACKAGE}/.config
+
+    # Remove modules support
+    sed -i -e "s!CONFIG_MODULES=y!CONFIG_MODULES=n!" ${LFS}/usr/src/${PACKAGE}/.config
 
     # Install HV kernel compilation script:
     VERSION=$(get_pkg_ver ${PACKAGE})
@@ -25,13 +25,19 @@ hvbuild()
     echo "PATH=\${PATH}:${LFS}/cross-tools/bin" >> ${SCRIPT}
     echo "" >> ${SCRIPT}
 
-    echo "make ARCH=${CLFS_ARCH} CROSS_COMPILE=${CLFS_TARGET}- menuconfig" >> ${SCRIPT}
+    # The 'yes' command repeatedly output a line with all specified string, or
+    # 'y' by default. So, you can use it to simply "press enter", which will
+    # result in using the defaults value for the 'make oldconfig' command.
+    echo 'yes "" | make ARCH=${CLFS_ARCH} CROSS_COMPILE=${CLFS_TARGET}- oldconfig' >> ${SCRIPT}
+
+    echo "#make ARCH=${CLFS_ARCH} CROSS_COMPILE=${CLFS_TARGET}- menuconfig" >> ${SCRIPT}
 
     # Compile the kernel image:
     echo "make ARCH=${CLFS_ARCH} CROSS_COMPILE=${CLFS_TARGET}-" >> ${SCRIPT}
 
     # Install the kernel:
     echo "cp -v arch/${CLFS_ARCH}/boot/bzImage \${DEST}/vmlinuz-\${KERNEL_NAME}" >> ${SCRIPT}
+    echo "ln -svf vmlinuz-\${KERNEL_NAME} \${DEST}/vmlinuz" >> ${SCRIPT}
 
     # Install map file:
     echo "cp -v System.map \${DEST}/System.map-\${KERNEL_NAME}" >> ${SCRIPT}
@@ -40,4 +46,9 @@ hvbuild()
     echo "cp -v .config \${DEST}/config-\${KERNEL_NAME}" >> ${SCRIPT}
 
     chmod -v u+x ${SCRIPT}
+
+    cd ${LFS}/usr/src/${PACKAGE}
+
+    # Execute compilation script
+    ${SCRIPT}
 }