summaryrefslogtreecommitdiffstats
path: root/chromium/Pkgfile
blob: dfcbc65e1844a49d4537a80fd0fd8e6e26c4c863 (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
# Description: Navigateur de chez Google
# URL: http://www.google.com
# Maintainer: NuTyX core team
# Packager: lesibel at free dot fr
# Depends on: perl, yasm, mesa3d, gperf, libgnome-keyring ,xorg-libxscrnsaver, xorg-libxrandr, xorg-libxcursor, xorg-libxinerama, xorg-libxtst, gtk, dbus-glib, nss, alsa-lib, xdg-utils, bzip2, libevent, dejavu-ttf, desktop-file-utils, hicolor-icon-theme
# Run on: gtk,dbus-glib,nss,alsa-lib,xdg-utils,bzip2,libevent,dejavu-ttf,desktop-file-utils,hicolor-icon-theme,keyutils,xorg-libxscrnsaver

name=chromium
version=17.0.963.56
#16.0.912.63
#15.0.874.106
#14.0.835.186
#12.0.742.100
release=1
source=(http://commondatastorage.googleapis.com/chromium-browser-official/$name-$version.tar.bz2
        chromium.desktop
        chromium.sh
        chromium-gcc-4.6.patch
	webrtc-r240-r242-make-pulseaudio-optional.patch
	nacl.gypi)


build() {
  cd $SRC/chromium-$version

  cp ../nacl.gypi chrome/

  patch -Np0 -i $SRC/chromium-gcc-4.6.patch
  
  sed -i '/#include <cups\/cups.h>/ a #include <cups/ppd.h>' \
    chrome/browser/ui/webui/print_preview_handler.cc

#  patch -d third_party/webrtc -Np1 -i \
#    $SRC/webrtc-r240-r242-make-pulseaudio-optional.patch

### Configure

  # Use Python 2
  find . -type f -exec sed -i -r \
    -e 's|/usr/bin/python$|\02|g' \
    -e 's|(/usr/bin/python2)\.4$|\1|g' \
    {} +

  # 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

  build/gyp_chromium -f make build/all.gyp --depth=. \
    -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_bzip2=1 \
    -Duse_system_ffmpeg=0 \
    -Duse_system_libevent=1 \
    -Duse_system_libjpeg=1 \
    -Duse_system_libpng=1 \
    -Duse_system_libxml=0 \
    -Duse_system_ssl=0 \
    -Duse_system_yasm=1 \
    -Duse_system_zlib=1 \
    -Duse_gconf=0 \
    -Ddisable_nacl=1 \
    $([[ $CARCH == i686 ]] && echo '-Ddisable_sse2=1')


  make chrome chrome_sandbox BUILDTYPE=Release
  cd $SRC/chromium-$version

  install -D out/Release/chrome $PKG/usr/lib/chromium/chromium

  install -Dm4755 -o root -g root out/Release/chrome_sandbox \
    $PKG/usr/lib/chromium/chromium-sandbox

  install -Dm644 out/Release/chrome.pak $PKG/usr/lib/chromium/chrome.pak

  install -Dm644 out/Release/resources.pak \
    $PKG/usr/lib/chromium/resources.pak

  install -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/
  #ln -s /usr/lib/libavformat.so.52 ${PKG}/usr/lib/chromium/
  #ln -s /usr/lib/libavutil.so.50 ${PKG}/usr/lib/chromium/

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

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

  install -Dm644 out/Release/chrome.1 $PKG/usr/share/man/man1/chromium.1

  install -Dm644 $SRC/chromium.desktop \
    $PKG/usr/share/applications/chromium.desktop

  for size in 16 22 24 32 48 64 128 256; do
    install -Dm644 chrome/app/theme/chromium/product_logo_$size.png \
      $PKG/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png
  done

  install -D $SRC/chromium.sh $PKG/usr/bin/chromium

  install -Dm644 LICENSE $PKG/usr/share/licenses/chromium/LICENSE
}