# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=dev86
pkgver=0.16.21
pkgrel=0
pkgdesc="A real mode 80x86 assembler and linker"
url="http://v3.sk/~lkundrak/dev86/"
arch="all"
license="GPL+ and GPL-2.0-or-later and LGPL-2.0-or-later"
depends=
makedepends="bash coreutils"
install=""
subpackages="$pkgname-doc"
source="http://v3.sk/~lkundrak/dev86/Dev86src-$pkgver.tar.gz
	dev86-noelks.patch
	dev86-pic.patch
	dev86-long.patch
	"

_builddir="$srcdir"/dev86-$pkgver
prepare() {
	local i
	cd "$_builddir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done
	# use our CFLAGS
	sed -i -e "s/-O2 -g/${CFLAGS}/" \
		makefile.in || return 1
#	if [ "$CARCH" = x86_64 ]; then
		sed -i \
			-e 's,alt-libs elksemu,alt-libs,' \
			-e 's,install-lib install-emu,install-lib,' \
			makefile.in || return 1
#	fi
	sed -i \
		-e "s:-O2 -g:${CFLAGS}:" \
		-e '/INEXE=/s:-s::' \
		makefile.in || return 1
	# no stripping
	sed -i -e '/INSTALL_OPTS=/s:-s::' \
		bin86/Makefile || return 1
	sed -i -e '/install -m 755 -s/s:-s::' \
		dis88/Makefile || return 1
}

build() {
	cd "$_builddir"
	export CPPFLAGS=""
	export SHELL=/bin/bash
	msg "building bcc86 unproto copt as86 ld86"
	make -j1 bcc86 unproto copt as86 ld86 CFLAGS="$CFLAGS" CC="${CC:-gcc}" \
		NATIVE='-DA_OUT_INCL=\"../libc/include/a.out.h\"' \
		|| return 1
	msg "building cpp"
	make -C cpp CFLAGS="$CFLAGS"  CC="${CC:-gcc}" || return 1
	msg "building ar"
	make -C ar CFLAGS="$CFLAGS" CC="${CC:-gcc}" || return 1
	msg "building ld"
	make -C ld CFLAGS="$CFLAGS" CC="${CC:-gcc}" || return 1
	msg "building the rest..."
	make -j1 DIST="$pkgdir" CC="${CC:-gcc}" || return 1
}

package() {
	cd "$_builddir"
	make DIST="$pkgdir" \
		MANDIR=/usr/share/man \
		LIBDIR=/usr/lib/bcc \
		INCLDIR=/usr/lib/bcc \
		LOCALPREFIX=/usr \
		install install-man
}

md5sums="6b96fe9d2d1c546842a4d1c7ef387e4c  Dev86src-0.16.21.tar.gz
eba7081bc5dbd72b7b9b902275251499  dev86-noelks.patch
d508a2a8ededa9e34dbd9105dfd66290  dev86-pic.patch
95e9df3245d46a02154fbe2f8b907782  dev86-long.patch"
sha256sums="234b110e6df9b7f6843e2ee53473127c2211243a16748f229fc0127845f68d94  Dev86src-0.16.21.tar.gz
3846e55cec22149e99e25540f84ac2e2ff640881fe6f21b6558766522181354d  dev86-noelks.patch
cae90d286eae1230566e423dfee37cd339fe17ba7c32f49de9c4a17fd357f1b2  dev86-pic.patch
eda9999b6ab2baf9a62e7fb720f56d3d5727b79dbb825a29bf42f685a3299355  dev86-long.patch"
sha512sums="6d35dc3c7f9735cf7967cdb2bc0f7bee967ae26667cd8cef56bbdf7d7855ef1d35057db4c0031ff86b9b95d3c8ee44aff408446115b35b6c10cf207a33838016  Dev86src-0.16.21.tar.gz
70eb52bd314a10b2f2b2ea00c88b398772f0a998cdd9db2d73904bc3e7db6cac8317f10b8dd838c04659d54cd5411d1a8b63dc89257ef04048c07b85b182e966  dev86-noelks.patch
1dafea998e3d62e71f069eb6bd6e0e05c7152a0470fbf9baa82c3ac9e3f5fe20c342ed0b35be91e82ce83638346a3e8c9855e77f4a71656f2ee7590e999e55fb  dev86-pic.patch
94c7532724d6c02a389303f1ce023e13fe95abecb86e1e4126504701cc755053ad810514e599c1151d166c45c51e1af15cbfac9e25895408b1133feb86dce21e  dev86-long.patch"
