# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=kbuild
pkgver=0.1.9998.3660
_svnrev=${pkgver##*.}
_ver=${pkgver/_/-}
pkgrel=0
pkgdesc="A makefile framework for writing simple makefiles for complex tasks"
url="http://svn.netlabs.org/kbuild/wiki"
arch="x86 x86_64 aarch64"
license="GPL-3.0"
makedepends="autoconf automake flex byacc texinfo"
subpackages="$pkgname-doc"
# svn export -r$_svnrev http://svn.netlabs.org/repos/kbuild/trunk kbuild-r$_svnrev
# tar -cf - --owner=0 --group=0 kbuild-r$_svnrev | xz > kbuild-r$_svnrev.tar.xz
# scp kbuild-r$_svnrev.tar.xz dev.alpinelinux.org:/archive/kbuild/
source="https://dev.alpinelinux.org/archive/kbuild/kbuild-r$_svnrev.tar.xz
	underlinking.patch
	0001-define-ALLPERMS-is-missing.patch
	sys-types.patch
	kobjcache.patch
	os-linux.patch
	oldsed.patch
	"

builddir="$srcdir"/kbuild-r$_svnrev

prepare() {
	update_config_guess
	default_prepare
	local i
	# Add a file with the svn revision this package was pulled from
	printf '%s\n' "KBUILD_SVN_REV := ${pkgver##*.}" > SvnInfo.kmk

	# bootstrapping breaks because of missing po/Makefile.in.in (r3149)
	sed '/^AC_CONFIG_FILES/s@ po/Makefile\.in@@' \
		-i src/kmk/configure.ac

	cd "$builddir"/src/kmk
	aclocal -I config && autoheader && autoconf && automake --add-missing
	cd "$builddir"/src/sed
	aclocal -I config && autoheader && autoconf && automake --add-missing

	# the bootstrap process will create a symlink to the system shell,
	# which happens to be (/bin/sh) a symlink to /bin/busybox
	# and busybox will get confused since there are no applet named
	# kmk_ash.
	echo '#!/bin/sh' >"$srcdir"/sh
	echo 'exec /bin/busybox sh "$@"' >> "$srcdir"/sh
	chmod +x "$srcdir"/sh
	sed -i -e "s:/bin/sh:$srcdir/sh:" "$builddir"/bootstrap.gmk
}

build() {
	kBuild/env.sh --full make -f bootstrap.gmk AUTORECONF=true
}

package() {
	kBuild/env.sh kmk NIX_INSTALL_DIR=/usr PATH_INS="$pkgdir" install
}

sha512sums="
b55aa6e005d4618ce12c6fe6ccfe8997f3bbb044f3e418ef074f5e8a857851c49591ba86ce6681d8500804c709914d1cbdfdb49bc4ee97b8627133944cc6e8ea  kbuild-r3660.tar.xz
839c12659ae81e99c0c2f35f045ef8651c2d30ddb391ae76995ded6df19f4ca5ae728da96c16b7aab08cdf447030de645455751122a390755e0ff46c03cb23d6  underlinking.patch
e882eb6e09e01698cba66ee307ccaa14022299e322154a95acbd10248f52c639b5591561da1d1ced617523f868ad4c54caae13f46b7f9b971f9363ebb296e713  0001-define-ALLPERMS-is-missing.patch
58ae3ec4a1535fddd4af67803c081c9ca4cd66244ea2a7ddfbf59eb5b849421377116376d893d5e643a15413b902463affa51153afeb2d2217bac135122b66a5  sys-types.patch
7afcc78589ee66c60dd7a73819b4776531a4fc0f73c8a8824f4b53967f7c903095206455d2b113288ad4cf337e67c0dc82cd679b994096c5d9270f83d55689ad  kobjcache.patch
042dee4ff7720708bee55982c876ce48645f856c902481317dad9abacc405aede40b9c4f7078bf0fe3a8fa85c788de029e7bbc6b1c5ad668a842265f6a9a873e  os-linux.patch
20578132af9c4b673130cd67d2ac92db5e05bc90c91ee6159e5953807a275bf43ca2cb04ef78ab77e47c11c6524be2055dcbbdca787d23039435c32672405bf8  oldsed.patch
"
