aboutsummaryrefslogtreecommitdiffstats
path: root/main/libc0.9.32/APKBUILD
blob: 838972f864ca1307d76311d3a4152c9f4eb9d950 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
_abiver=0.9.32
pkgname=libc$_abiver
_gitver=1010161651
pkgver=${_abiver}_alpha0_git$_gitver
pkgrel=2
pkgdesc="C library for developing embedded Linux systems"
url=http://uclibc.org
license="LGPL-2"
options=
subpackages="uclibc-dev:dev uclibc-utils:utils libthread_db"
depends_dev="linux-headers=>2.6.32"
replaces=uclibc

if [ -n "$DEBUG" ]; then
	options="!strip"
fi

_snapurl="http://git.uclibc.org/uClibc/snapshot/master.tar.bz2"
_snapfile="$pkgname-$pkgver.tar.bz2"
source="http://build.alpinelinux.org:8010/distfiles/$_snapfile
	compat-stack-guard.patch
	uclibc-libm-pic.patch
	0001-create-DEVEL_PREFIX-MULTILIB_DIR-dir-rather-than-DEV.patch
	uclibcconfig.x86
	uclibcconfig.i486
	"
#	uclibc-resolv-tls.patch
#	0001-config-parser-fix-memory-corruption.patch
#	0001-nptl-fix-calling-convention-for-__pthread_mutex_cond.patch
#	ld-tls.patch

_config="$srcdir"/uclibcconfig.${ARCH:-x86}
_builddir="$srcdir"/master

snapshot() {
	local _date=$(date +%y%m%d%H%M)
	_gitver=$_date
	pkgver=${_abiver}_alpha0_git$_gitver
	_snapfile="$pkgname-$pkgver.tar.bz2"

	rm -f "$SRCDEST"/$_snapfile
	msg "snapfile=$_snapfile"
	wget -O "$SRCDEST"/$_snapfile $_snapurl
	pkgrel=0
	sed -i -e "s/^_gitver=.*/_gitver=$_gitver/" \
		-e "s/^pkgrel=.*/pkgrel=$pkgrel/" \
		APKBUILD
	checksum
}

prepare() {
	local i
	cd "$_builddir"
	# patches goes here
	for i in $source; do
		case $i in
		*.patch|*.diff)
			msg "Applying $i..."
			patch -p1 -i "$srcdir"/$i || return 1
			;;
		esac
	done
	# set abi version and remove unsupported warnings c flag
	sed -i -e "s/^ABI_VERSION.*/ABI_VERSION := $_abiver/" \
		-e "s/-Wold-style-declaration//g" \
		Rules.mak
}

build() {
	local _kh=
	cd "$_builddir"
	if [ -n "$SYSROOT" ]; then
		_kh=KERNEL_HEADERS="$SYSROOT/include"
	fi
	cp "$_config" .config
	if [ -n "$DEBUG" ]; then
		sed -i -e 's/# DODEBUG is not set/DODEBUG=y/' \
			-e 's/DOSTRIP=y/# DOSTRIP is not set/' \
			.config
	fi
	make silentoldconfig
	make -j1 pregen KERNEL_HEADERS="$SYSROOT"/usr/include \
		CROSS="$CROSS" || return 1
	make all KERNEL_HEADERS="$SYSROOT/usr/include"  CROSS="$CROSS" || return 1
	make utils CROSS="$CROSS" || return 1
}

package() {
	cd "$_builddir"
	make DESTDIR="$pkgdir" KERNEL_HEADERS="$SYSROOT/usr/include" \
		CROSS="$CROSS" install install_utils
	install -Dm755 extra/scripts/getent "$pkgdir"/usr/bin/getent
	# provided by linux-headers
	rm -f "$pkgdir"/usr/include/scsi/scsi.h
}

dev() {
	default_dev
	replaces=uclibc
	mkdir "$subpkgdir"/usr/lib 
	mv "$pkgdir"/usr/lib/*.so "$subpkgdir"/usr/lib/
}

utils() {
	pkgdesc="uClibc utility programs"
	replaces=uclibc
	mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/sbin
	mv "$pkgdir"/sbin/* "$subpkgdir"/sbin/
	mv "$pkgdir"/usr/bin/* "$subpkgdir"/usr/bin/
}

libthread_db() {
	pkgdesc="uClibc thread debugging library"
	mkdir -p "$subpkgdir"/lib
	mv "$pkgdir"/lib/libthread_db* "$subpkgdir"/lib/
}

md5sums="02ab241c13849911695c31b01f98a73e  libc0.9.32-0.9.32_alpha0_git1010161651.tar.bz2
4d408f72142ce55a0754948cc9cfe447  compat-stack-guard.patch
2f9739a980be24a842c57516155c7885  uclibc-libm-pic.patch
9dd8192227f54d6d3ccb49dc54137ff3  0001-create-DEVEL_PREFIX-MULTILIB_DIR-dir-rather-than-DEV.patch
145aaeb1833159397cfac9902e3877ab  uclibcconfig.x86
145aaeb1833159397cfac9902e3877ab  uclibcconfig.i486"