Annotation of /branches/magellan-next/extras/opera/opera-11.11-r1.smage2
Parent Directory | Revision Log
Revision 9081 -
(hide annotations)
(download)
Wed Oct 5 13:32:37 2011 UTC (12 years, 8 months ago) by niro
File size: 5468 byte(s)
Wed Oct 5 13:32:37 2011 UTC (12 years, 8 months ago) by niro
File size: 5468 byte(s)
imported from trunk
1 | niro | 7953 | # $Id$ |
2 | |||
3 | PNAME="opera" | ||
4 | PVER="11.11" | ||
5 | PBUILD="r1" | ||
6 | |||
7 | PCATEGORIE="net-www" | ||
8 | STATE="unstable" | ||
9 | |||
10 | HOMEPAGE="http://www.opera.com/" | ||
11 | |||
12 | COMMON_DEPEND=">= x11-libs/libICE-1 | ||
13 | >= x11-libs/libSM-1 | ||
14 | >= x11-libs/libX11-1 | ||
15 | >= x11-libs/libXau-1 | ||
16 | >= x11-libs/libXdmcp-1 | ||
17 | >= x11-libs/libXext-1 | ||
18 | >= x11-libs/libXmu-1 | ||
19 | >= x11-libs/libXrender-0.9 | ||
20 | >= x11-libs/libXt-1 | ||
21 | >= x11-libs/libXcomposite-0.4 | ||
22 | >= x11-libs/libXcursor-1 | ||
23 | >= x11-libs/libXdamage-1 | ||
24 | >= x11-libs/libXfixes-4 | ||
25 | >= x11-libs/libXi-1 | ||
26 | >= x11-libs/libXrandr-1 | ||
27 | >= media-libs/fontconfig-2.6 | ||
28 | >= media-libs/freetype-2.3 | ||
29 | >= media-libs/libpng-1.2 | ||
30 | >= dev-libs/expat-2 | ||
31 | >= media-libs/gstreamer-0.10.25 | ||
32 | >= media-libs/gst-plugins-base-0.10.25 | ||
33 | >= sys-apps/util-linux-2.16 | ||
34 | >= sys-libs/zlib-1.2.3 | ||
35 | >= virtual/opengl" | ||
36 | |||
37 | SDEPEND=">= sys-apps/sed-4" | ||
38 | |||
39 | # .6 uses newer glibc and qt versions | ||
40 | BUILD="2109" | ||
41 | |||
42 | # ftp://opera.ftp.fu-berlin.de/linux | ||
43 | SRCFILE_x86="${PNAME}-${PVER}-${BUILD}.i386.linux.tar.bz2" | ||
44 | SRCFILE_x86_64="${PNAME}-${PVER}-${BUILD}.x86_64.linux.tar.bz2" | ||
45 | # decide between x86 and x86_64 arch | ||
46 | SRCFILE="$(eval echo \$SRCFILE_${ARCH/i*86/x86})" | ||
47 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}-${BUILD}.${ARCH/i*86/i386}.linux" | ||
48 | |||
49 | SPLIT_PACKAGES="opera opera-kde4 opera-gtk2" | ||
50 | sminclude mtools xdg | ||
51 | |||
52 | SRC_URI=( | ||
53 | ftp://opera.ftp.fu-berlin.de/linux/${PVER/./}/${SRCFILE_x86} | ||
54 | ftp://opera.ftp.fu-berlin.de/linux/${PVER/./}/${SRCFILE_x86_64} | ||
55 | ftp://opera.ftp.fu-berlin.de/linux/${PVER/./}/final/en/i386/${SRCFILE_x86} | ||
56 | ftp://opera.ftp.fu-berlin.de/linux/${PVER/./}/final/en/x86_64/${SRCFILE_x86_64} | ||
57 | mirror://${PNAME}/${SRCFILE_x86} | ||
58 | mirror://${PNAME}/${SRCFILE_x86_64} | ||
59 | ) | ||
60 | |||
61 | split_info_opera() | ||
62 | { | ||
63 | DESCRIPTION="Opera Web browser." | ||
64 | DEPEND="${COMMON_DEPEND}" | ||
65 | } | ||
66 | |||
67 | split_info_opera-kde4() | ||
68 | { | ||
69 | DESCRIPTION="Opera UI integration for KDE4." | ||
70 | DEPEND="== net-www/opera-${PVER} | ||
71 | >= x11-libs/qt4-core-4.6 | ||
72 | >= x11-libs/qt4-gui-4.6 | ||
73 | >= x11-libs/qt4-dbus-4.6 | ||
74 | >= x11-libs/qt4-svg-4.6 | ||
75 | >= kde-base/kdelibs4-4.4" | ||
76 | } | ||
77 | |||
78 | split_info_opera-gtk2() | ||
79 | { | ||
80 | DESCRIPTION="Opera UI integration for GTK2 and GNOME." | ||
81 | DEPEND="== net-www/opera-${PVER} | ||
82 | >= dev-libs/glib2-2.22 | ||
83 | >= dev-libs/atk-1.28 | ||
84 | >= x11-libs/cairo-1.8 | ||
85 | >= x11-libs/pango-1.26 | ||
86 | >= x11-libs/gtk2+-2.18" | ||
87 | } | ||
88 | |||
89 | src_prepare() | ||
90 | { | ||
91 | munpack ${SRCFILE} || die | ||
92 | } | ||
93 | |||
94 | src_install_opera() | ||
95 | { | ||
96 | cd ${SRCDIR} | ||
97 | |||
98 | # fix install destination | ||
99 | # (do it here, not in src_unpack to support split-packages) | ||
100 | sed -i "s:/usr/local:${BINDIR}/opt/opera:g" install || die | ||
101 | |||
102 | # prepare installation directories for opera's installer script | ||
103 | minstalldir /opt/opera | ||
104 | # run opera's native installer | ||
105 | ./install --system --unattended || die | ||
106 | |||
107 | # remove uninstaller | ||
108 | rm ${BINDIR}/opt/opera/bin/uninstall-opera || die | ||
109 | |||
110 | # fix ${BINDIR} everywhere | ||
111 | sed -i "s:${BINDIR}::g" ${BINDIR}/opt/opera/bin/opera || die | ||
112 | sed -i "s:${BINDIR}::g" ${BINDIR}/opt/opera/bin/opera-widget-manager || die | ||
113 | sed -i "s:${BINDIR}::g" ${BINDIR}/opt/opera/share/applications/opera-widget-manager.desktop || die | ||
114 | sed -i "s:${BINDIR}::g" ${BINDIR}/opt/opera/share/applications/opera-browser.desktop || die | ||
115 | sed -i "s:${BINDIR}::g" ${BINDIR}/opt/opera/share/applications/opera-widget-installer.desktop || die | ||
116 | |||
117 | # sanity check | ||
118 | if [[ ! -z $(grep -irl ${BINDIR} ${BINDIR}/opt/opera) ]] | ||
119 | then | ||
120 | die "${BINDIR} in installed /opt/opera files detected!" | ||
121 | fi | ||
122 | |||
123 | # fix permissions | ||
124 | mchmod 0755 /opt/opera/bin/opera || die | ||
125 | mchmod 0755 /opt/opera/bin/opera-widget-manager || die | ||
126 | mchmod 0644 /opt/opera/share/applications/opera-widget-manager.desktop || die | ||
127 | mchmod 0644 /opt/opera/share/applications/opera-browser.desktop || die | ||
128 | mchmod 0644 /opt/opera/share/applications/opera-widget-installer.desktop || die | ||
129 | |||
130 | # install the icons | ||
131 | local i | ||
132 | for i in 16x16 22x22 24x24 32x32 48x48 128x128 scalable | ||
133 | do | ||
134 | minstalldir /usr/share/icons/hicolor/${i}/apps || die | ||
135 | if [[ -f share/icons/hicolor/${i}/apps/opera-browser.png ]] | ||
136 | then | ||
137 | minstallfile share/icons/hicolor/${i}/apps/opera-browser.png /usr/share/icons/hicolor/${i}/apps || die | ||
138 | fi | ||
139 | if [[ -f share/icons/hicolor/${i}/apps/opera-widget-manager.png ]] | ||
140 | then | ||
141 | minstallfile share/icons/hicolor/${i}/apps/opera-widget-manager.png /usr/share/icons/hicolor/${i}/apps || die | ||
142 | fi | ||
143 | |||
144 | minstalldir /usr/share/icons/hicolor/${i}/mimetypes || die | ||
145 | if [[ -f share/icons/hicolor/${i}/mimetypes/opera-widget.png ]] | ||
146 | then | ||
147 | minstallfile share/icons/hicolor/${i}/mimetypes/opera-widget.png /usr/share/icons/hicolor/${i}/mimetypes || die | ||
148 | fi | ||
149 | if [[ -f share/icons/hicolor/${i}/mimetypes/opera-unite-application.png ]] | ||
150 | then | ||
151 | minstallfile share/icons/hicolor/${i}/mimetypes/opera-unite-application.png /usr/share/icons/hicolor/${i}/mimetypes || die | ||
152 | fi | ||
153 | done | ||
154 | |||
155 | # install a symlink /usr/bin/opera | ||
156 | minstalldir /usr/bin || die | ||
157 | mlink /opt/opera/bin/opera /usr/bin/opera || die | ||
158 | mlink /opt/opera/bin/opera-widget-manager /usr/bin/opera-widget-manager || die | ||
159 | |||
160 | # install desktop icons symlinks | ||
161 | minstallxdg /opt/opera/share/applications/opera-widget-manager.desktop || die | ||
162 | minstallxdg /opt/opera/share/applications/opera-browser.desktop || die | ||
163 | minstallxdg /opt/opera/share/applications/opera-widget-installer.desktop || die | ||
164 | |||
165 | # cleanup | ||
166 | rm ${BINDIR}/opt/opera/lib/opera/liboperakde4.so || die | ||
167 | rm ${BINDIR}/opt/opera/lib/opera/liboperagtk.so || die | ||
168 | } | ||
169 | |||
170 | src_install_opera-kde4() | ||
171 | { | ||
172 | cd ${SRCDIR} | ||
173 | minstalldir /opt/opera/lib/opera || die | ||
174 | minstallexec lib/opera/liboperakde4.so /opt/opera/lib/opera/ || die | ||
175 | } | ||
176 | |||
177 | src_install_opera-gtk2() | ||
178 | { | ||
179 | cd ${SRCDIR} | ||
180 | minstalldir /opt/opera/lib/opera || die | ||
181 | minstallexec lib/opera/liboperagtk.so /opt/opera/lib/opera/ || die | ||
182 | } |