# $Id: Portfile,v 1.8 2005/01/14 00:18:57 matt Exp $ PortSystem 1.0 name unixODBC version 2.2.10 categories databases platforms darwin maintainers simon@cotsworth.com description Provides ODBC 3 connectivity for Unix long_description The unixODBC project provides UNIX applications with the same ODBC 3.51 API \ and facilities available under Windows. It provides a Driver Manager that \ supports the full ODBC API and performs the ODBC 3 to ODBC 2 translations \ with UNICODE to ANSI conversion. It also includes a set of graphical utilities \ that allow users to specify connections to DBMSes to be used by applications, \ a collection of ODBC drivers including a simple text based driver, an NNTP \ driver, a Postgres driver and others, and a selection of templates and \ libraries that to aid in the construction of ODBC drivers. It works with \ MySQL, Postgres, StarOffice, Applixware, iHTML, PHP, Perl DBD::ODBC, \ Paradox 9, and many other applications and drivers. Connection pooling is \ also provided to increase performance with applications such as PHP. homepage http://www.unixodbc.org/ master_sites ${homepage} \ ftp://ftp.easysoft.com/pub/beta/unixODBC/ checksums md5 a2e9d440c70e12c22d2548aa452c43ef \ sha1 f76121187dbf53e86641748abb0b91b3ae3b368d depends_lib lib:libiconv.2:libiconv lib:readline:readline patchfiles patch-ltmain.sh configure.env LDFLAGS=-L${prefix}/lib CPPFLAGS=-I${prefix}/include configure.args --with-libiconv-prefix=${prefix} \ --disable-stats \ --enable-gui=no platform darwin 6 { depends_lib-append lib:libdl:dlcompat } variant darwin { patchfiles-append patch-configure patch-SQLManageDataSources.c global _cc _ccr _psq1 _psq2 _nn _odbc _ex1 _ex2 set _cc "/usr/bin/gcc -bundle -flat_namespace -undefined suppress -o" set _ccr libodbccr.1.0.0 set _psq1 libodbcpsql.1.0.0 set _psq2 libodbcpsql.2.0.0 set _nn libnn.1.0.0 set _odbc libodbc.1.0.0 } variant stats { configure.args-delete --disable-stats configure.args-append --enable-stats } variant gui { depends_lib-append lib:libqt-mt.3:qt3 lib:libX11.6:XFree86 configure.env-append QTDIR=${prefix} configure.args-delete --enable-gui=no configure.args-append --enable-gui \ --with-qt-dir=${prefix} \ --with-qt-includes=${prefix}/include/qt3 \ --with-qt-libraries=${prefix}/lib \ --with-qt-bin=${prefix}/bin --with-extra-includes=/usr/X11R6/include \ --with-extra-libs=/usr/X11R6/lib } post-destroot { # darwin Mach-O bundles if { [variant_isset darwin] } { system "cd ${worksrcpath}/DriverManager && \ ${_cc} ${_odbc}.so .libs/libodbc.1.0.0.dylib && \ ln -fs ${_odbc}.so ${destroot}${prefix}/lib/libodbc.1.so && \ ln -fs ${_odbc}.so ${destroot}${prefix}/lib/libodbc.so" system "cd ${worksrcpath}/cur && ${_cc} ${_ccr}.so *.o" system "cd ${worksrcpath}/Drivers/PostgreSQL && ${_cc} ${_psq1}.so *.o" system "cd ${worksrcpath}/Drivers/Postgre7.1 && ${_cc} ${_psq2}.so *.o" system "cd ${worksrcpath}/Drivers/nn && ${_cc} ${_nn}.so *.o" foreach lib [list ${_ccr} ${_psq1} ${_psq2} ${_nn}] { system "mv ${destroot}${prefix}/lib/$lib.so ${destroot}${prefix}/lib/$lib.dylib" } foreach new [list cur/${_ccr} DriverManager/${_odbc} Drivers/PostgreSQL/${_psq1} Drivers/Postgre7.1/${_psq2} Drivers/nn/${_nn}] { xinstall -m 0755 ${worksrcpath}/$new.so ${destroot}${prefix}/lib } } # DOCS xinstall -d -m 0755 ${destroot}${prefix}/share/doc/${name} foreach doc [glob ${worksrcpath}/\[A-Z\]*\[A-Z\]\[A-Z\]\[A-Z\] ${worksrcpath}/doc/*.\[a-z\]\[a-z\]\[a-z\]*] { if {[string match "*.html" $doc]} { reinplace "s|${homepage}doc/||g" $doc } xinstall -m 0644 $doc ${destroot}${prefix}/share/doc/${name} } foreach dir [list AdministratorManual lst ProgrammerManual ProgrammerManual/Tutorial UserManual] { xinstall -d -m 0755 ${destroot}${prefix}/share/doc/${name}/$dir foreach file [glob ${worksrcpath}/doc/$dir/*.\[a-z\]\[a-z\]\[a-z\]*] { if {[string match "*.html" $file]} { reinplace "s|${homepage}doc/||g" $file } xinstall -m 0644 $file ${destroot}${prefix}/share/doc/${name}/$dir } } # TEMPLATES xinstall -d -m 0755 ${destroot}${prefix}/share/${name} foreach template [glob ${portpath}/${filesdir}/*.template] { xinstall -m 0644 $template ${destroot}${prefix}/share/${name} } foreach driver [glob ${destroot}${prefix}/share/${name}/*.driver.*] { reinplace "s|_DP_PREFIX|${prefix}|g" $driver } # CONFIG foreach ini [glob ${destroot}${prefix}/etc/*.ini] { system "mv $ini $ini.dist" } destroot.keepdirs ${destroot}${prefix}/etc/ODBCDataSources }