source: trunk/dports/science/plplot/Portfile @ 66975

Last change on this file since 66975 was 66975, checked in by takeshi@…, 7 years ago

plplot: fixed a configure failure with gcc43 variant.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 7.5 KB
Line 
1# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
2# $Id: Portfile 66975 2010-04-27 09:10:54Z takeshi@macports.org $
3
4PortSystem      1.0
5
6name            plplot
7version         5.9.5
8platforms       darwin
9maintainers     takeshi
10categories      science
11description     Scientific plotting package
12master_sites    sourceforge
13checksums       md5     214c9f984f046bee18f6a3cce2cdec39 \
14                sha1    f24d096238398b5519427145f0134ce1c180f0e8 \
15                rmd160  75f21ad12fbe952c964e0a9b3d298a4f059157c2
16homepage        http://plplot.sourceforge.net/
17long_description \
18    PLplot is a cross-platform software package for creating           \
19    scientific plots. To help accomplish that task it is               \
20    organized as a core C library, language bindings for that library, \
21    and device drivers which control how the plots are presented       \
22    in non-interactive and interactive plotting contexts.
23
24depends_build   port:cmake \
25                path:bin/pkg-config:pkgconfig
26depends_lib     port:expat \
27                port:fontconfig \
28                port:freefont-ttf \
29                port:freetype \
30                port:libiconv \
31                port:libLASi \
32                port:libpng \
33                path:lib/pkgconfig/pango.pc:pango \
34                port:swig-tcl \
35                port:tcl \
36                port:tk \
37                port:zlib
38
39patchfiles      patch-x18f.f90.diff
40post-patch {
41    reinplace "s|-framework AquaTerm|-F${prefix}/Library/Frameworks -framework AquaTerm|" ${worksrcpath}/cmake/modules/aqt.cmake
42}
43
44configure.dir           ${workpath}/build
45configure.cmd           cmake
46configure.env           HOME=${workpath}
47configure.pre_args      -DCMAKE_INSTALL_PREFIX=${prefix}
48configure.args          -DCMAKE_VERBOSE_MAKEFILE=ON \
49                        -DCMAKE_Fortran_FLAGS=${configure.fflags} \
50                        -DCMAKE_C_COMPILER=${configure.cc} \
51                        -DCMAKE_C_FLAGS=\"${configure.cflags} ${configure.cppflags}\" \
52                        -DCMAKE_CXX_COMPILER=${configure.cxx} \
53                        -DCMAKE_CXX_FLAGS=\"${configure.cxxflags} ${configure.cppflags}\" \
54                        -DCMAKE_INCLUDE_PATH=${prefix}/include \
55                        -DCMAKE_LIBRARY_PATH=${prefix}/lib \
56                        -DTCL_INCLUDE_PATH=${prefix}/include \
57                        -DTCL_LIBRARY=${prefix}/lib/libtcl.dylib \
58                        -DTCL_STUB_LIBRARY=${prefix}/lib/libtclstub8.5.a \
59                        -DTK_INCLUDE_PATH=${prefix}/include \
60                        -DTK_LIBRARY=${prefix}/lib/libtk.dylib \
61                        -DTK_STUB_LIBRARY=${prefix}/lib/libtkstub8.5.a \
62                        -DFREETYPE_INCLUDE_DIR=${prefix}/include/freetype2 \
63                        -DFREETYPE_LIBRARY=${prefix}/lib/libfreetype.dylib \
64                        -DPL_FREETYPE_FONT_PATH=${prefix}/share/fonts/freefont-ttf \
65                        -DWITH_FREETYPE=ON \
66                        -DPLD_aqt=OFF \
67                        -DPLD_extcairo=ON \
68                        -DPLD_memcairo=ON \
69                        -DPLD_psttf=ON \
70                        -DPLD_pscairo=ON  \
71                        -DPLD_pdfcairo=ON \
72                        -DPLD_pngcairo=ON \
73                        -DPLD_svgcairo=ON \
74                        -DPLD_wxwidgets=OFF \
75                        -DPLD_xcairo=ON  \
76                        -DPLD_tkwin=OFF \
77                        -DENABLE_gnome2=OFF \
78                        -DENABLE_java=OFF \
79                        -DENABLE_python=OFF \
80                        -DENABLE_octave=OFF \
81                        -DENABLE_pdl=OFF \
82                        -DENABLE_itcl=OFF \
83                        -DENABLE_itk=OFF \
84                        -DENABLE_wxwidgets=OFF \
85                        -DBUILD_TEST=OFF \
86                        -DSWIG_DIR=${prefix}/bin
87configure.post_args     ../${distname}
88
89pre-configure {
90    file mkdir ${workpath}/build
91    if {[file exists ${prefix}/lib/libplplotd.dylib]} {
92        return -code error "Before upgrading plplot, please uninstall (or deactivate) the old version of plplot."
93    }
94}
95
96if {[variant_isset universal]} {
97    configure.args-append -DCMAKE_OSX_ARCHITECTURES=\"[strsed ${configure.universal_archs} "g| |;|"]\" -DENABLE_f77:BOOL=OFF -DENABLE_f95:BOOL=OFF
98} else {
99# Adhoc fix
100# cmake passes -arch to Fortran compiler
101# g95 ignores -arch but gfortran fails with it
102    if {[variant_isset g95]} {
103        configure.args-append -DCMAKE_OSX_ARCHITECTURES=\"[strsed ${build_arch} "g| |;|"]\"
104    }
105}
106
107build.dir               ${workpath}/build
108
109pre-destroot {
110    set mods "${workpath}/build/bindings/f95/plplot.mod
111              ${workpath}/build/bindings/f95/plplotp.mod
112              ${workpath}/build/bindings/f95/plplot_flt.mod"
113    foreach m $mods {
114        if {[file exists $m]} {
115            file copy $m ${workpath}/build/
116        }
117    }
118}
119
120platform i386 {
121    configure.args-append   -DCMAKE_MODULE_LINKER_FLAGS=\"-undefined dynamic_lookup\" \
122                            -DCMAKE_EXE_LINKER_FLAGS=\"-undefined dynamic_lookup\"
123}
124
125if {${os.platform}=="darwin"} {
126    default_variants    +aquaterm
127}
128
129# variant gcw is deleted since it has been deprecated
130# gd driver (gif, jpeg, png, svg) has been deprecated
131
132if {![variant_isset g95] && ![variant_isset universal]} {
133    default_variants +gcc43
134}
135variant gcc43 conflicts g95 conflicts universal description {Build using gcc43} {
136    depends_lib-append      port:gcc43
137    configure.args-append   -DCMAKE_Fortran_COMPILER=\"${prefix}/bin/gfortran-mp-4.3\" \
138                            -DCMAKE_Fortran_FLAGS=\"${configure.fflags}\" \
139}
140variant g95 conflicts gcc43 conflicts universal description {Build using g95} {
141    depends_lib-append      port:g95
142    configure.args-append   -DCMAKE_Fortran_COMPILER=\"${prefix}/bin/g95\" \
143                            -DCMAKE_OSX_DEPLOYMENT_TARGET=\"\"
144}
145
146variant octave description {Add support for Octave} {
147    depends_lib-append       port:octave port:swig-octave
148    configure.args-delete   -DENABLE_octave=OFF
149    configure.args-append   -DENABLE_octave=ON
150}
151
152variant java description {Add support for Java} {
153    depends_lib-append       port:swig-java
154    configure.args-delete   -DENABLE_java=OFF
155    configure.args-append   -DENABLE_java=ON
156}
157
158variant python25 description {Add support for python25} {
159    depends_lib-append      port:python25 \
160                            port:py25-numpy \
161                            port:swig-python
162    configure.args-delete   -DENABLE_python=OFF
163    configure.args-append   -DENABLE_python=ON \
164                            -DHAVE_NUMPY:BOOL=ON \
165                            -DPYTHON_INCLUDE_PATH=${prefix}/include/python2.5
166}
167
168variant gdc description {Add support for D} {
169    depends_lib-append      port:gdc
170    configure.args-append   -DENABLE_d=ON
171}
172
173variant aquaterm description {Add support for Aquaterm} {
174    depends_lib-append      port:aquaterm
175    configure.args-delete   -DPLD_aqt=OFF
176    configure.args-append   -DPLD_aqt=ON
177}
178
179variant no_x11 description {Build without X11} {
180    depends_lib-delete      path:lib/pkgconfig/pango.pc:pango \
181                            port:tk
182    configure.args-delete   -DPLD_xcairo=ON  \
183                            -DPLD_tk=ON \
184                            -DTK_INCLUDE_PATH=${prefix}/include \
185                            -DTK_LIBRARY=${prefix}/lib/libtk.dylib
186    configure.args-append   -DPLD_xcairo=OFF \
187                            -DPLD_xwin=OFF \
188                            -DPLD_tk=OFF \
189                            -DENABLE_tk=OFF
190}
Note: See TracBrowser for help on using the repository browser.