summaryrefslogtreecommitdiffstats
path: root/main/libc0.9.32/APKBUILD
blob: dc53b6b134935e6bcb0be0513bc4e3ce5ef70ffb (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
125
126
127
128
129
130
131
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
_abiver=0.9.32
pkgname=libc$_abiver
_gitver=1011011024
pkgver=${_abiver}_alpha0_git$_gitver
pkgrel=3
pkgdesc="C library for developing embedded Linux systems"
url=http://uclibc.org
license="LGPL-2"
arch="x86 x86_64"
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
	0001-create-DEVEL_PREFIX-MULTILIB_DIR-dir-rather-than-DEV.patch
	0001-ntpl-fix-static-linking-by-not-leaking-SSP_ALL_CFLAG.patch
	ldso-x86_64-support-protected-symbols.patch
	1.patch
	2.patch
	0001-libc-fix-strtoq.patch
	uclibcconfig.x86
	uclibcconfig.x86_64
	uclibcconfig.i486
	"

_config="$srcdir"/uclibcconfig.${CARCH}
_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 -p "$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="dad1117e11d0c709263e5b26a74db9ce  libc0.9.32-0.9.32_alpha0_git1011011024.tar.bz2
4d408f72142ce55a0754948cc9cfe447  compat-stack-guard.patch
9dd8192227f54d6d3ccb49dc54137ff3  0001-create-DEVEL_PREFIX-MULTILIB_DIR-dir-rather-than-DEV.patch
337f4fa134307bbdac026d6ff97df5fc  0001-ntpl-fix-static-linking-by-not-leaking-SSP_ALL_CFLAG.patch
84a2786fb4c89bee56607dd09b538d7b  ldso-x86_64-support-protected-symbols.patch
8f55efc31c41bf70d99006a7d2f7fe1e  1.patch
350a608e3d3b148af882f6e074225465  2.patch
8064fe87497342a3ab4d8d8df7acc8c6  0001-libc-fix-strtoq.patch
145aaeb1833159397cfac9902e3877ab  uclibcconfig.x86
da650c2c6a82e0b153e96774da388935  uclibcconfig.x86_64
145aaeb1833159397cfac9902e3877ab  uclibcconfig.i486"