diff --git a/databases/Makefile b/databases/Makefile index 3aa79e994fd5..b5d745df4bc1 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -31,6 +31,7 @@ SUBDIR += courier-authlib-pgsql SUBDIR += courier-authlib-userdb SUBDIR += courier-authlib-usergdbm + SUBDIR += cppdb SUBDIR += credis SUBDIR += cyrus-imspd SUBDIR += dalmp diff --git a/databases/cppdb/Makefile b/databases/cppdb/Makefile new file mode 100644 index 000000000000..bab1a26cc773 --- /dev/null +++ b/databases/cppdb/Makefile @@ -0,0 +1,105 @@ +# Created by: Mohammad S. Babaei +# $FreeBSD$ + +PORTNAME= cppdb +PORTVERSION= 0.3.1 +CATEGORIES= databases +MASTER_SITES= SF/cppcms/${PORTNAME}/${PORTVERSION} + +MAINTAINER= info@babaei.net +COMMENT= Platform and database independent SQL connectivity library + +LICENSE= BSL MIT +LICENSE_COMB= dual +LICENSE_FILE= ${WRKSRC}/copyright.txt + +NO_OPTIONS_SORT= yes +OPTIONS_SINGLE= SQLITE3 PGSQL MYSQL ODBC +OPTIONS_SINGLE_MYSQL= MYSQL_DISABLE MYSQL_INTERNAL MYSQL_MODULE +OPTIONS_SINGLE_ODBC= ODBC_DISABLE ODBC_INTERNAL ODBC_MODULE +OPTIONS_SINGLE_PGSQL= PGSQL_DISABLE PGSQL_INTERNAL PGSQL_MODULE +OPTIONS_SINGLE_SQLITE3= SQLITE3_DISABLE SQLITE3_INTERNAL SQLITE3_MODULE + +OPTIONS_DEFAULT= MYSQL_DISABLE ODBC_DISABLE PGSQL_DISABLE SQLITE3_MODULE + +MYSQL_DESC= MySQL Backend +MYSQL_DISABLE_DESC= Disable MySQL backend +MYSQL_INTERNAL_DESC= Link MySQL backend into CppDB +MYSQL_MODULE_DESC= Build MySQL backend as a CppDB module +ODBC_DESC= ODBC Backend +ODBC_DISABLE_DESC= Disable ODBC backend +ODBC_INTERNAL_DESC= Link ODBC backend into CppDB +ODBC_MODULE_DESC= Build ODBC backend as a CppDB module +PGSQL_DESC= PostgreSQL Backend +PGSQL_DISABLE_DESC= Disable PostgreSQL backend +PGSQL_INTERNAL_DESC= Link PostgreSQL backend into CppDB +PGSQL_MODULE_DESC= Build PostgreSQL backend as a CppDB module +SQLITE3_DESC= SQLite 3 Backend +SQLITE3_DISABLE_DESC= Disable SQLite 3 backend +SQLITE3_INTERNAL_DESC= Link SQLite 3 backend into CppDB +SQLITE3_MODULE_DESC= Build SQLite 3 backend as a CppDB module + +USE_BZIP2= yes +USE_LDCONFIG= yes +USES= cmake +MAKE_JOBS_SAFE= yes + +.include + +.if ${PORT_OPTIONS:MMYSQL_DISABLE} +CMAKE_ARGS+= -DDISABLE_MYSQL:BOOL=ON +PLIST_SUB+= MYSQL="@comment " +.else +USE_MYSQL= yes +CMAKE_ARGS+= -DDISABLE_MYSQL:BOOL=OFF +.if ${PORT_OPTIONS:MMYSQL_INTERNAL} +CMAKE_ARGS+= -DMYSQL_BACKEND_INTERNAL:BOOL=ON +.else +CMAKE_ARGS+= -DMYSQL_BACKEND_INTERNAL:BOOL=OFF +.endif +PLIST_SUB+= MYSQL="" +.endif + +.if ${PORT_OPTIONS:MODBC_DISABLE} +CMAKE_ARGS+= -DDISABLE_ODBC:BOOL=ON +PLIST_SUB+= ODBC="@comment " +.else +LIB_DEPENDS+= odbc:${PORTSDIR}/databases/unixODBC +CMAKE_ARGS+= -DDISABLE_ODBC:BOOL=OFF +.if ${PORT_OPTIONS:MODBC_INTERNAL} +CMAKE_ARGS+= -DODBC_BACKEND_INTERNAL:BOOL=ON +.else +CMAKE_ARGS+= -DODBC_BACKEND_INTERNAL:BOOL=OFF +.endif +PLIST_SUB+= ODBC="" +.endif + +.if ${PORT_OPTIONS:MPGSQL_DISABLE} +CMAKE_ARGS+= -DDISABLE_PQ:BOOL=ON +PLIST_SUB+= PGSQL="@comment " +.else +USE_PGSQL= yes +CMAKE_ARGS+= -DDISABLE_PQ:BOOL=OFF +.if ${PORT_OPTIONS:MPGSQL_INTERNAL} +CMAKE_ARGS+= -DPQ_BACKEND_INTERNAL:BOOL=ON +.else +CMAKE_ARGS+= -DPQ_BACKEND_INTERNAL:BOOL=OFF +.endif +PLIST_SUB+= PGSQL="" +.endif + +.if ${PORT_OPTIONS:MSQLITE3_DISABLE} +CMAKE_ARGS+= -DDISABLE_SQLITE:BOOL=ON +PLIST_SUB+= SQLITE3="@comment " +.else +USE_SQLITE= 3 +CMAKE_ARGS+= -DDISABLE_SQLITE:BOOL=OFF +.if ${PORT_OPTIONS:MSQLITE3_INTERNAL} +CMAKE_ARGS+= -DSQLITE_BACKEND_INTERNAL:BOOL=ON +.else +CMAKE_ARGS+= -DSQLITE_BACKEND_INTERNAL:BOOL=OFF +.endif +PLIST_SUB+= SQLITE3="" +.endif + +.include diff --git a/databases/cppdb/distinfo b/databases/cppdb/distinfo new file mode 100644 index 000000000000..6a8509771619 --- /dev/null +++ b/databases/cppdb/distinfo @@ -0,0 +1,2 @@ +SHA256 (cppdb-0.3.1.tar.bz2) = d60eef5a732d8f84ef5e4a2845a8cefc543a6c75bf3782589c2cf6aa150b992e +SIZE (cppdb-0.3.1.tar.bz2) = 251449 diff --git a/databases/cppdb/pkg-descr b/databases/cppdb/pkg-descr new file mode 100644 index 000000000000..c09407e00974 --- /dev/null +++ b/databases/cppdb/pkg-descr @@ -0,0 +1,10 @@ +CppDB is a SQL connectivity library that is designed to provide platform and +database independent connectivity API similarly to what JDBC, ODBC and other +connectivity libraries do. It supports Sqlite3, PostgreSQL, MySQL and as many +RDBMSs as possible via cppdb-odbc bridge. + +It was written with performance, simplicity in use and locale safety as the +primary goals in mind. It also provides both explicit verbose API and brief +and nice syntactic sugar. + +WWW: http://cppcms.com/sql/cppdb/ diff --git a/databases/cppdb/pkg-plist b/databases/cppdb/pkg-plist new file mode 100644 index 000000000000..c5030edf76f3 --- /dev/null +++ b/databases/cppdb/pkg-plist @@ -0,0 +1,41 @@ +include/cppdb/atomic_counter.h +include/cppdb/backend.h +include/cppdb/conn_manager.h +include/cppdb/connection_specific.h +include/cppdb/defs.h +include/cppdb/driver_manager.h +include/cppdb/errors.h +include/cppdb/frontend.h +include/cppdb/mutex.h +include/cppdb/numeric_util.h +include/cppdb/pool.h +include/cppdb/ref_ptr.h +include/cppdb/shared_object.h +include/cppdb/utils.h +lib/libcppdb.a +lib/libcppdb.so +lib/libcppdb.so.0 +lib/libcppdb.so.0.3.1 +%%MYSQL%%lib/libcppdb_mysql.a +%%MYSQL%%lib/libcppdb_mysql.so +%%MYSQL%%lib/libcppdb_mysql.so.0 +%%MYSQL%%lib/libcppdb_mysql.so.0.3.1 +%%ODBC%%lib/libcppdb_odbc.a +%%ODBC%%lib/libcppdb_odbc.so +%%ODBC%%lib/libcppdb_odbc.so.0 +%%ODBC%%lib/libcppdb_odbc.so.0.3.1 +%%PGSQL%%lib/libcppdb_postgresql.a +%%PGSQL%%lib/libcppdb_postgresql.so +%%PGSQL%%lib/libcppdb_postgresql.so.0 +%%PGSQL%%lib/libcppdb_postgresql.so.0.3.1 +%%SQLITE3%%lib/libcppdb_sqlite3.a +%%SQLITE3%%lib/libcppdb_sqlite3.so +%%SQLITE3%%lib/libcppdb_sqlite3.so.0 +%%SQLITE3%%lib/libcppdb_sqlite3.so.0.3.1 +share/licenses/cppdb-0.3.1/BSL +share/licenses/cppdb-0.3.1/LICENSE +share/licenses/cppdb-0.3.1/MIT +share/licenses/cppdb-0.3.1/catalog.mk +@dirrm share/licenses/cppdb-0.3.1 +@dirrm share/licenses +@dirrm include/cppdb