/[gentoo-x86]/sci-geosciences/grass/grass-6.3.0.ebuild
Gentoo

Diff of /sci-geosciences/grass/grass-6.3.0.ebuild

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.6 Revision 1.20
1# Copyright 1999-2009 Gentoo Foundation 1# Copyright 1999-2011 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/sci-geosciences/grass/Attic/grass-6.3.0.ebuild,v 1.6 2009/03/23 03:51:42 nerdboy Exp $ 3# $Header: /var/cvsroot/gentoo-x86/sci-geosciences/grass/Attic/grass-6.3.0.ebuild,v 1.20 2011/02/26 21:03:51 armin76 Exp $
4
5EAPI=1
4 6
5inherit eutils distutils fdo-mime versionator wxwidgets 7inherit eutils distutils fdo-mime versionator wxwidgets
6 8
7MY_PV=$(get_version_component_range 1-2 ${PV}) 9MY_PV=$(get_version_component_range 1-2 ${PV})
8MY_PVM=$(delete_all_version_separators ${MY_PV}) 10MY_PVM=$(delete_all_version_separators ${MY_PV})
9MY_PM=${PN}${MY_PVM} 11MY_PM=${PN}${MY_PVM}
10 12
11DESCRIPTION="An open-source GIS with raster and vector functionality, as well as 3D vizualization." 13DESCRIPTION="A free GIS with raster and vector functionality, as well as 3D vizualization."
12HOMEPAGE="http://grass.osgeo.org//" 14HOMEPAGE="http://grass.osgeo.org//"
13SRC_URI="http://download.osgeo.org/grass/${MY_PM}/source/${P}.tar.gz" 15SRC_URI="http://download.osgeo.org/grass/${MY_PM}/source/${P}.tar.gz"
14 16
15LICENSE="GPL-2" 17LICENSE="GPL-2"
16SLOT="6" 18SLOT="6"
17KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86" 19KEYWORDS="amd64 ppc ~ppc64 x86"
18 20
19IUSE="ffmpeg fftw gmath jpeg largefile motif mysql nls odbc opengl png \ 21IUSE="ffmpeg fftw gmath jpeg largefile motif mysql nls odbc opengl png \
20postgres python readline sqlite tiff truetype wxwindows X" 22postgres python readline sqlite tiff truetype wxwidgets X"
21 23
22RESTRICT="strip" 24RESTRICT="strip"
23 25
24RDEPEND=">=sys-libs/zlib-1.1.4 26RDEPEND=">=sys-libs/zlib-1.1.4
25 >=sys-libs/ncurses-5.3 27 >=sys-libs/ncurses-5.3
31 >=sci-libs/proj-4.4.7 33 >=sci-libs/proj-4.4.7
32 ffmpeg? ( media-video/ffmpeg ) 34 ffmpeg? ( media-video/ffmpeg )
33 fftw? ( sci-libs/fftw ) 35 fftw? ( sci-libs/fftw )
34 gmath? ( virtual/blas 36 gmath? ( virtual/blas
35 virtual/lapack ) 37 virtual/lapack )
36 jpeg? ( media-libs/jpeg ) 38 jpeg? ( virtual/jpeg )
37 mysql? ( dev-db/mysql ) 39 mysql? ( dev-db/mysql )
38 odbc? ( >=dev-db/unixODBC-2.0.6 ) 40 odbc? ( >=dev-db/unixODBC-2.0.6 )
39 opengl? ( virtual/opengl ) 41 opengl? ( virtual/opengl )
40 motif? ( x11-libs/openmotif ) 42 motif? ( >=x11-libs/openmotif-2.3:0 )
41 png? ( >=media-libs/libpng-1.2.2 ) 43 png? ( >=media-libs/libpng-1.2.2 )
44 postgres? ( || (
42 postgres? ( >=dev-db/postgresql-base-8.3 ) 45 >=dev-db/postgresql-base-8.0
46 >=dev-db/postgresql-server-8.0 )
47 )
43 python? ( dev-lang/python ) 48 python? ( dev-lang/python )
44 readline? ( sys-libs/readline ) 49 readline? ( sys-libs/readline )
45 sqlite? ( dev-db/sqlite ) 50 sqlite? ( dev-db/sqlite )
46 tiff? ( >=media-libs/tiff-3.5.7 ) 51 tiff? ( >=media-libs/tiff-3.5.7 )
47 truetype? ( >=media-libs/freetype-2.0 ) 52 truetype? ( >=media-libs/freetype-2.0 )
48 wxwindows? ( 53 wxwidgets? (
49 >=dev-python/wxpython-2.8.1.1 54 >=dev-python/wxpython-2.8.1.1
50 >=dev-lang/python-2.4 55 >=dev-lang/python-2.4
51 ) 56 )
52 X? ( 57 X? (
53 x11-libs/libXmu 58 x11-libs/libXmu
64 )" 69 )"
65 70
66DEPEND="${RDEPEND} 71DEPEND="${RDEPEND}
67 >=sys-devel/flex-2.5.4a 72 >=sys-devel/flex-2.5.4a
68 >=sys-devel/bison-1.35 73 >=sys-devel/bison-1.35
69 wxwindows? ( >=dev-lang/swig-1.3.31 ) 74 wxwidgets? ( >=dev-lang/swig-1.3.31 )
70 X? ( 75 X? (
71 x11-proto/xproto 76 x11-proto/xproto
72 x11-proto/xextproto 77 x11-proto/xextproto
73 )" 78 )"
74 79
75pkg_setup() { 80pkg_setup() {
76 local myblas 81 local myblas
77 elog "" 82 elog ""
78 elog "This version enables the experimental wxpython interface, which" 83 elog "This version enables the experimental wxpython interface, which"
79 elog "you may want to try. If the legacy GUI seems a little wonky in" 84 elog "you may want to try. If the legacy GUI seems a little wonky in"
80 elog "this version, just enable the wxwindows USE flag and rebuild" 85 elog "this version, just enable the wxwidgets USE flag and rebuild"
81 elog "grass to use it." 86 elog "grass to use it."
82 elog "" 87 elog ""
83 if use gmath; then 88 if use gmath; then
84 for d in $(eselect lapack show); do myblas=${d}; done 89 for d in $(eselect lapack show); do myblas=${d}; done
85 if [[ -z "${myblas/reference/}" ]] && [[ -z "${myblas/atlas/}" ]]; then 90 if [[ -z "${myblas/reference/}" ]] && [[ -z "${myblas/atlas/}" ]]; then
108 cd "${S}" 113 cd "${S}"
109 114
110 epatch rpm/fedora/grass-readline.patch 115 epatch rpm/fedora/grass-readline.patch
111 # fix the fortify_source and buffer issues (see bug #261283) 116 # fix the fortify_source and buffer issues (see bug #261283)
112 epatch "${FILESDIR}"/${P}-o_creat.patch 117 epatch "${FILESDIR}"/${P}-o_creat.patch
118 # and update for gcc 4.4 C++ changes (see bug #270916)
119 epatch "${FILESDIR}"/${P}-gcc44.patch
120
113 sed -i -e "s:buff\[12:buff\[16:g" general/g.parser/main.c \ 121 sed -i -e "s:buff\[12:buff\[16:g" general/g.parser/main.c \
114 || die "sed failed" 122 || die "sed failed"
115 123
116 if ! use opengl; then 124 if ! use opengl; then
117 epatch "${FILESDIR}"/${P}-html-nonviz.patch 125 epatch "${FILESDIR}"/${P}-html-nonviz.patch
122 echo "MATHLIB=-lm" >> include/Make/Rules.make 130 echo "MATHLIB=-lm" >> include/Make/Rules.make
123} 131}
124 132
125src_compile() { 133src_compile() {
126 local myconf 134 local myconf
127 # wxwindows needs python (see bug #237495) 135 addpredict /var/cache/fontconfig
128 use wxwindows && distutils_python_version
129 136
130 myconf="--prefix=/usr --with-cxx --enable-shared \ 137 myconf="--prefix=/usr --with-cxx --enable-shared \
131 --with-gdal=$(type -P gdal-config) --with-curses --with-proj \ 138 --with-gdal=$(type -P gdal-config) --with-curses --with-proj \
132 --with-includes=/usr/include --with-libs=/usr/$(get_libdir) \ 139 --with-includes=/usr/include --with-libs=/usr/$(get_libdir) \
133 --with-proj-includes=/usr/include \ 140 --with-proj-includes=/usr/include \
142 TCL_LIBDIR="/usr/$(get_libdir)/tcl8.4" 149 TCL_LIBDIR="/usr/$(get_libdir)/tcl8.4"
143 fi 150 fi
144 myconf="${myconf} --with-tcltk --with-x \ 151 myconf="${myconf} --with-tcltk --with-x \
145 --with-tcltk-includes=/usr/include \ 152 --with-tcltk-includes=/usr/include \
146 --with-tcltk-libs=${TCL_LIBDIR}" 153 --with-tcltk-libs=${TCL_LIBDIR}"
147 if use wxwindows; then 154 if use wxwidgets; then
148 WX_GTK_VER=2.8 155 WX_GTK_VER=2.8
149 need-wxwidgets unicode 156 need-wxwidgets unicode
150 # The following lib should be there, based on the above and the 157 # The following lib should be there, based on the above and the
151 # wxpython dependency (in theory). I still need a good way to 158 # wxpython dependency (in theory). I still need a good way to
152 # query for the location... 159 # query for the location...
153 LIBGDI="/usr/$(get_libdir)/python${PYVER}/site-packages/wx-${WX_GTK_VER}-gtk2-unicode/wx/_gdi_.so" 160 LIBGDI="$(python_get_sitedir)/wx-${WX_GTK_VER}-gtk2-unicode/wx/_gdi_.so"
154 myconf="${myconf} --with-python --with-wxwidgets=${WX_CONFIG}" 161 myconf="${myconf} --with-python --with-wxwidgets=${WX_CONFIG}"
155 else 162 else
156 # USE=python must be enabled above if wxwindows is enabled 163 # USE=python must be enabled above if wxwidgets is enabled
157 myconf="${myconf} $(use_with python) --without-wxwidgets" 164 myconf="${myconf} $(use_with python) --without-wxwidgets"
158 fi 165 fi
159 else 166 else
160 myconf="${myconf} --without-tcltk --without-x" 167 myconf="${myconf} --without-tcltk --without-x"
161 fi 168 fi
214 $(use_with png) \ 221 $(use_with png) \
215 $(use_with postgres) \ 222 $(use_with postgres) \
216 $(use_with readline) \ 223 $(use_with readline) \
217 $(use_with tiff) || die "configure failed!" 224 $(use_with tiff) || die "configure failed!"
218 225
219 if use wxwindows; then 226 if use wxwidgets; then
220 # can't use die here since we need to hack the vdigit build 227 # can't use die here since we need to hack the vdigit build
221 emake -j1 228 emake -j1
222 ln -sf "${LIBGDI}" dist.${CHOST}/lib/libgdi.so \ 229 ln -sf "${LIBGDI}" dist.${CHOST}/lib/libgdi.so \
223 || die "making libgdi link failed" 230 || die "making libgdi link failed"
224 cd gui/wxpython/vdigit 231 cd gui/wxpython/vdigit
233 elog "Grass Home is ${MY_PM}" 240 elog "Grass Home is ${MY_PM}"
234 make install UNIX_BIN="${D}"usr/bin BINDIR="${D}"usr/bin \ 241 make install UNIX_BIN="${D}"usr/bin BINDIR="${D}"usr/bin \
235 PREFIX="${D}"usr INST_DIR="${D}"usr/${MY_PM} \ 242 PREFIX="${D}"usr INST_DIR="${D}"usr/${MY_PM} \
236 || die "make install failed!" 243 || die "make install failed!"
237 244
238 if use wxwindows; then 245 if use wxwidgets; then
239 ln -sf "${LIBGDI}" "${D}"usr/${MY_PM}/lib/libgdi.so \ 246 ln -sf "${LIBGDI}" "${D}"usr/${MY_PM}/lib/libgdi.so \
240 || die "failed to find wx library" 247 || die "failed to find wx library"
241 fi 248 fi
242 249
243 # get rid of DESTDIR in script path 250 # get rid of DESTDIR in script path
267 use X && fdo-mime_desktop_database_update 274 use X && fdo-mime_desktop_database_update
268} 275}
269 276
270generate_files() { 277generate_files() {
271 local GUI="-gui" 278 local GUI="-gui"
272 use wxwindows && GUI="-wxpython" 279 use wxwidgets && GUI="-wxpython"
273 280
274 cat <<-EOF > 99grass-6 281 cat <<-EOF > 99grass-6
275 GRASS_LD_LIBRARY_PATH="/usr/${MY_PM}/lib" 282 GRASS_LD_LIBRARY_PATH="/usr/${MY_PM}/lib"
276 LDPATH="/usr/${MY_PM}/lib" 283 LDPATH="/usr/${MY_PM}/lib"
277 MANPATH="/usr/${MY_PM}/man" 284 MANPATH="/usr/${MY_PM}/man"
282 [Desktop Entry] 289 [Desktop Entry]
283 Encoding=UTF-8 290 Encoding=UTF-8
284 Version=1.0 291 Version=1.0
285 Name=Grass ${PV} 292 Name=Grass ${PV}
286 Type=Application 293 Type=Application
287 Comment=GRASS Open Source GIS, derived from the original US Army Corps of Engineers project. 294 Comment=GRASS (Geographic Resources Analysis Support System), the original GIS.
288 Exec=${TERM} -T Grass -e /usr/bin/${MY_PM} ${GUI} 295 Exec=${TERM} -T Grass -e /usr/bin/${MY_PM} ${GUI}
289 Path= 296 Path=
290 Icon=grass_icon.png 297 Icon=grass_icon.png
291 Categories=Science;Education; 298 Categories=Science;Education;
292 Terminal=true 299 Terminal=false
293 EOF 300 EOF
294} 301}

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.20

  ViewVC Help
Powered by ViewVC 1.1.20