From e18081d75c489f6ea2f2efe061be4f2a79be032c Mon Sep 17 00:00:00 2001 From: Robert Nelson <robertcnelson@gmail.com> Date: Thu, 7 Feb 2013 17:50:34 -0600 Subject: [PATCH] RootStock-NG: firmware: no reason to clone with every chroot, just copy Signed-off-by: Robert Nelson <robertcnelson@gmail.com> --- RootStock-NG.sh | 31 +++++++++++++++++++++++++++++- scripts/chroot.sh | 48 +++++++++++++++++------------------------------ 2 files changed, 47 insertions(+), 32 deletions(-) diff --git a/RootStock-NG.sh b/RootStock-NG.sh index bf2907160..46706a0e1 100755 --- a/RootStock-NG.sh +++ b/RootStock-NG.sh @@ -46,6 +46,26 @@ base_pkg_list="${base_pkg_list} apache2 openssh-server" #Wireless base_pkg_list="${base_pkg_list} wireless-tools wpasupplicant" +generic_git () { + if [ ! -f ${DIR}/git/${git_project_name}/.git/config ] ; then + git clone ${git_clone_address} ${DIR}/git/${git_project_name} + fi +} + +setup_git_trees () { + if [ ! -d ${DIR}/git/ ] ; then + mkdir -p ${DIR}/git/ + fi + + git_project_name="linux-firmware" + git_clone_address="git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git" + generic_git + + git_project_name="am33x-cm3" + git_clone_address="git://arago-project.org/git/projects/am33x-cm3.git" + generic_git +} + run_project () { #Mininum: #linux-image*.deb @@ -91,7 +111,16 @@ a53t|zeus|hestia|poseidon) ;; esac -chroot_ENABLE_FIRMWARE="enable" +setup_git_trees + +cd ${DIR}/git/linux-firmware +git pull + +cd ${DIR}/git/am33x-cm3 +git pull + +cd ${DIR}/ + chroot_ENABLE_DEB_SRC="enable" distro="debian" diff --git a/scripts/chroot.sh b/scripts/chroot.sh index a5a988c72..265c23037 100755 --- a/scripts/chroot.sh +++ b/scripts/chroot.sh @@ -176,31 +176,6 @@ cat > ${DIR}/chroot_script.sh <<-__EOF__ apt-get -y --force-yes install ${base_pkg_list} } - git_firmware () { - unset deb_pkgs - dpkg -l | grep git-core >/dev/null || deb_pkgs="git-core " - - if [ "\${deb_pkgs}" ] ; then - apt-get -y --force-yes install \${deb_pkgs} - fi - - git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git /tmp/linux-firmware - - mkdir -p /lib/firmware/ti-connectivity - cp -v /tmp/linux-firmware/LICENCE.ti-connectivity /lib/firmware/ - cp -v /tmp/linux-firmware/ti-connectivity/* /lib/firmware/ti-connectivity - - cp -v /tmp/linux-firmware/carl9170-1.fw /lib/firmware/ - - rm -rf /tmp/linux-firmware || true - - git clone git://arago-project.org/git/projects/am33x-cm3.git /tmp/am33x-cm3 - - cp -v /tmp/am33x-cm3/bin/am335x-pm-firmware.bin /lib/firmware/am335x-pm-firmware.bin - - rm -rf /tmp/am33x-cm3 || true - } - dl_pkg_src () { mkdir -p /tmp/pkg_src/ cd /tmp/pkg_src/ @@ -226,6 +201,7 @@ cat > ${DIR}/chroot_script.sh <<-__EOF__ depmod \${kernel_version} update-initramfs -c -k \${kernel_version} + rm -f /tmp/index.html || true } cleanup () { @@ -255,10 +231,6 @@ cat > ${DIR}/chroot_script.sh <<-__EOF__ install_pkg_updates install_pkgs - if [ "x${chroot_ENABLE_FIRMWARE}" = "xenable" ] ; then - git_firmware - fi - if [ "x${chroot_ENABLE_DEB_SRC}" = "xenable" ] ; then dl_pkg_src fi @@ -289,15 +261,29 @@ __EOF__ sudo mv ${DIR}/chroot_script.sh ${tempdir}/chroot_script.sh +if [ -d ${DIR}/git/linux-firmware/ti-connectivity/ ] ; then + sudo mkdir -p ${tempdir}/lib/firmware/ti-connectivity + sudo cp -v ${DIR}/git/linux-firmware/LICENCE.ti-connectivity ${tempdir}/lib/firmware/ + sudo cp -v ${DIR}/git/linux-firmware/ti-connectivity/* ${tempdir}/lib/firmware/ti-connectivity +fi + +if [ -f ${DIR}/git/linux-firmware/carl9170-1.fw ] ; then + sudo cp -v ${DIR}/git/linux-firmware/carl9170-1.fw ${tempdir}/lib/firmware/ +fi + +if [ -f ${DIR}/git/am33x-cm3/bin/am335x-pm-firmware.bin ] ; then + sudo cp -v ${DIR}/git/am33x-cm3/bin/am335x-pm-firmware.bin ${tempdir}/lib/firmware/am335x-pm-firmware.bin +fi + chroot_mount sudo chroot ${tempdir} /bin/sh chroot_script.sh if ls ${tempdir}/boot/vmlinuz-* >/dev/null 2>&1 ; then - sudo cp -v ${tempdir}/boot/vmlinuz-* ${DIR}/ + sudo mv -v ${tempdir}/boot/vmlinuz-* ${DIR}/ fi if ls ${tempdir}/boot/initrd.img-* >/dev/null 2>&1;then - sudo cp -v ${tempdir}/boot/initrd.img-* ${DIR}/ + sudo mv -v ${tempdir}/boot/initrd.img-* ${DIR}/ fi report_size -- GitLab