echo "Unmaintained by upstream; we don't use it anymore" exit; # aborts makepkg # # Core Packages for Chakra, part of chakra-project.org # # maintainer (i686): Phil Miller # Tunables: change y to n to disable _rm_build_dirs="${_rm_build_dirs:-n}" # remove build directories _mk_burg_emu="${_mk_burg_emu:-n}" # enable burg emu pkgname=burg-bzr pkgver=1844 pkgrel=8 url="https://launchpad.net/burg" license="GPL3" arch=('i686' 'x86_64') if [ "$CARCH" = "i686" ]; then depends=('freetype2') pkgdesc="Brand-new Universal loadeR from GRUB2 - Built for i386 BIOS" fi if [ "$CARCH" = "x86_64" ]; then depends=('gettext' 'freetype2' 'dosfstools' 'efibootmgr') pkgdesc="Brand-new Universal loadeR from GRUB2 - Built for x86_64 UEFI" fi optdepends=('os-prober' 'memtest86+' 'mtools') makedepends=('bzr' 'ruby' 'bdf-unifont' 'python2' 'ncurses' 'sdl') changelog=burg.changelog backup=('etc/default/burg' 'etc/burg.d/40_custom') provides=('burg') if [[ "${_mk_burg_emu}" == 'y' ]]; then makedepends+=('sdl') depends+=('sdl') conflicts+=('burg-emu') provides+=('burg-emu') fi md5sums=('39a0e3f1035342d75a9eda7a65f9793f' '743c7f6cec624bf0c696dae83b6e4d06' '60bdcc9a3f86deb4f1a361f3bea4ae98' '990eba4f3cb1808c97c2972de6957a3c' '460a91c0998117285decdb176ad98ee1') source=('burg.default' 'chakra-burg.patch' 'resume-hook.patch' '20_memtest86+' 'update-burg') install='burg.install' _bzrmod="burg" _bzrtrunk="lp:${_bzrmod}" _builddir="${_bzrmod}-build" _builddir_emu="${_bzrmod}-emu-build" _common_configure_opts="--host="${CARCH}-pc-linux-gnu" --program-prefix="" \ --prefix=/usr --bindir=/bin \ --sbindir=/sbin --mandir=/usr/share/man \ --infodir=/usr/share/info --sysconfdir=/etc \ --disable-werror" _update_bzr() { cd "${srcdir}/" msg "Connecting to the server...." if [[ ! -d "${srcdir}/${_bzrmod}" ]] ; then bzr branch "${_bzrtrunk}" else cd "${srcdir}/${_bzrmod}" && bzr pull "${_bzrtrunk}" fi msg "BZR checkout done or server timeout" } _build_dir() { local _rm_builddir='0' while (( "$#" )) do local _check="$1" if [[ "${_check}" == '-r' ]]; then _rm_builddir='1' elif [[ "${_check}" == 'emu' ]]; then _builddir="${_bzrmod}-build" _builddir_emu="${_bzrmod}-emu-build" else _builddir="${_bzrmod}-$1-build" fi shift done if [[ "${_check}" == 'emu' ]]; then rm -rf "${srcdir}/${_builddir_emu}" || true else rm -rf "${srcdir}/${_builddir}" || true fi if [[ "${_rm_builddir}" == '0' ]]; then if [[ "${_check}" == 'emu' ]]; then cp -rip "${srcdir}/${_bzrmod}" "${srcdir}/${_builddir_emu}" cd "${srcdir}/${_builddir_emu}" else cp -rip "${srcdir}/${_bzrmod}" "${srcdir}/${_builddir}" cd "${srcdir}/${_builddir}/" fi fi } _build_common() { local _check="$1" if [[ "${_check}" == 'emu' ]]; then cd "${srcdir}/${_builddir_emu}" else cd "${srcdir}/${_builddir}" fi # Archlinux changed default python to python3, need to use /usr/bin/python2 instead sed 's|python|python2|g' -i ./autogen.sh || true echo ./autogen.sh echo } _build_bios() { msg "Building burg bios...." _build_dir echo # some random patches to facilitate automatic creation of burg.cfg patch -Np1 -i "${srcdir}/chakra-burg.patch" echo _build_common echo cd "${srcdir}/${_builddir}/" ## fix unifont.bdf location so burg-mkfont can create *.pf2 files sed 's|/usr/share/fonts/unifont|/usr/share/fonts/misc|g' -i ./configure || true _bios_configure_opts="${_common_configure_opts} --with-platform=pc --disable-grub-emu-usb" ./configure ${_bios_configure_opts} echo CFLAGS="" make echo } _build_uefi_x86_64() { msg "Building burg uefi x86_64...." _build_dir echo # some random patches to facilitate automatic creation of burg.cfg patch -Np1 -i "${srcdir}/chakra-burg.patch" echo _build_common echo cd "${srcdir}/${_builddir}/" ## fix unifont.bdf location so burg-mkfont can create *.pf2 files sed 's|/usr/share/fonts/unifont|/usr/share/fonts/misc|g' -i ./configure || true _uefi_configure_opts="${_common_configure_opts} --with-platform=efi --target=x86_64 --disable-efiemu --disable-grub-emu-usb" ./configure ${_uefi_configure_opts} echo CFLAGS="" make echo } _build_emu() { msg "Building burg-emu...." _build_dir emu echo _build_common emu echo cd "${srcdir}/${_builddir_emu}/" ## fix unifont.bdf location so burg-mkfont can create *.pf2 files sed 's|/usr/share/fonts/unifont|/usr/share/fonts/misc|g' -i ./configure || true _emu_configure_opts="${_common_configure_opts} --with-platform=emu --disable-grub-emu-usb" ./configure ${_emu_configure_opts} echo CFLAGS="" make echo } build() { _update_bzr echo if [[ "$CARCH" == 'i686' ]]; then _build_bios fi echo if [[ "$CARCH" == 'x86_64' ]]; then _build_uefi_x86_64 fi echo if [[ "${_mk_burg_emu}" == 'y' ]]; then _build_emu fi echo } package() { cd "${srcdir}/${_builddir}/" make DESTDIR="${pkgdir}/" install echo if [[ "${_mk_burg_emu}" == 'y' ]]; then install -D -m0755 "${srcdir}/${_builddir_emu}/grub-emu" "${pkgdir}/bin/burg-emu" fi # install /etc/default/burg(needed config file) install -D -m0644 "${srcdir}/burg.default" "${pkgdir}/etc/default/burg" # install update-burg script install -D -m0755 "${srcdir}/update-burg" "${pkgdir}/sbin/update-burg" # install memtest config detection install -D -m0755 "${srcdir}/20_memtest86+" "${pkgdir}/etc/burg.d/20_memtest86+" if [[ "${_rm_build_dirs}" == 'y' ]]; then _build_dir -r if [[ "${_mk_burg_emu}" == 'y' ]]; then _build_dir -r emu fi fi echo cd ${pkgdir}/sbin patch -Np0 -i ${srcdir}/resume-hook.patch }