summaryrefslogtreecommitdiffstats
path: root/extra/chromium/Pkgfile
blob: 194ed87f7705af6539165febe5871cb1d032c4b1 (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
# Description: Navigateur de chez Google
# URL: http://www.google.com
# Maintainer: NuTyX core team
# Packager: sibelle at free dot fr
# Depends on: python, perl, gperf, yasm, mesa3d, libgnome-keyring, nss, gconf, alsa-lib, xdg-utils, hicolor-icon-theme, bzip2, libevent, xorg-libxscrnsaver, xorg-libxrandr, xorg-libxcursor, xorg-libxinerama,  xorg-libxtst, libjpeg, libpng, cups, zlib
# Run on: yasm,nss,gconf,alsa-lib,gtk,xdg-utils,hicolor-icon-theme,bzip2,libevent,libgnome-keyring

name=chromium
version=10.0.633.0
release=2

source=(http://build.chromium.org/buildbot/official/$name-$version.tar.bz2 \
	http://nutyx.meticul.eu/files/patchs/$name/{chromium.desktop,chromium.sh,gyp-make.patch})

build() {

###  Compilation des sources

	cd $name-$version

### Patch
	# workaround for gcc 4.5
  	# see http://code.google.com/p/chromium/issues/detail?id=41887
	export CFLAGS="${CFLAGS} -fno-ipa-cp"

	find . -type f -exec \
        	sed -E 's#(/usr/bin/python)$#\12#g;s#(/usr/bin/python2)\.4$#\1#g' -i {} \;
  	# There are still a lot of relative calls which need a workaround
  	mkdir $SRC/python2-path
  	ln -s /usr/bin/python2 $SRC/python2-path/python
  	export PATH=$SRC/python2-path/:${PATH}
	
#	patch -p0 -i $SRC/gyp-make.patch

### Configure
	build/gyp_chromium -f make build/all.gyp --depth=. \
		-Dgcc_version=44 \
    		-Dno_strict_aliasing=1 \
    		-Dwerror= \
    		-Dlinux_sandbox_path=/usr/lib/chromium/chromium-sandbox \
    		-Dlinux_strip_binary=1 \
    		-Drelease_extra_cflags="${CFLAGS}" \
    		-Dffmpeg_branding=Chrome \
    		-Dproprietary_codecs=1 \
    		-Duse_system_libjpeg=1 \
    		-Duse_system_libxslt=0 \
    		-Duse_system_libxml=0 \
    		-Duse_system_bzip2=1 \
    		-Duse_system_zlib=1 \
    		-Duse_system_libpng=1 \
    		-Duse_system_ffmpeg=0 \
    		-Duse_system_yasm=1 \
    		-Duse_system_libevent=1 \
    		-Duse_system_ssl=0 \
		-Denable_multilib=0 \
		-Dlinux_use_tcmalloc=0 \
		-Dv8_use_snapshot=0 \
    		$([ "${CARCH}" == 'i686' ] && echo '-Ddisable_sse2=1')

#  -Dtarget_arch=ia32 \


        make  chrome chrome_sandbox BUILDTYPE=Release  

	cd $SRC/$name-$version

        install -m 0755 -D out/Release/chrome \
		$PKG/usr/lib/chromium/chromium
        install -m 4555 -o root -g root -D out/Release/chrome_sandbox \
		$PKG/usr/lib/chromium/chromium-sandbox
        install -m 0644 -D out/Release/chrome.pak \
		$PKG/usr/lib/chromium/chrome.pak
	install -m 0644 -D out/Release/resources.pak \
    		$PKG/usr/lib/chromium/resources.pak
  	install -m 0755 -D out/Release/libffmpegsumo.so \
    		$PKG/usr/lib/chromium/libffmpegsumo.so
	
	# these links are only needed when building with system ffmpeg
        ln -s /usr/lib/libavcodec.so.52 $PKG/usr/lib/chromium/libavcodec.so.52
        ln -s /usr/lib/libavformat.so.52 $PKG/usr/lib/chromium/libavformat.so.52
        ln -s /usr/lib/libavutil.so.50 $PKG/usr/lib/chromium/libavutil.so.50

        cp -a out/Release/locales out/Release/resources \
		$PKG/usr/lib/chromium/

        find $PKG/usr/lib/chromium/ -name '*.d' -type f -delete

        install -m 0644 -D out/Release/chrome.1 \
		$PKG/usr/share/man/man1/chromium.1

        install -m 0644 -D ../chromium.desktop \
		$PKG/usr/share/applications/chromium.desktop

        for size in 16 32 48 256; do
                install -m 0644 -D \
                        chrome/app/theme/chromium/product_logo_${size}.png \
                        $PKG/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png
        done

        install -m 0755 -D ../chromium.sh $PKG/usr/bin/chromium

        install -m 0644 -D LICENSE $PKG/usr/share/licenses/chromium/LICENSE
}