SOCI is a database access library for C++ that makes the illusion of embedding

SQL queries in the regular C++ code, staying entirely within the Standard C++.
The idea is to provide C++ programmers a way to access SQL databases in the most
natural and intuitive way. If you find existing libraries too difficult for your
needs or just distracting, SOCI can be a good alternative.

WWW:	http://soci.sourceforge.net/

PR:		ports/150527
Submitted by:	Julien Laffaye <kimelto at gmail.com>
This commit is contained in:
Baptiste Daroussin 2010-09-15 13:27:01 +00:00
parent 54b8bec330
commit 1d16ff67be
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=261213
6 changed files with 126 additions and 0 deletions

View File

@ -722,6 +722,7 @@
SUBDIR += skytools
SUBDIR += slony1
SUBDIR += slony1v2
SUBDIR += soci
SUBDIR += spatialite
SUBDIR += sqlbuddy
SUBDIR += sqlcached

60
databases/soci/Makefile Normal file
View File

@ -0,0 +1,60 @@
# New ports collection makefile for: soci
# Date created: 2010-09-13
# Whom: Julien Laffaye <kimelto@gmail.com>
#
# $FreeBSD$
#
PORTNAME= soci
PORTVERSION= 3.0.0
CATEGORIES= databases databases
MASTER_SITES= SF
MASTER_SITE_SUBDIR= ${PORTNAME}/${PORTNAME}/${PORTNAME}-${PORTVERSION}
MAINTAINER= kimelto@gmail.com
COMMENT= The C++ Database Access Library
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE_1_0.txt
MAKE_JOBS_SAFE= yes
USE_LDCONFIG= yes
USE_TCL_BUILD= 85
HAS_CONFIGURE= yes
CONFIGURE_ARGS= --include-prefix=${PREFIX}/include/soci \
--lib-prefix=${PREFIX}/lib
ALL_TARGET= build_libs
SUB_FILES= pkg-message
PKGMESSAGE= ${WRKDIR}/pkg-message
OPTIONS= MYSQL "Build MySQL driver" on \
PGSQL "Build PostgreSQL driver" on
.include <bsd.port.pre.mk>
.ifdef (WITH_MYSQL)
USE_MYSQL= yes
PLIST_SUB+= MYSQL=""
CONFIGURE_ARGS+=--mysql-include=${LOCALBASE}/include/mysql \
--mysql-lib=${LOCALBASE}/lib/mysql
.else
PLIST_SUB+= MYSQL="@comment "
.endif
.ifdef (WITH_PGSQL)
USE_PGSQL= yes
PLIST_SUB+= PGSQL=""
CONFIGURE_ARGS+=--postgresql-include=${LOCALBASE}/include \
--postgresql-lib=${LOCALBASE}/lib
.else
PLIST_SUB+= PGSQL="@comment "
.endif
post-patch:
@${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|" ${WRKSRC}/configure
@${REINPLACE_CMD} -e "s/ldconfig/true/" ${WRKSRC}/build/unix/install.tcl
post-install:
@${CAT} ${PKGMESSAGE}
.include <bsd.port.post.mk>

3
databases/soci/distinfo Normal file
View File

@ -0,0 +1,3 @@
MD5 (soci-3.0.0.tar.gz) = 1bf7dd244764e53557c1ecc01fdfac96
SHA256 (soci-3.0.0.tar.gz) = 896a79cbf1859971f4887eec8fa9519b17749c930d6901a6aa1701e556d26ece
SIZE (soci-3.0.0.tar.gz) = 195545

View File

@ -0,0 +1,2 @@
If you use dynamically loaded backends, you have to set the environment variable
SOCI_BACKENDS_PATH to %%PREFIX%%/lib

7
databases/soci/pkg-descr Normal file
View File

@ -0,0 +1,7 @@
SOCI is a database access library for C++ that makes the illusion of embedding
SQL queries in the regular C++ code, staying entirely within the Standard C++.
The idea is to provide C++ programmers a way to access SQL databases in the most
natural and intuitive way. If you find existing libraries too difficult for your
needs or just distracting, SOCI can be a good alternative.
WWW: http://soci.sourceforge.net/

53
databases/soci/pkg-plist Normal file
View File

@ -0,0 +1,53 @@
include/soci/backend-loader.h
include/soci/blob-exchange.h
include/soci/blob.h
include/soci/boost-fusion.h
include/soci/boost-gregorian-date.h
include/soci/boost-optional.h
include/soci/boost-tuple.h
include/soci/connection-pool.h
include/soci/error.h
include/soci/exchange-traits.h
include/soci/into-type.h
include/soci/into.h
include/soci/once-temp-type.h
include/soci/prepare-temp-type.h
include/soci/procedure.h
include/soci/ref-counted-prepare-info.h
include/soci/ref-counted-statement.h
include/soci/row-exchange.h
include/soci/row.h
include/soci/rowid-exchange.h
include/soci/rowid.h
include/soci/rowset.h
include/soci/session.h
include/soci/soci-backend.h
include/soci/soci-config.h
%%MYSQL%%include/soci/soci-mysql.h
include/soci/soci-platform.h
%%PGSQL%%include/soci/soci-postgresql.h
include/soci/soci-simple.h
include/soci/soci.h
include/soci/statement.h
include/soci/transaction.h
include/soci/type-conversion-traits.h
include/soci/type-conversion.h
include/soci/type-holder.h
include/soci/type-ptr.h
include/soci/use-type.h
include/soci/use.h
include/soci/values-exchange.h
include/soci/values.h
lib/libsoci_core-3.0.0.so
lib/libsoci_core-3.so
lib/libsoci_core.a
lib/libsoci_core.so
%%MYSQL%%lib/libsoci_mysql-3.0.0.so
%%MYSQL%%lib/libsoci_mysql-3.so
%%MYSQL%%lib/libsoci_mysql.a
%%MYSQL%%lib/libsoci_mysql.so
%%PGSQL%%lib/libsoci_postgresql-3.0.0.so
%%PGSQL%%lib/libsoci_postgresql-3.so
%%PGSQL%%lib/libsoci_postgresql.a
%%PGSQL%%lib/libsoci_postgresql.so
@dirrm include/soci