pkgsrc/databases/unixodbc/Makefile
adam 26de9fa5af unixodbc: updated to 2.3.9
2.3.9
Fix that broke several driver builds. Sorry

2.3.8
Add configure support for editline
SQLDriversW was ignoring user config
SQLDataSources Fix termination character
Fix for pooling seg fault
Make calling SQLSetStmtAttrW call the W function in the driver is its there
Try and fix race condition clearing system odbc.ini file
Remove trailing space from isql/iusql SQL
When setting connection attributes set before connect also check if the W entry poins can be used
Try calling the W error functions first if available in the driver
Add iconvperdriver configure option to allow calling unicode_setup in SQLAllocHandle
iconv handles was being lost when reusing pooled connection
Catch null copy in iniPropertyInsert
Fix some leaks
2020-09-14 17:46:39 +00:00

94 lines
2.9 KiB
Makefile

# $NetBSD: Makefile,v 1.43 2020/09/14 17:46:39 adam Exp $
DISTNAME= unixODBC-2.3.9
PKGNAME= ${DISTNAME:S/ODBC/odbc/}
CATEGORIES= databases
MASTER_SITES= ftp://ftp.unixodbc.org/pub/unixODBC/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.unixodbc.org/
COMMENT= ODBC 2.x/3.x driver manager
LICENSE= gnu-lgpl-v2.1
CONFLICTS+= iodbc<3.52.7nb2
USE_LIBTOOL= yes
USE_TOOLS+= gmake flex yacc # to get libodbctxt.la
GNU_CONFIGURE= yes
GNU_CONFIGURE_STRICT= no # has sub-configures
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
CONFIGURE_ARGS+= --disable-gui
CONFIGURE_ARGS+= --enable-driverc
CONFIGURE_ARGS+= --enable-drivers
CONFIGURE_ARGS+= --enable-threads
PKGCONFIG_OVERRIDE+= DriverManager/odbc.pc.in
PKGCONFIG_OVERRIDE+= cur/odbccr.pc.in
PKGCONFIG_OVERRIDE+= odbcinst/odbcinst.pc.in
PTHREAD_OPTS+= require
.include "../../mk/pthread.buildlink3.mk"
.if defined(PTHREAD_TYPE) && (${PTHREAD_TYPE} == "pth")
CONFIGURE_ARGS+= --enable-gnuthreads
CONFIGURE_ARGS+= --with-pth=${PTHREADBASE:Q}
.endif
LIBS.SunOS+= -lsocket -lnsl
# Override the local definitions that point to the self-contained libtool
# convenience library. We want the one installed by pkgsrc. Also override
# the variable pointing to the (static) libfl.a, which won't link with a
# shared library. The sources define all the relevant symbols (yywrap), so
# libfl.a isn't needed.
MAKE_FLAGS+= LEXLIB=""
MAKE_ENV+= AM_MAKEFLAGS=${MAKE_FLAGS:Q}
UNIXODBC_DRIVERS_DIR= lib/unixodbc
PLIST_SUBST+= UNIXODBC_DRIVERS_DIR=${UNIXODBC_DRIVERS_DIR}
FILES_SUBST+= UNIXODBC_DRIVERS_DIR=${UNIXODBC_DRIVERS_DIR}
EGDIR= ${PREFIX}/share/examples/${PKGBASE}
CONF_FILES= ${EGDIR}/odbc.ini ${PKG_SYSCONFDIR}/odbc.ini
OWN_DIRS= ${PKG_SYSCONFDIR}/ODBCDataSources
SUBST_CLASSES+= paths
SUBST_STAGE.paths= pre-configure
SUBST_FILES.paths= ${WRKDIR}/odbc.ini
SUBST_VARS.paths= PREFIX
SUBST_VARS.paths+= UNIXODBC_DRIVERS_DIR
SUBST_CLASSES+= mutex
SUBST_STAGE.mutex= pre-configure
SUBST_FILES.mutex= DriverManager/__handles.c odbcinst/_logging.c
SUBST_FILES.mutex+= odbcinst/SQLGetPrivateProfileString.c
SUBST_SED.mutex= -e 's,mutex_exit,odbc_mutex_exit,g'
INSTALLATION_DIRS= ${EGDIR}
post-extract:
${CP} ${FILESDIR}/odbcinst.ini.in ${WRKDIR}/odbc.ini
post-patch:
set -e; cd ${WRKSRC}; \
files=`${FIND} DRVConfig Drivers -name Makefile.in -print`;\
for file in $${files}; do \
sed -e "s|^\(libdir =\).*|\1 ${PREFIX}/${UNIXODBC_DRIVERS_DIR}|g" \
$${file} >> $${file}.fixed; \
mv -f $${file}.fixed $${file}; \
done
set -e; cd ${WRKSRC}; \
files=`${FIND} . -name Makefile.in -print`; \
for file in $${files}; do \
sed -e "/DEPENDENCIES/s|\$$(LIBLTDL)||g" \
-e "/LIBADD/s|@LEXLIB@|\$$(LEXLIB)|g" \
$${file} >> $${file}.fixed; \
mv -f $${file}.fixed $${file}; \
done
post-install:
${INSTALL_DATA} ${WRKDIR}/odbc.ini ${DESTDIR}${EGDIR}/odbc.ini
.include "../../devel/libltdl/buildlink3.mk"
.include "../../devel/readline/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"