CRUX-ARM : Home

Home :: Documentation :: Download :: Development :: Community :: Ports :: Packages :: Bugs :: Links :: About :: Donors
1fc5fa7c3c3fae2f9e541d84340370fe927a1d27
[ports/opt-arm.git] / chromium / Pkgfile
1 # Description: Open source version of Google Chrome web browser.
2 # URL: http://chromium.org/
3 # Arch Maintainer: CRUX-ARM System Team, devel at crux-arm dot nu
4 # Maintainer: Jose V Beneyto, sepen at crux dot nu
5 # Packager: Tadeusz Sosnierz, tadzikes gmail com
6 # Depends on: dbus-glib gtk libevent nss xorg-libxscrnsaver xorg-libxtst libgcrypt xorg-libxdamage xorg-libxt gperf speech-dispatcher
7
8 name=chromium
9 version=31.0.1650.57
10 release=1
11 source=(http://commondatastorage.googleapis.com/chromium-browser-official/$name-$version.tar.xz \
12 $name.sh icu-native-arm.patch ffmpeg-native-arm.patch)
13
14 build() {
15 cd $name-$version
16
17 # avoid 32-bit flags (g++: error: unrecognized command line option '-m32')
18 patch -p1 -i $SRC/icu-native-arm.patch
19 # https://chromium.googlesource.com/chromium/third_party/ffmpeg/+/8a08a6d1dea934cf6507693a7f5285241b5c435b
20 patch -p1 -i $SRC/ffmpeg-native-arm.patch
21
22 # fix for speech-dispatcher >= 0.8
23 sed -e 's|<<(libspeechd_h_prefix)libspeechd.h>|<speech-dispatcher/libspeechd.h>|' \
24 -i build/linux/system.gyp
25
26 export CFLAGS="$CFLAGS $(pkg-config --cflags nspr)"
27 export LDFLAGS="$LDFLAGS $(pkg-config --libs nspr)"
28
29 # determine some flags depending on SOC
30 USE_ARMV7=0; USE_ARM_THUMB=0; USE_ARM_NEON=0
31 case $(uname -m) in
32 armv7*) USE_ARMV7=1; USE_ARM_THUMB=1;;
33 esac
34 for flag in $CFLAGS; do
35 case $flag in
36 -mfpu=neon*) USE_ARM_NEON=1;;
37 esac
38 done
39
40 build/gyp_chromium -f make build/all.gyp --depth=. \
41 -Dtarget_arch=arm \
42 -Darm_float_abi=hard \
43 -Darmv7=$USE_ARMV7 \
44 -Darm_thumb=$USE_ARM_THUMB \
45 -Darm_neon=$USE_ARM_NEON \
46 -Dv8_target_arch=arm \
47 -Dv8_use_arm_eabi_hardfloat=1 \
48 -Dsysroot= \
49 -Dno_strict_aliasing=1 \
50 -Dwerror= \
51 -Dlinux_sandbox_path=/usr/lib/chromium/chrome-sandbox \
52 -Dlinux_strip_binary=1 \
53 -Dlinux_use_gold_binary=0 \
54 -Dlinux_use_gold_flags=0 \
55 -Dlinux_use_tmalloc=0 \
56 -Drelease_extra_cflags="$CFLAGS" \
57 -Dproprietary_codecs=1 \
58 -Dffmpeg_branding=Chrome \
59 -Duse_system_libjpeg=1 \
60 -Duse_system_libxslt=1 \
61 -Duse_system_libxml=1 \
62 -Duse_system_bzip2=1 \
63 -Duse_system_zlib=0 \
64 -Duse_system_libpng=0 \
65 -Duse_system_ffmpeg=0 \
66 -Duse_system_yasm=0 \
67 -Duse_system_libevent=1 \
68 -Duse_system_sqlite=0 \
69 -Dremove_webcore_debug_symbols=1 \
70 -Duse_gconf=0 \
71 -Duse_cups=0 \
72 -Duse_gnome_keyring=0 \
73 -Duse_kerberos=0 \
74 -Duse_pulseaudio=0 \
75 -Dlinux_link_gnome_keyring=0 \
76 -Dlinux_link_libpci=1 \
77 -Dlinux_link_libspeechd=1 \
78 -Denable_webrtc=1 \
79 -Ddisable_nacl=1
80
81 # fix issue with nspr libs
82 sed -e "s|LIBS := |LIBS := $LDFLAGS |" -i chrome/chrome.target.mk
83
84 make V=1 chrome chrome_sandbox BUILDTYPE=Release
85
86 install -m 0755 -D out/Release/chrome $PKG/usr/lib/chromium/chromium
87 install -m 4755 -o root -g root -D out/Release/chrome_sandbox $PKG/usr/lib/chromium/chrome-sandbox
88 install -m 0644 -D out/Release/*.pak $PKG/usr/lib/chromium
89 install -m 0755 -D out/Release/libffmpegsumo.so $PKG/usr/lib/chromium
90 install -d $PKG/usr/lib/chromium/locales
91 install -m 0644 out/Release/locales/en-US.pak $PKG/usr/lib/chromium/locales
92 cp -a out/Release/resources $PKG/usr/lib/chromium
93 install -m 0644 -D out/Release/chrome.1 $PKG/usr/man/man1/chromium.1
94
95 for size in 22 24 48 128 256; do
96 install -m 0644 -D chrome/app/theme/chromium/product_logo_${size}.png \
97 $PKG/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png
98 done
99
100 install -m 0755 -D $SRC/chromium.sh $PKG/usr/bin/chromium
101 }