/[gentoo-x86]/eclass/mozconfig-v5.31.eclass
Gentoo

Contents of /eclass/mozconfig-v5.31.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (hide annotations) (download)
Wed May 27 19:00:31 2015 UTC (3 years, 11 months ago) by axs
Branch: MAIN
CVS Tags: HEAD
Changes since 1.3: +7 -2 lines
updated mozconfig-v5.31.eclass for new libvpx version compatibility, added mozconfig-v5.38.eclass, last rited mozconfig-v5.33

1 axs 1.3 # Copyright 1999-2015 Gentoo Foundation
2 axs 1.1 # Distributed under the terms of the GNU General Public License v2
3 axs 1.4 # $Header: /var/cvsroot/gentoo-x86/eclass/mozconfig-v5.31.eclass,v 1.3 2015/02/26 20:41:10 axs Exp $
4 axs 1.1 #
5     # @ECLASS: mozconfig-v5.31.eclass
6     # @MAINTAINER:
7     # mozilla team <mozilla@gentoo.org>
8     # @BLURB: the new mozilla common configuration eclass for FF31 and newer, v5
9     # @DESCRIPTION:
10     # This eclass is used in mozilla ebuilds (firefox, thunderbird, seamonkey)
11     # to provide a single common place for the common mozilla engine compoments.
12     #
13     # The eclass provides all common dependencies as well as common use flags.
14     #
15     # Some use flags which may be optional in particular mozilla packages can be
16     # supported through setting eclass variables.
17     #
18     # This eclass inherits mozconfig helper functions as defined in mozcoreconf-v3,
19     # and so ebuilds inheriting this eclass do not need to inherit that.
20    
21     inherit multilib flag-o-matic toolchain-funcs mozcoreconf-v3
22    
23     case ${EAPI} in
24     0|1|2|3|4) die "EAPI=${EAPI} not supported"
25     esac
26    
27     # @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_WIFI
28     # @DESCRIPTION:
29     # Set this variable before the inherit line, when an ebuild needs to provide
30     # optional necko-wifi support via IUSE="wifi". Currently this would include
31     # ebuilds for firefox, and potentially seamonkey.
32     #
33     # Leave the variable UNSET if necko-wifi support should not be available.
34     # Set the variable to "enabled" if the use flag should be enabled by default.
35     # Set the variable to any value if the use flag should exist but not be default-enabled.
36    
37     # @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_JIT
38     # @DESCRIPTION:
39     # Set this variable before the inherit line, when an ebuild needs to provide
40     # optional necko-wifi support via IUSE="jit". Currently this would include
41     # ebuilds for firefox, and potentially seamonkey.
42     #
43     # Leave the variable UNSET if optional jit support should not be available.
44     # Set the variable to "enabled" if the use flag should be enabled by default.
45     # Set the variable to any value if the use flag should exist but not be default-enabled.
46    
47     # use-flags common among all mozilla ebuilds
48 axs 1.2 IUSE="${IUSE} dbus debug gstreamer pulseaudio startup-notification system-cairo system-icu system-jpeg system-sqlite system-libvpx"
49 axs 1.1
50     # some notes on deps:
51     # gtk:2 minimum is technically 2.10 but gio support (enabled by default) needs 2.14
52     # media-libs/mesa needs to be 10.2 or above due to a bug with flash+vdpau
53    
54     RDEPEND=">=app-text/hunspell-1.2
55     dev-libs/atk
56     dev-libs/expat
57     >=dev-libs/libevent-1.4.7
58     >=x11-libs/cairo-1.10[X]
59     >=x11-libs/gtk+-2.14:2
60     x11-libs/gdk-pixbuf
61     >=x11-libs/pango-1.22.0
62     >=media-libs/libpng-1.6.10:0=[apng]
63     >=media-libs/mesa-10.2:*
64     media-libs/fontconfig
65     >=media-libs/freetype-2.4.10
66     kernel_linux? ( media-libs/alsa-lib )
67     pulseaudio? ( media-sound/pulseaudio )
68     >=sys-libs/zlib-1.2.3
69     virtual/freedesktop-icon-theme
70     dbus? ( >=sys-apps/dbus-0.60
71     >=dev-libs/dbus-glib-0.72 )
72     startup-notification? ( >=x11-libs/startup-notification-0.8 )
73     >=dev-libs/glib-2.26:2
74     virtual/libffi
75     gstreamer? ( media-plugins/gst-plugins-meta:1.0[ffmpeg] )
76     x11-libs/libX11
77     x11-libs/libXext
78     x11-libs/libXrender
79     x11-libs/libXt
80     system-cairo? ( >=x11-libs/cairo-1.12[X] >=x11-libs/pixman-0.19.2 )
81 axs 1.3 system-icu? ( >=dev-libs/icu-51.1:= )
82 axs 1.1 system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
83     system-sqlite? ( >=dev-db/sqlite-3.8.4.2:3[secure-delete,debug=] )
84     "
85    
86 axs 1.4 # firefox-31.0-patches-0.3 and above carry a patch making newer libvpx compatible
87     case ${PATCHFF##*31.0-patches-} in
88     0.3) RDEPEND+=" system-libvpx? ( >=media-libs/libvpx-1.3.0 )" ;;
89     *) RDEPEND+=" system-libvpx? ( =media-libs/libvpx-1.3.0* )" ;;
90     esac
91    
92 axs 1.1 if [[ -n ${MOZCONFIG_OPTIONAL_WIFI} ]]; then
93     if [[ ${MOZCONFIG_OPTIONAL_WIFI} = "enabled" ]]; then
94     IUSE+=" +wifi"
95     else
96     IUSE+=" wifi"
97     fi
98     RDEPEND+="
99     wifi? ( >=sys-apps/dbus-0.60
100     >=dev-libs/dbus-glib-0.72
101     net-wireless/wireless-tools )"
102     fi
103     if [[ -n ${MOZCONFIG_OPTIONAL_JIT} ]]; then
104     if [[ ${MOZCONFIG_OPTIONAL_JIT} = "enabled" ]]; then
105     IUSE+=" +jit"
106     else
107     IUSE+=" jit"
108     fi
109     fi
110    
111     DEPEND="app-arch/zip
112     app-arch/unzip
113     >=sys-devel/binutils-2.16.1
114     ${RDEPEND}"
115    
116     # @FUNCTION: mozconfig_config
117     # @DESCRIPTION:
118     # Set common configure options for mozilla packages.
119     # Call this within src_configure() phase, after mozconfig_init
120     #
121     # Example:
122     #
123     # inherit mozconfig-v5.31
124     #
125     # src_configure() {
126     # mozconfig_init
127     # mozconfig_config
128     # # ... misc ebuild-unique settings via calls to
129     # # ... mozconfig_{annotate,use_with,use_enable}
130     # mozconfig_final
131     # }
132    
133     mozconfig_config() {
134     # Migrated from mozcoreconf-2
135     mozconfig_annotate 'system_libs' \
136     --with-system-zlib \
137     --enable-pango \
138     --enable-svg
139    
140     mozconfig_annotate '' --enable-default-toolkit=cairo-gtk2
141    
142     if has bindist ${IUSE}; then
143     mozconfig_use_enable !bindist official-branding
144     if [[ ${PN} == firefox ]] && use bindist ; then
145     mozconfig_annotate '' --with-branding=browser/branding/aurora
146     fi
147     fi
148    
149     mozconfig_use_enable debug
150     mozconfig_use_enable debug tests
151    
152     if ! use debug ; then
153     mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols
154     fi
155    
156     mozconfig_use_enable startup-notification
157    
158     if [[ -n ${MOZCONFIG_OPTIONAL_WIFI} ]] ; then
159     # wifi pulls in dbus so manage both here
160     mozconfig_use_enable wifi necko-wifi
161     if use wifi && ! use dbus; then
162     echo "Enabling dbus support due to wifi request"
163     mozconfig_annotate 'dbus required by necko-wifi' --enable-dbus
164     else
165     mozconfig_use_enable dbus
166     fi
167     else
168     mozconfig_use_enable dbus
169     mozconfig_annotate 'disabled' --disable-necko-wifi
170     fi
171    
172     mozconfig_annotate 'required' --enable-ogg
173     mozconfig_annotate 'required' --enable-wave
174    
175     if [[ -n ${MOZCONFIG_OPTIONAL_JIT} ]]; then
176     mozconfig_use_enable jit ion
177     mozconfig_use_enable jit yarr-jit
178     fi
179    
180     # These are enabled by default in all mozilla applications
181     mozconfig_annotate '' --with-system-nspr --with-nspr-prefix="${EPREFIX}"/usr
182     mozconfig_annotate '' --with-system-nss --with-nss-prefix="${EPREFIX}"/usr
183     mozconfig_annotate '' --x-includes="${EPREFIX}"/usr/include --x-libraries="${EPREFIX}"/usr/$(get_libdir)
184     mozconfig_annotate '' --with-system-libevent="${EPREFIX}"/usr
185     mozconfig_annotate '' --prefix="${EPREFIX}"/usr
186     mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
187     mozconfig_annotate '' --enable-system-hunspell
188     mozconfig_annotate '' --disable-gnomevfs
189     mozconfig_annotate '' --disable-gnomeui
190     mozconfig_annotate '' --enable-gio
191     mozconfig_annotate '' --disable-crashreporter
192     mozconfig_annotate '' --with-system-png
193     mozconfig_annotate '' --enable-system-ffi
194     mozconfig_annotate '' --disable-gold
195     mozconfig_annotate '' --disable-gconf
196    
197     # We must force enable jemalloc 3 threw .mozconfig
198     echo "export MOZ_JEMALLOC=1" >> "${S}"/.mozconfig || die
199     mozconfig_annotate '' --enable-jemalloc
200     mozconfig_annotate '' --enable-replace-malloc
201    
202     mozconfig_annotate '' --target="${CTARGET:-${CHOST}}"
203     mozconfig_annotate '' --build="${CTARGET:-${CHOST}}"
204    
205     if use gstreamer; then
206     mozconfig_annotate '+gstreamer' --enable-gstreamer=1.0
207     else
208     mozconfig_annotate '' --disable-gstreamer
209     fi
210     mozconfig_use_enable pulseaudio
211    
212     mozconfig_use_enable system-cairo
213     mozconfig_use_enable system-sqlite
214     mozconfig_use_with system-jpeg
215     mozconfig_use_with system-icu
216     mozconfig_use_enable system-icu intl-api
217     mozconfig_use_with system-libvpx
218     }

  ViewVC Help
Powered by ViewVC 1.1.20