]> code.delx.au - refind/blobdiff - mkdistrib
Previous commit broke loading of EFI drivers with SB active; fix it.
[refind] / mkdistrib
index 78f24e31af2d9306d9b4ab6e487c38f87b14cd7f..18b339582a65502f5755d6dde1235b7fe1b62759 100755 (executable)
--- a/mkdistrib
+++ b/mkdistrib
@@ -44,28 +44,45 @@ set -e
 
 make clean
 
+# Remove temporary files from the "debian" subdirectory
+rm -rf debian/refind debian/*.log
+
+# Convert man pages to HTML form
+man2html docs/man/mkrlconf.8 > docs/refind/mkrlconf.html
+man2html docs/man/mvrefind.8 > docs/refind/mvrefind.html
+man2html docs/man/refind-install.8 > docs/refind/refind-install.html
+
 # Prepare a place and copy files there....
-mkdir -p ../snapshots/$1/refind-$1/icons
-cp --preserve=timestamps icons/*icns ../snapshots/$1/refind-$1/icons/
-cp -a docs images keys include EfiLib libeg refind filesystems install.sh mkrlconf.sh CREDITS.txt NEWS.txt BUILDING.txt COPYING.txt LICENSE.txt README.txt refind.inf Make.tiano Make.common Makefile refind.conf-sample ../snapshots/$1/refind-$1
+mkdir -p ../snapshots/$1/refind-$1/icons/licenses ../snapshots/$1/refind-$1/icons/svg
+cp --preserve=timestamps icons/*png icons/README ../snapshots/$1/refind-$1/icons/
+cp --preserve=timestamps -r icons/licenses/* ../snapshots/$1/refind-$1/icons/licenses/
+cp --preserve=timestamps -r icons/svg/* ../snapshots/$1/refind-$1/icons/svg/
+cp -a debian docs images keys fonts banners include EfiLib libeg mok net refind filesystems gptsync refind.spec refind-install mkrlconf mvrefind mountesp CREDITS.txt NEWS.txt BUILDING.txt COPYING.txt LICENSE.txt README.txt refind.inf Make.tiano Make.common Makefile refind.conf-sample ../snapshots/$1/refind-$1
 
-# Go there and prepare a souce code zip file....
+# Go there and prepare a souce code tarball....
 cd ../snapshots/$1/
-zip -9r refind-src-$1.zip refind-$1
+rm -f refind-src-$1.tar.gz
+tar cvf refind-src-$1.tar refind-$1
+gzip -9 refind-src-$1.tar
+
+# Remove SVG files, since they aren't needed for binary packages....
+rm -rf refind-$1/icons/svg
 
 # Build the IA32 binaries
 cd refind-$1
-ARCH=ia32 make
+ARCH=ia32 make -j1
 ARCH=ia32 make fs
 mkdir -p refind-bin-$1/refind/drivers_ia32
 cp --preserve=timestamps drivers_ia32/*_ia32.efi refind-bin-$1/refind/drivers_ia32/
 cp --preserve=timestamps filesystems/LICENSE*txt refind-bin-$1/refind/drivers_ia32/
 cp refind/refind_ia32.efi refind-bin-$1/refind/refind_ia32.efi
 cp refind/refind_ia32.efi $StartDir/
+mkdir -p refind-bin-$1/refind/tools_ia32
+cp --preserve=timestamps gptsync/gptsync_ia32.efi refind-bin-$1/refind/tools_ia32/
 
 # Build the X64 binaries
 make clean
-make
+make -j1
 make fs
 mkdir -p refind-bin-$1/refind/drivers_x64
 cp -a icons refind-bin-$1/refind/
@@ -83,14 +100,45 @@ if [[ $SignIt == 1 ]] ; then
 else
    cp refind/refind_x64.efi refind-bin-$1/refind/refind_x64.efi
 fi
+mkdir -p refind-bin-$1/refind/tools_x64
+if [[ $SignIt == 1 ]] ; then
+   $SBSign --key $KeysDir/refind.key --cert $KeysDir/refind.crt --output refind-bin-$1/refind/tools_x64/gptsync_x64.efi gptsync/gptsync_x64.efi
+else
+   cp --preserve=timestamps gptsync/gptsync_x64.efi refind-bin-$1/refind/tools_x64/
+fi
 cp refind-bin-$1/refind/refind_x64.efi $StartDir
-cp -a docs keys COPYING.txt LICENSE.txt README.txt CREDITS.txt install.sh mkrlconf.sh refind-bin-$1
+cp -a docs keys banners fonts COPYING.txt LICENSE.txt README.txt CREDITS.txt NEWS.txt refind-install mkrlconf mvrefind mountesp refind-bin-$1
 
-# Prepare the final .zip file and clean up
+# Prepare the final .zip file
+zip -9r ../refind-bin-$1.zip refind-bin-$1
+
+# Prepare a variant with the x86-64 version built with GNU-EFI....
+make clean
+make -j1 gnuefi
 if [[ $SignIt == 1 ]] ; then
-   umount $KeysDir
+   $SBSign --key $KeysDir/refind.key --cert $KeysDir/refind.crt --output refind-bin-$1/refind/refind_x64.efi refind/refind_x64.efi
+else
+   cp refind/refind_x64.efi refind-bin-$1/refind/refind_x64.efi
 fi
-zip -9r ../refind-bin-$1.zip refind-bin-$1
+zip -9r ../refind-bin-gnuefi-$1.zip refind-bin-$1
+
+# Clean up....
 cd ..
 rm -r refind-$1
+
+# Prepare the RPM & Debian package files
+cp refind-src-$1.tar.gz ~/rpmbuild/SOURCES/
+rpmbuild -ba $StartDir/refind.spec
+mv ~/rpmbuild/RPMS/*/refind-$1* ./
+mv ~/rpmbuild/SRPMS/refind-$1* ./
+sudo alien --to-deb -k -c refind-$1*x86_64.rpm
+sudo chown rodsmith: refind*deb
+rm ~/rpmbuild/SOURCES/refind-src-$1.tar.gz
+
+# Clean up
+if [[ $SignIt == 1 ]] ; then
+   umount $KeysDir
+fi
+
+# Finish
 cd $StartDir