From b62164b756ba79b92bef4082e2f988e72c9cc525 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 29 Apr 2024 13:17:26 +0200 Subject: Get rid of dual config support and _BUILD2 macro in runtime libraries --- libodb-boost/odb/boost/buildfile | 25 ++------------ .../odb/boost/details/build2/config-stub.h | 5 --- .../odb/boost/details/build2/config-vc-stub.h | 5 --- libodb-boost/odb/boost/details/build2/config-vc.h | 15 -------- libodb-boost/odb/boost/details/build2/config.h | 17 --------- libodb-boost/odb/boost/details/config-vc.h | 5 --- libodb-boost/odb/boost/details/config.h.in | 12 ------- libodb-boost/odb/boost/details/config.hxx | 8 +---- libodb-boost/odb/boost/details/export.hxx | 34 +----------------- libodb-mssql/odb/mssql/buildfile | 21 ++---------- .../odb/mssql/details/build2/config-stub.h | 5 --- .../odb/mssql/details/build2/config-vc-stub.h | 5 --- libodb-mssql/odb/mssql/details/build2/config-vc.h | 15 -------- libodb-mssql/odb/mssql/details/build2/config.h | 17 --------- libodb-mssql/odb/mssql/details/config-vc.h | 5 --- libodb-mssql/odb/mssql/details/config.h.in | 12 ------- libodb-mssql/odb/mssql/details/config.hxx | 6 ---- libodb-mssql/odb/mssql/details/export.hxx | 38 +++----------------- libodb-mysql/odb/mysql/buildfile | 21 ++---------- .../odb/mysql/details/build2/config-stub.h | 5 --- .../odb/mysql/details/build2/config-vc-stub.h | 5 --- libodb-mysql/odb/mysql/details/build2/config-vc.h | 15 -------- libodb-mysql/odb/mysql/details/build2/config.h | 17 --------- libodb-mysql/odb/mysql/details/config.hxx | 19 +++------- libodb-mysql/odb/mysql/details/export.hxx | 38 +++----------------- libodb-oracle/odb/oracle/buildfile | 21 ++---------- .../odb/oracle/details/build2/config-stub.h | 5 --- .../odb/oracle/details/build2/config-vc-stub.h | 5 --- .../odb/oracle/details/build2/config-vc.h | 15 -------- libodb-oracle/odb/oracle/details/build2/config.h | 17 --------- libodb-oracle/odb/oracle/details/config-vc.h | 5 --- libodb-oracle/odb/oracle/details/config.h.in | 12 ------- libodb-oracle/odb/oracle/details/config.hxx | 6 ---- libodb-oracle/odb/oracle/details/export.hxx | 38 +++----------------- libodb-pgsql/odb/pgsql/buildfile | 21 ++---------- .../odb/pgsql/details/build2/config-stub.h | 5 --- .../odb/pgsql/details/build2/config-vc-stub.h | 5 --- libodb-pgsql/odb/pgsql/details/build2/config-vc.h | 15 -------- libodb-pgsql/odb/pgsql/details/build2/config.h | 17 --------- libodb-pgsql/odb/pgsql/details/config-vc.h | 5 --- libodb-pgsql/odb/pgsql/details/config.h.in | 12 ------- libodb-pgsql/odb/pgsql/details/config.hxx | 6 ---- libodb-pgsql/odb/pgsql/details/export.hxx | 38 +++----------------- libodb-qt/odb/qt/buildfile | 25 ++------------ libodb-qt/odb/qt/details/build2/config-stub.h | 5 --- libodb-qt/odb/qt/details/build2/config-vc-stub.h | 5 --- libodb-qt/odb/qt/details/build2/config-vc.h | 15 -------- libodb-qt/odb/qt/details/build2/config.h | 17 --------- libodb-qt/odb/qt/details/config-vc.h | 5 --- libodb-qt/odb/qt/details/config.h.in | 12 ------- libodb-qt/odb/qt/details/config.hxx | 8 +---- libodb-qt/odb/qt/details/export.hxx | 34 +----------------- libodb-sqlite/odb/sqlite/buildfile | 21 ++---------- .../odb/sqlite/details/build2/config-stub.h | 5 --- .../odb/sqlite/details/build2/config-vc-stub.h | 5 --- .../odb/sqlite/details/build2/config-vc.h | 15 -------- libodb-sqlite/odb/sqlite/details/build2/config.h | 17 --------- libodb-sqlite/odb/sqlite/details/config-vc.h | 5 --- libodb-sqlite/odb/sqlite/details/config.h.in | 14 -------- libodb-sqlite/odb/sqlite/details/config.hxx | 20 +++-------- libodb-sqlite/odb/sqlite/details/export.hxx | 40 ++-------------------- libodb/odb/buildfile | 24 +++++-------- libodb/odb/details/build2/config-stub.h | 5 --- libodb/odb/details/build2/config-vc-stub.h | 5 --- libodb/odb/details/build2/config-vc.h | 23 ------------- libodb/odb/details/build2/config.h | 19 ---------- libodb/odb/details/config-vc.h | 16 +++++++-- libodb/odb/details/config.h | 18 ++++++++++ libodb/odb/details/config.h.in | 18 ---------- libodb/odb/details/config.hxx | 8 +---- libodb/odb/details/export.hxx | 34 +----------------- libodb/odb/details/win32/dll.cxx | 7 ++-- 72 files changed, 93 insertions(+), 970 deletions(-) delete mode 100644 libodb-boost/odb/boost/details/build2/config-stub.h delete mode 100644 libodb-boost/odb/boost/details/build2/config-vc-stub.h delete mode 100644 libodb-boost/odb/boost/details/build2/config-vc.h delete mode 100644 libodb-boost/odb/boost/details/build2/config.h delete mode 100644 libodb-boost/odb/boost/details/config-vc.h delete mode 100644 libodb-boost/odb/boost/details/config.h.in delete mode 100644 libodb-mssql/odb/mssql/details/build2/config-stub.h delete mode 100644 libodb-mssql/odb/mssql/details/build2/config-vc-stub.h delete mode 100644 libodb-mssql/odb/mssql/details/build2/config-vc.h delete mode 100644 libodb-mssql/odb/mssql/details/build2/config.h delete mode 100644 libodb-mssql/odb/mssql/details/config-vc.h delete mode 100644 libodb-mssql/odb/mssql/details/config.h.in delete mode 100644 libodb-mysql/odb/mysql/details/build2/config-stub.h delete mode 100644 libodb-mysql/odb/mysql/details/build2/config-vc-stub.h delete mode 100644 libodb-mysql/odb/mysql/details/build2/config-vc.h delete mode 100644 libodb-mysql/odb/mysql/details/build2/config.h delete mode 100644 libodb-oracle/odb/oracle/details/build2/config-stub.h delete mode 100644 libodb-oracle/odb/oracle/details/build2/config-vc-stub.h delete mode 100644 libodb-oracle/odb/oracle/details/build2/config-vc.h delete mode 100644 libodb-oracle/odb/oracle/details/build2/config.h delete mode 100644 libodb-oracle/odb/oracle/details/config-vc.h delete mode 100644 libodb-oracle/odb/oracle/details/config.h.in delete mode 100644 libodb-pgsql/odb/pgsql/details/build2/config-stub.h delete mode 100644 libodb-pgsql/odb/pgsql/details/build2/config-vc-stub.h delete mode 100644 libodb-pgsql/odb/pgsql/details/build2/config-vc.h delete mode 100644 libodb-pgsql/odb/pgsql/details/build2/config.h delete mode 100644 libodb-pgsql/odb/pgsql/details/config-vc.h delete mode 100644 libodb-pgsql/odb/pgsql/details/config.h.in delete mode 100644 libodb-qt/odb/qt/details/build2/config-stub.h delete mode 100644 libodb-qt/odb/qt/details/build2/config-vc-stub.h delete mode 100644 libodb-qt/odb/qt/details/build2/config-vc.h delete mode 100644 libodb-qt/odb/qt/details/build2/config.h delete mode 100644 libodb-qt/odb/qt/details/config-vc.h delete mode 100644 libodb-qt/odb/qt/details/config.h.in delete mode 100644 libodb-sqlite/odb/sqlite/details/build2/config-stub.h delete mode 100644 libodb-sqlite/odb/sqlite/details/build2/config-vc-stub.h delete mode 100644 libodb-sqlite/odb/sqlite/details/build2/config-vc.h delete mode 100644 libodb-sqlite/odb/sqlite/details/build2/config.h delete mode 100644 libodb-sqlite/odb/sqlite/details/config-vc.h delete mode 100644 libodb-sqlite/odb/sqlite/details/config.h.in delete mode 100644 libodb/odb/details/build2/config-stub.h delete mode 100644 libodb/odb/details/build2/config-vc-stub.h delete mode 100644 libodb/odb/details/build2/config-vc.h delete mode 100644 libodb/odb/details/build2/config.h create mode 100644 libodb/odb/details/config.h delete mode 100644 libodb/odb/details/config.h.in diff --git a/libodb-boost/odb/boost/buildfile b/libodb-boost/odb/boost/buildfile index ddd38ec..b8dd6d1 100644 --- a/libodb-boost/odb/boost/buildfile +++ b/libodb-boost/odb/boost/buildfile @@ -21,7 +21,6 @@ imp_libs = lib{odb-boost}: {hxx ixx txx cxx}{** -version} hxx{version} \ - details/build2/{h}{*} \ options{**} ../options{boost} \ $imp_libs $int_libs @@ -47,7 +46,7 @@ # Build options. # - cxx.poptions =+ "-I$out_root" "-I$src_root" -DLIBODB_BOOST_BUILD2 + cxx.poptions =+ "-I$out_root" "-I$src_root" obja{*}: cxx.poptions += -DLIBODB_BOOST_STATIC_BUILD objs{*}: cxx.poptions += -DLIBODB_BOOST_SHARED_BUILD @@ -56,31 +55,11 @@ # lib{odb-boost}: { - cxx.export.poptions = "-I$out_root" "-I$src_root" -DLIBODB_BOOST_BUILD2 + cxx.export.poptions = "-I$out_root" "-I$src_root" cxx.export.libs = $int_libs } liba{odb-boost}: cxx.export.poptions += -DLIBODB_BOOST_STATIC libs{odb-boost}: cxx.export.poptions += -DLIBODB_BOOST_SHARED - - # Installation tweaks. - # - install_include = [dir_path] include/odb/boost/ - - details/build2/ - { - h{*}: install = false - - if ($cxx.target.system == 'win32-msvc') - { - h{config-vc}@./: install = $install_include/details/ - h{config-vc-stub}@./: install = $install_include/details/build2/config-vc.h - } - else - { - h{config}@./: install = $install_include/details/ - h{config-stub}@./: install = $install_include/details/build2/config.h - } - } } } diff --git a/libodb-boost/odb/boost/details/build2/config-stub.h b/libodb-boost/odb/boost/details/build2/config-stub.h deleted file mode 100644 index 6f5f461..0000000 --- a/libodb-boost/odb/boost/details/build2/config-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/boost/details/build2/config-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-boost/odb/boost/details/build2/config-vc-stub.h b/libodb-boost/odb/boost/details/build2/config-vc-stub.h deleted file mode 100644 index c6650f3..0000000 --- a/libodb-boost/odb/boost/details/build2/config-vc-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/boost/details/build2/config-vc-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-boost/odb/boost/details/build2/config-vc.h b/libodb-boost/odb/boost/details/build2/config-vc.h deleted file mode 100644 index 5cdff2b..0000000 --- a/libodb-boost/odb/boost/details/build2/config-vc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* file : odb/boost/details/build2/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Configuration file for Windows/VC++ for the build2 build. */ - -#ifndef ODB_BOOST_DETAILS_CONFIG_VC_H -#define ODB_BOOST_DETAILS_CONFIG_VC_H - -/* Define LIBODB_BOOST_BUILD2 for the installed case. */ -#ifndef LIBODB_BOOST_BUILD2 -# define LIBODB_BOOST_BUILD2 -#endif - -#endif /* ODB_BOOST_DETAILS_CONFIG_VC_H */ diff --git a/libodb-boost/odb/boost/details/build2/config.h b/libodb-boost/odb/boost/details/build2/config.h deleted file mode 100644 index ea24ba3..0000000 --- a/libodb-boost/odb/boost/details/build2/config.h +++ /dev/null @@ -1,17 +0,0 @@ -/* file : odb/boost/details/build2/config.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Static configuration file for the build2 build. The installed case - (when LIBODB_BOOST_BUILD2 is not necessarily defined) is the only - reason we have it. */ - -#ifndef ODB_BOOST_DETAILS_CONFIG_H -#define ODB_BOOST_DETAILS_CONFIG_H - -/* Define LIBODB_BOOST_BUILD2 for the installed case. */ -#ifndef LIBODB_BOOST_BUILD2 -# define LIBODB_BOOST_BUILD2 -#endif - -#endif /* ODB_BOOST_DETAILS_CONFIG_H */ diff --git a/libodb-boost/odb/boost/details/config-vc.h b/libodb-boost/odb/boost/details/config-vc.h deleted file mode 100644 index 687a1e1..0000000 --- a/libodb-boost/odb/boost/details/config-vc.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/boost/details/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Dummy configuration file for Windows/VC++. */ diff --git a/libodb-boost/odb/boost/details/config.h.in b/libodb-boost/odb/boost/details/config.h.in deleted file mode 100644 index 3cfc3aa..0000000 --- a/libodb-boost/odb/boost/details/config.h.in +++ /dev/null @@ -1,12 +0,0 @@ -/* file : odb/boost/details/config.h.in - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* This file is automatically processed by configure. */ - -#ifndef ODB_BOOST_DETAILS_CONFIG_H -#define ODB_BOOST_DETAILS_CONFIG_H - -#undef LIBODB_BOOST_STATIC_LIB - -#endif /* ODB_BOOST_DETAILS_CONFIG_H */ diff --git a/libodb-boost/odb/boost/details/config.hxx b/libodb-boost/odb/boost/details/config.hxx index f0fe850..d5ddef8 100644 --- a/libodb-boost/odb/boost/details/config.hxx +++ b/libodb-boost/odb/boost/details/config.hxx @@ -7,13 +7,7 @@ // no pre #ifdef ODB_COMPILER -# define LIBODB_BOOST_STATIC_LIB -#elif !defined(LIBODB_BOOST_BUILD2) -# ifdef _MSC_VER -# include -# else -# include -# endif +# define LIBODB_BOOST_STATIC #endif // no post diff --git a/libodb-boost/odb/boost/details/export.hxx b/libodb-boost/odb/boost/details/export.hxx index cb3b219..fa4e53c 100644 --- a/libodb-boost/odb/boost/details/export.hxx +++ b/libodb-boost/odb/boost/details/export.hxx @@ -6,7 +6,7 @@ #include -#include +#include // LIBODB_BOOST_STATIC if ODB_COMPILER // Normally we don't export class templates (but do complete specializations), // inline functions, and classes with only inline member functions. Exporting @@ -16,8 +16,6 @@ // used before their inline definition. The workaround is to reorder code. In // the end it's all trial and error. -#ifdef LIBODB_BOOST_BUILD2 - #if defined(LIBODB_BOOST_STATIC) // Using static. # define LIBODB_BOOST_EXPORT #elif defined(LIBODB_BOOST_STATIC_BUILD) // Building static. @@ -43,36 +41,6 @@ # define LIBODB_BOOST_EXPORT // Using static or shared. #endif -#else // LIBODB_BOOST_BUILD2 - -#ifdef LIBODB_BOOST_STATIC_LIB -# define LIBODB_BOOST_EXPORT -#else -# ifdef _WIN32 -# ifdef _MSC_VER -# ifdef LIBODB_BOOST_DYNAMIC_LIB -# define LIBODB_BOOST_EXPORT __declspec(dllexport) -# else -# define LIBODB_BOOST_EXPORT __declspec(dllimport) -# endif -# else -# ifdef LIBODB_BOOST_DYNAMIC_LIB -# ifdef DLL_EXPORT -# define LIBODB_BOOST_EXPORT __declspec(dllexport) -# else -# define LIBODB_BOOST_EXPORT -# endif -# else -# define LIBODB_BOOST_EXPORT __declspec(dllimport) -# endif -# endif -# else -# define LIBODB_BOOST_EXPORT -# endif -#endif - -#endif // LIBODB_BOOST_BUILD2 - #include #endif // ODB_BOOST_DETAILS_EXPORT_HXX diff --git a/libodb-mssql/odb/mssql/buildfile b/libodb-mssql/odb/mssql/buildfile index 9d2b635..a2b838f 100644 --- a/libodb-mssql/odb/mssql/buildfile +++ b/libodb-mssql/odb/mssql/buildfile @@ -16,7 +16,6 @@ if ($cc.target.class != 'windows') lib{odb-mssql}: {hxx ixx txx cxx}{* -version} {hxx}{version} \ details/{hxx ixx txx cxx}{* -options} \ - details/build2/{h}{*} \ $imp_libs $int_libs # Include the generated version header into the distribution (so that we don't @@ -32,7 +31,7 @@ hxx{version}: # Build options. # -cxx.poptions =+ "-I$out_root" "-I$src_root" -DLIBODB_MSSQL_BUILD2 +cxx.poptions =+ "-I$out_root" "-I$src_root" obja{*}: cxx.poptions += -DLIBODB_MSSQL_STATIC_BUILD objs{*}: cxx.poptions += -DLIBODB_MSSQL_SHARED_BUILD @@ -44,7 +43,7 @@ if ($cc.target.class == 'windows') # lib{odb-mssql}: { - cxx.export.poptions = "-I$out_root" "-I$src_root" -DLIBODB_MSSQL_BUILD2 + cxx.export.poptions = "-I$out_root" "-I$src_root" cxx.export.libs = $int_libs } @@ -141,19 +140,3 @@ install_include = [dir_path] include/odb/mssql/ install = $install_include install.subdirs = true } - -details/build2/ -{ - h{*}: install = false - - if ($cxx.target.system == 'win32-msvc') - { - h{config-vc}@./: install = $install_include/details/ - h{config-vc-stub}@./: install = $install_include/details/build2/config-vc.h - } - else - { - h{config}@./: install = $install_include/details/ - h{config-stub}@./: install = $install_include/details/build2/config.h - } -} diff --git a/libodb-mssql/odb/mssql/details/build2/config-stub.h b/libodb-mssql/odb/mssql/details/build2/config-stub.h deleted file mode 100644 index e402d2f..0000000 --- a/libodb-mssql/odb/mssql/details/build2/config-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/mssql/details/build2/config-stub.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -#include diff --git a/libodb-mssql/odb/mssql/details/build2/config-vc-stub.h b/libodb-mssql/odb/mssql/details/build2/config-vc-stub.h deleted file mode 100644 index 36ae27f..0000000 --- a/libodb-mssql/odb/mssql/details/build2/config-vc-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/mssql/details/build2/config-vc-stub.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -#include diff --git a/libodb-mssql/odb/mssql/details/build2/config-vc.h b/libodb-mssql/odb/mssql/details/build2/config-vc.h deleted file mode 100644 index 1489d09..0000000 --- a/libodb-mssql/odb/mssql/details/build2/config-vc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* file : odb/mssql/details/build2/config-vc.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -/* Configuration file for Windows/VC++ for the build2 build. */ - -#ifndef ODB_MSSQL_DETAILS_CONFIG_VC_H -#define ODB_MSSQL_DETAILS_CONFIG_VC_H - -/* Define LIBODB_MSSQL_BUILD2 for the installed case. */ -#ifndef LIBODB_MSSQL_BUILD2 -# define LIBODB_MSSQL_BUILD2 -#endif - -#endif /* ODB_MSSQL_DETAILS_CONFIG_VC_H */ diff --git a/libodb-mssql/odb/mssql/details/build2/config.h b/libodb-mssql/odb/mssql/details/build2/config.h deleted file mode 100644 index de736e2..0000000 --- a/libodb-mssql/odb/mssql/details/build2/config.h +++ /dev/null @@ -1,17 +0,0 @@ -/* file : odb/mssql/details/build2/config.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -/* Static configuration file for the build2 build. The installed case - (when LIBODB_MSSQL_BUILD2 is not necessarily defined) is the only - reason we have it. */ - -#ifndef ODB_MSSQL_DETAILS_CONFIG_H -#define ODB_MSSQL_DETAILS_CONFIG_H - -/* Define LIBODB_MSSQL_BUILD2 for the installed case. */ -#ifndef LIBODB_MSSQL_BUILD2 -# define LIBODB_MSSQL_BUILD2 -#endif - -#endif /* ODB_MSSQL_DETAILS_CONFIG_H */ diff --git a/libodb-mssql/odb/mssql/details/config-vc.h b/libodb-mssql/odb/mssql/details/config-vc.h deleted file mode 100644 index e93b86b..0000000 --- a/libodb-mssql/odb/mssql/details/config-vc.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/mssql/details/config-vc.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -/* Dummy configuration file for Windows/VC++. */ diff --git a/libodb-mssql/odb/mssql/details/config.h.in b/libodb-mssql/odb/mssql/details/config.h.in deleted file mode 100644 index 9ddb75a..0000000 --- a/libodb-mssql/odb/mssql/details/config.h.in +++ /dev/null @@ -1,12 +0,0 @@ -/* file : odb/mssql/details/config.h.in - * license : ODB NCUEL; see accompanying LICENSE file - */ - -/* This file is automatically processed by configure. */ - -#ifndef ODB_MSSQL_DETAILS_CONFIG_H -#define ODB_MSSQL_DETAILS_CONFIG_H - -#undef LIBODB_MSSQL_STATIC_LIB - -#endif /* ODB_MSSQL_DETAILS_CONFIG_H */ diff --git a/libodb-mssql/odb/mssql/details/config.hxx b/libodb-mssql/odb/mssql/details/config.hxx index ff2a5af..1459f2f 100644 --- a/libodb-mssql/odb/mssql/details/config.hxx +++ b/libodb-mssql/odb/mssql/details/config.hxx @@ -8,12 +8,6 @@ #ifdef ODB_COMPILER # error libodb-mssql header included in odb-compiled header -#elif !defined(LIBODB_MSSQL_BUILD2) -# ifdef _MSC_VER -# include -# else -# include -# endif #endif // no post diff --git a/libodb-mssql/odb/mssql/details/export.hxx b/libodb-mssql/odb/mssql/details/export.hxx index 94e762b..cd74078 100644 --- a/libodb-mssql/odb/mssql/details/export.hxx +++ b/libodb-mssql/odb/mssql/details/export.hxx @@ -6,7 +6,11 @@ #include -#include +// Note: do this check directly instead of including config.hxx. +// +#ifdef ODB_COMPILER +# error libodb-mssql header included in odb-compiled header +#endif // Normally we don't export class templates (but do complete specializations), // inline functions, and classes with only inline member functions. Exporting @@ -16,8 +20,6 @@ // used before their inline definition. The workaround is to reorder code. In // the end it's all trial and error. -#ifdef LIBODB_MSSQL_BUILD2 - #if defined(LIBODB_MSSQL_STATIC) // Using static. # define LIBODB_MSSQL_EXPORT #elif defined(LIBODB_MSSQL_STATIC_BUILD) // Building static. @@ -43,36 +45,6 @@ # define LIBODB_MSSQL_EXPORT // Using static or shared. #endif -#else // LIBODB_MSSQL_BUILD2 - -#ifdef LIBODB_MSSQL_STATIC_LIB -# define LIBODB_MSSQL_EXPORT -#else -# ifdef _WIN32 -# ifdef _MSC_VER -# ifdef LIBODB_MSSQL_DYNAMIC_LIB -# define LIBODB_MSSQL_EXPORT __declspec(dllexport) -# else -# define LIBODB_MSSQL_EXPORT __declspec(dllimport) -# endif -# else -# ifdef LIBODB_MSSQL_DYNAMIC_LIB -# ifdef DLL_EXPORT -# define LIBODB_MSSQL_EXPORT __declspec(dllexport) -# else -# define LIBODB_MSSQL_EXPORT -# endif -# else -# define LIBODB_MSSQL_EXPORT __declspec(dllimport) -# endif -# endif -# else -# define LIBODB_MSSQL_EXPORT -# endif -#endif - -#endif // LIBODB_MSSQL_BUILD2 - #include #endif // ODB_MSSQL_DETAILS_EXPORT_HXX diff --git a/libodb-mysql/odb/mysql/buildfile b/libodb-mysql/odb/mysql/buildfile index 708d093..42e5e88 100644 --- a/libodb-mysql/odb/mysql/buildfile +++ b/libodb-mysql/odb/mysql/buildfile @@ -12,7 +12,6 @@ import int_libs += ($client_lib == 'mysql' \ lib{odb-mysql}: {hxx ixx txx cxx}{* -version} {hxx}{version} \ details/{hxx ixx txx cxx}{* -options} \ - details/build2/{h}{*} \ $int_libs # Include the generated version header into the distribution (so that we don't @@ -28,7 +27,7 @@ hxx{version}: # Build options. # -cxx.poptions =+ "-I$out_root" "-I$src_root" -DLIBODB_MYSQL_BUILD2 +cxx.poptions =+ "-I$out_root" "-I$src_root" if ($client_lib == 'mariadb') cxx.poptions += -DLIBODB_MYSQL_MARIADB @@ -40,7 +39,7 @@ objs{*}: cxx.poptions += -DLIBODB_MYSQL_SHARED_BUILD # lib{odb-mysql}: { - cxx.export.poptions = "-I$out_root" "-I$src_root" -DLIBODB_MYSQL_BUILD2 + cxx.export.poptions = "-I$out_root" "-I$src_root" cxx.export.libs = $int_libs } @@ -141,19 +140,3 @@ install_include = [dir_path] include/odb/mysql/ install = $install_include install.subdirs = true } - -details/build2/ -{ - h{*}: install = false - - if ($cxx.target.system == 'win32-msvc') - { - h{config-vc}@./: install = $install_include/details/ - h{config-vc-stub}@./: install = $install_include/details/build2/config-vc.h - } - else - { - h{config}@./: install = $install_include/details/ - h{config-stub}@./: install = $install_include/details/build2/config.h - } -} diff --git a/libodb-mysql/odb/mysql/details/build2/config-stub.h b/libodb-mysql/odb/mysql/details/build2/config-stub.h deleted file mode 100644 index d9d08eb..0000000 --- a/libodb-mysql/odb/mysql/details/build2/config-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/mysql/details/build2/config-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-mysql/odb/mysql/details/build2/config-vc-stub.h b/libodb-mysql/odb/mysql/details/build2/config-vc-stub.h deleted file mode 100644 index e22c7c2..0000000 --- a/libodb-mysql/odb/mysql/details/build2/config-vc-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/mysql/details/build2/config-vc-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-mysql/odb/mysql/details/build2/config-vc.h b/libodb-mysql/odb/mysql/details/build2/config-vc.h deleted file mode 100644 index 3adb630..0000000 --- a/libodb-mysql/odb/mysql/details/build2/config-vc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* file : odb/mysql/details/build2/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Configuration file for Windows/VC++ for the build2 build. */ - -#ifndef ODB_MYSQL_DETAILS_CONFIG_VC_H -#define ODB_MYSQL_DETAILS_CONFIG_VC_H - -/* Define LIBODB_MYSQL_BUILD2 for the installed case. */ -#ifndef LIBODB_MYSQL_BUILD2 -# define LIBODB_MYSQL_BUILD2 -#endif - -#endif /* ODB_MYSQL_DETAILS_CONFIG_VC_H */ diff --git a/libodb-mysql/odb/mysql/details/build2/config.h b/libodb-mysql/odb/mysql/details/build2/config.h deleted file mode 100644 index ef6a60f..0000000 --- a/libodb-mysql/odb/mysql/details/build2/config.h +++ /dev/null @@ -1,17 +0,0 @@ -/* file : odb/mysql/details/build2/config.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Static configuration file for the build2 build. The installed case - (when LIBODB_MYSQL_BUILD2 is not necessarily defined) is the only - reason we have it. */ - -#ifndef ODB_MYSQL_DETAILS_CONFIG_H -#define ODB_MYSQL_DETAILS_CONFIG_H - -/* Define LIBODB_MYSQL_BUILD2 for the installed case. */ -#ifndef LIBODB_MYSQL_BUILD2 -# define LIBODB_MYSQL_BUILD2 -#endif - -#endif /* ODB_MYSQL_DETAILS_CONFIG_H */ diff --git a/libodb-mysql/odb/mysql/details/config.hxx b/libodb-mysql/odb/mysql/details/config.hxx index eeeee5c..f093e9d 100644 --- a/libodb-mysql/odb/mysql/details/config.hxx +++ b/libodb-mysql/odb/mysql/details/config.hxx @@ -8,23 +8,14 @@ #ifdef ODB_COMPILER # error libodb-mysql header included in odb-compiled header -#elif !defined(LIBODB_MYSQL_BUILD2) -# ifdef _MSC_VER -# include -# else -# include -# endif #endif -// LIBODB_MYSQL_BUILD2 macro can be defined either by the buildfile or by the -// included odb/mysql/details/config*.h (see above). +// @@ TMP: drop (along with LIBODB_MYSQL_THR_KEY_VISIBLE) after 2.5.0. // -#ifdef LIBODB_MYSQL_BUILD2 -# ifdef LIBODB_MYSQL_INCLUDE_SHORT -# error mysql headers must be included with mysql/ prefix -# elif !defined(LIBODB_MYSQL_INCLUDE_LONG) -# define LIBODB_MYSQL_INCLUDE_LONG 1 -# endif +#ifdef LIBODB_MYSQL_INCLUDE_SHORT +# error mysql headers must be included with mysql/ prefix +#elif !defined(LIBODB_MYSQL_INCLUDE_LONG) +# define LIBODB_MYSQL_INCLUDE_LONG 1 #endif // no post diff --git a/libodb-mysql/odb/mysql/details/export.hxx b/libodb-mysql/odb/mysql/details/export.hxx index e7c3871..817c7a4 100644 --- a/libodb-mysql/odb/mysql/details/export.hxx +++ b/libodb-mysql/odb/mysql/details/export.hxx @@ -6,7 +6,11 @@ #include -#include +// Note: do this check directly instead of including config.hxx. +// +#ifdef ODB_COMPILER +# error libodb-mysql header included in odb-compiled header +#endif // Normally we don't export class templates (but do complete specializations), // inline functions, and classes with only inline member functions. Exporting @@ -16,8 +20,6 @@ // used before their inline definition. The workaround is to reorder code. In // the end it's all trial and error. -#ifdef LIBODB_MYSQL_BUILD2 - #if defined(LIBODB_MYSQL_STATIC) // Using static. # define LIBODB_MYSQL_EXPORT #elif defined(LIBODB_MYSQL_STATIC_BUILD) // Building static. @@ -43,36 +45,6 @@ # define LIBODB_MYSQL_EXPORT // Using static or shared. #endif -#else // LIBODB_MYSQL_BUILD2 - -#ifdef LIBODB_MYSQL_STATIC_LIB -# define LIBODB_MYSQL_EXPORT -#else -# ifdef _WIN32 -# ifdef _MSC_VER -# ifdef LIBODB_MYSQL_DYNAMIC_LIB -# define LIBODB_MYSQL_EXPORT __declspec(dllexport) -# else -# define LIBODB_MYSQL_EXPORT __declspec(dllimport) -# endif -# else -# ifdef LIBODB_MYSQL_DYNAMIC_LIB -# ifdef DLL_EXPORT -# define LIBODB_MYSQL_EXPORT __declspec(dllexport) -# else -# define LIBODB_MYSQL_EXPORT -# endif -# else -# define LIBODB_MYSQL_EXPORT __declspec(dllimport) -# endif -# endif -# else -# define LIBODB_MYSQL_EXPORT -# endif -#endif - -#endif // LIBODB_MYSQL_BUILD2 - #include #endif // ODB_MYSQL_DETAILS_EXPORT_HXX diff --git a/libodb-oracle/odb/oracle/buildfile b/libodb-oracle/odb/oracle/buildfile index 1f377a1..8f6716a 100644 --- a/libodb-oracle/odb/oracle/buildfile +++ b/libodb-oracle/odb/oracle/buildfile @@ -15,7 +15,6 @@ else lib{odb-oracle}: {hxx ixx txx cxx}{* -version} {hxx}{version} \ details/{hxx ixx txx cxx}{* -options} \ - details/build2/{h}{*} \ $imp_libs $int_libs # Include the generated version header into the distribution (so that we don't @@ -31,7 +30,7 @@ hxx{version}: # Build options. # -cxx.poptions =+ "-I$out_root" "-I$src_root" -DLIBODB_ORACLE_BUILD2 +cxx.poptions =+ "-I$out_root" "-I$src_root" obja{*}: cxx.poptions += -DLIBODB_ORACLE_STATIC_BUILD objs{*}: cxx.poptions += -DLIBODB_ORACLE_SHARED_BUILD @@ -40,7 +39,7 @@ objs{*}: cxx.poptions += -DLIBODB_ORACLE_SHARED_BUILD # lib{odb-oracle}: { - cxx.export.poptions = "-I$out_root" "-I$src_root" -DLIBODB_ORACLE_BUILD2 + cxx.export.poptions = "-I$out_root" "-I$src_root" cxx.export.libs = $int_libs } @@ -137,19 +136,3 @@ install_include = [dir_path] include/odb/oracle/ install = $install_include install.subdirs = true } - -details/build2/ -{ - h{*}: install = false - - if ($cxx.target.system == 'win32-msvc') - { - h{config-vc}@./: install = $install_include/details/ - h{config-vc-stub}@./: install = $install_include/details/build2/config-vc.h - } - else - { - h{config}@./: install = $install_include/details/ - h{config-stub}@./: install = $install_include/details/build2/config.h - } -} diff --git a/libodb-oracle/odb/oracle/details/build2/config-stub.h b/libodb-oracle/odb/oracle/details/build2/config-stub.h deleted file mode 100644 index 2159951..0000000 --- a/libodb-oracle/odb/oracle/details/build2/config-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/oracle/details/build2/config-stub.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -#include diff --git a/libodb-oracle/odb/oracle/details/build2/config-vc-stub.h b/libodb-oracle/odb/oracle/details/build2/config-vc-stub.h deleted file mode 100644 index 697da2e..0000000 --- a/libodb-oracle/odb/oracle/details/build2/config-vc-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/oracle/details/build2/config-vc-stub.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -#include diff --git a/libodb-oracle/odb/oracle/details/build2/config-vc.h b/libodb-oracle/odb/oracle/details/build2/config-vc.h deleted file mode 100644 index 8b9dbdd..0000000 --- a/libodb-oracle/odb/oracle/details/build2/config-vc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* file : odb/oracle/details/build2/config-vc.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -/* Configuration file for Windows/VC++ for the build2 build. */ - -#ifndef ODB_ORACLE_DETAILS_CONFIG_VC_H -#define ODB_ORACLE_DETAILS_CONFIG_VC_H - -/* Define LIBODB_ORACLE_BUILD2 for the installed case. */ -#ifndef LIBODB_ORACLE_BUILD2 -# define LIBODB_ORACLE_BUILD2 -#endif - -#endif /* ODB_ORACLE_DETAILS_CONFIG_VC_H */ diff --git a/libodb-oracle/odb/oracle/details/build2/config.h b/libodb-oracle/odb/oracle/details/build2/config.h deleted file mode 100644 index 017c1ba..0000000 --- a/libodb-oracle/odb/oracle/details/build2/config.h +++ /dev/null @@ -1,17 +0,0 @@ -/* file : odb/oracle/details/build2/config.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -/* Static configuration file for the build2 build. The installed case - (when LIBODB_ORACLE_BUILD2 is not necessarily defined) is the only - reason we have it. */ - -#ifndef ODB_ORACLE_DETAILS_CONFIG_H -#define ODB_ORACLE_DETAILS_CONFIG_H - -/* Define LIBODB_ORACLE_BUILD2 for the installed case. */ -#ifndef LIBODB_ORACLE_BUILD2 -# define LIBODB_ORACLE_BUILD2 -#endif - -#endif /* ODB_ORACLE_DETAILS_CONFIG_H */ diff --git a/libodb-oracle/odb/oracle/details/config-vc.h b/libodb-oracle/odb/oracle/details/config-vc.h deleted file mode 100644 index 8036f07..0000000 --- a/libodb-oracle/odb/oracle/details/config-vc.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/oracle/details/config-vc.h - * license : ODB NCUEL; see accompanying LICENSE file - */ - -/* Dummy configuration file for Windows/VC++. */ diff --git a/libodb-oracle/odb/oracle/details/config.h.in b/libodb-oracle/odb/oracle/details/config.h.in deleted file mode 100644 index 3624466..0000000 --- a/libodb-oracle/odb/oracle/details/config.h.in +++ /dev/null @@ -1,12 +0,0 @@ -/* file : odb/oracle/details/config.h.in - * license : ODB NCUEL; see accompanying LICENSE file - */ - -/* This file is automatically processed by configure. */ - -#ifndef ODB_ORACLE_DETAILS_CONFIG_H -#define ODB_ORACLE_DETAILS_CONFIG_H - -#undef LIBODB_ORACLE_STATIC_LIB - -#endif /* ODB_ORACLE_DETAILS_CONFIG_H */ diff --git a/libodb-oracle/odb/oracle/details/config.hxx b/libodb-oracle/odb/oracle/details/config.hxx index 89f715b..a9330a4 100644 --- a/libodb-oracle/odb/oracle/details/config.hxx +++ b/libodb-oracle/odb/oracle/details/config.hxx @@ -8,12 +8,6 @@ #ifdef ODB_COMPILER # error libodb-oracle header included in odb-compiled header -#elif !defined(LIBODB_ORACLE_BUILD2) -# ifdef _MSC_VER -# include -# else -# include -# endif #endif // no post diff --git a/libodb-oracle/odb/oracle/details/export.hxx b/libodb-oracle/odb/oracle/details/export.hxx index 7a7aea5..788948a 100644 --- a/libodb-oracle/odb/oracle/details/export.hxx +++ b/libodb-oracle/odb/oracle/details/export.hxx @@ -6,7 +6,11 @@ #include -#include +// Note: do this check directly instead of including config.hxx. +// +#ifdef ODB_COMPILER +# error libodb-oracle header included in odb-compiled header +#endif // Normally we don't export class templates (but do complete specializations), // inline functions, and classes with only inline member functions. Exporting @@ -16,8 +20,6 @@ // used before their inline definition. The workaround is to reorder code. In // the end it's all trial and error. -#ifdef LIBODB_ORACLE_BUILD2 - #if defined(LIBODB_ORACLE_STATIC) // Using static. # define LIBODB_ORACLE_EXPORT #elif defined(LIBODB_ORACLE_STATIC_BUILD) // Building static. @@ -43,36 +45,6 @@ # define LIBODB_ORACLE_EXPORT // Using static or shared. #endif -#else // LIBODB_ORACLE_BUILD2 - -#ifdef LIBODB_ORACLE_STATIC_LIB -# define LIBODB_ORACLE_EXPORT -#else -# ifdef _WIN32 -# ifdef _MSC_VER -# ifdef LIBODB_ORACLE_DYNAMIC_LIB -# define LIBODB_ORACLE_EXPORT __declspec(dllexport) -# else -# define LIBODB_ORACLE_EXPORT __declspec(dllimport) -# endif -# else -# ifdef LIBODB_ORACLE_DYNAMIC_LIB -# ifdef DLL_EXPORT -# define LIBODB_ORACLE_EXPORT __declspec(dllexport) -# else -# define LIBODB_ORACLE_EXPORT -# endif -# else -# define LIBODB_ORACLE_EXPORT __declspec(dllimport) -# endif -# endif -# else -# define LIBODB_ORACLE_EXPORT -# endif -#endif - -#endif // LIBODB_ORACLE_BUILD2 - #include #endif // ODB_ORACLE_DETAILS_EXPORT_HXX diff --git a/libodb-pgsql/odb/pgsql/buildfile b/libodb-pgsql/odb/pgsql/buildfile index 2d264d8..57d38f0 100644 --- a/libodb-pgsql/odb/pgsql/buildfile +++ b/libodb-pgsql/odb/pgsql/buildfile @@ -9,7 +9,6 @@ import imp_libs = libpq%lib{pq} lib{odb-pgsql}: {hxx ixx txx cxx}{* -version} {hxx}{version} \ details/{hxx ixx txx cxx}{* -options} \ - details/build2/{h}{*} \ $imp_libs $int_libs # Include the generated version header into the distribution (so that we don't @@ -25,7 +24,7 @@ hxx{version}: # Build options. # -cxx.poptions =+ "-I$out_root" "-I$src_root" -DLIBODB_PGSQL_BUILD2 +cxx.poptions =+ "-I$out_root" "-I$src_root" obja{*}: cxx.poptions += -DLIBODB_PGSQL_STATIC_BUILD objs{*}: cxx.poptions += -DLIBODB_PGSQL_SHARED_BUILD @@ -34,7 +33,7 @@ objs{*}: cxx.poptions += -DLIBODB_PGSQL_SHARED_BUILD # lib{odb-pgsql}: { - cxx.export.poptions = "-I$out_root" "-I$src_root" -DLIBODB_PGSQL_BUILD2 + cxx.export.poptions = "-I$out_root" "-I$src_root" cxx.export.libs = $int_libs } @@ -131,19 +130,3 @@ install_include = [dir_path] include/odb/pgsql/ install = $install_include install.subdirs = true } - -details/build2/ -{ - h{*}: install = false - - if ($cxx.target.system == 'win32-msvc') - { - h{config-vc}@./: install = $install_include/details/ - h{config-vc-stub}@./: install = $install_include/details/build2/config-vc.h - } - else - { - h{config}@./: install = $install_include/details/ - h{config-stub}@./: install = $install_include/details/build2/config.h - } -} diff --git a/libodb-pgsql/odb/pgsql/details/build2/config-stub.h b/libodb-pgsql/odb/pgsql/details/build2/config-stub.h deleted file mode 100644 index 00c5940..0000000 --- a/libodb-pgsql/odb/pgsql/details/build2/config-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/pgsql/details/build2/config-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-pgsql/odb/pgsql/details/build2/config-vc-stub.h b/libodb-pgsql/odb/pgsql/details/build2/config-vc-stub.h deleted file mode 100644 index 473cd96..0000000 --- a/libodb-pgsql/odb/pgsql/details/build2/config-vc-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/pgsql/details/build2/config-vc-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-pgsql/odb/pgsql/details/build2/config-vc.h b/libodb-pgsql/odb/pgsql/details/build2/config-vc.h deleted file mode 100644 index e9d9ade..0000000 --- a/libodb-pgsql/odb/pgsql/details/build2/config-vc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* file : odb/pgsql/details/build2/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Configuration file for Windows/VC++ for the build2 build. */ - -#ifndef ODB_PGSQL_DETAILS_CONFIG_VC_H -#define ODB_PGSQL_DETAILS_CONFIG_VC_H - -/* Define LIBODB_PGSQL_BUILD2 for the installed case. */ -#ifndef LIBODB_PGSQL_BUILD2 -# define LIBODB_PGSQL_BUILD2 -#endif - -#endif /* ODB_PGSQL_DETAILS_CONFIG_VC_H */ diff --git a/libodb-pgsql/odb/pgsql/details/build2/config.h b/libodb-pgsql/odb/pgsql/details/build2/config.h deleted file mode 100644 index b2a81b5..0000000 --- a/libodb-pgsql/odb/pgsql/details/build2/config.h +++ /dev/null @@ -1,17 +0,0 @@ -/* file : odb/pgsql/details/build2/config.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Static configuration file for the build2 build. The installed case - (when LIBODB_PGSQL_BUILD2 is not necessarily defined) is the only - reason we have it. */ - -#ifndef ODB_PGSQL_DETAILS_CONFIG_H -#define ODB_PGSQL_DETAILS_CONFIG_H - -/* Define LIBODB_PGSQL_BUILD2 for the installed case. */ -#ifndef LIBODB_PGSQL_BUILD2 -# define LIBODB_PGSQL_BUILD2 -#endif - -#endif /* ODB_PGSQL_DETAILS_CONFIG_H */ diff --git a/libodb-pgsql/odb/pgsql/details/config-vc.h b/libodb-pgsql/odb/pgsql/details/config-vc.h deleted file mode 100644 index 77a0be5..0000000 --- a/libodb-pgsql/odb/pgsql/details/config-vc.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/pgsql/details/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Dummy configuration file for Windows/VC++. */ diff --git a/libodb-pgsql/odb/pgsql/details/config.h.in b/libodb-pgsql/odb/pgsql/details/config.h.in deleted file mode 100644 index 889023c..0000000 --- a/libodb-pgsql/odb/pgsql/details/config.h.in +++ /dev/null @@ -1,12 +0,0 @@ -/* file : odb/pgsql/details/config.h.in - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* This file is automatically processed by configure. */ - -#ifndef ODB_PGSQL_DETAILS_CONFIG_H -#define ODB_PGSQL_DETAILS_CONFIG_H - -#undef LIBODB_PGSQL_STATIC_LIB - -#endif /* ODB_PGSQL_DETAILS_CONFIG_H */ diff --git a/libodb-pgsql/odb/pgsql/details/config.hxx b/libodb-pgsql/odb/pgsql/details/config.hxx index 1340622..5bed468 100644 --- a/libodb-pgsql/odb/pgsql/details/config.hxx +++ b/libodb-pgsql/odb/pgsql/details/config.hxx @@ -8,12 +8,6 @@ #ifdef ODB_COMPILER # error libodb-pgsql header included in odb-compiled header -#elif !defined(LIBODB_PGSQL_BUILD2) -# ifdef _MSC_VER -# include -# else -# include -# endif #endif // no post diff --git a/libodb-pgsql/odb/pgsql/details/export.hxx b/libodb-pgsql/odb/pgsql/details/export.hxx index 81ff6a0..73adc43 100644 --- a/libodb-pgsql/odb/pgsql/details/export.hxx +++ b/libodb-pgsql/odb/pgsql/details/export.hxx @@ -6,7 +6,11 @@ #include -#include +// Note: do this check directly instead of including config.hxx. +// +#ifdef ODB_COMPILER +# error libodb-pgsql header included in odb-compiled header +#endif // Normally we don't export class templates (but do complete specializations), // inline functions, and classes with only inline member functions. Exporting @@ -16,8 +20,6 @@ // used before their inline definition. The workaround is to reorder code. In // the end it's all trial and error. -#ifdef LIBODB_PGSQL_BUILD2 - #if defined(LIBODB_PGSQL_STATIC) // Using static. # define LIBODB_PGSQL_EXPORT #elif defined(LIBODB_PGSQL_STATIC_BUILD) // Building static. @@ -43,36 +45,6 @@ # define LIBODB_PGSQL_EXPORT // Using static or shared. #endif -#else // LIBODB_PGSQL_BUILD2 - -#ifdef LIBODB_PGSQL_STATIC_LIB -# define LIBODB_PGSQL_EXPORT -#else -# ifdef _WIN32 -# ifdef _MSC_VER -# ifdef LIBODB_PGSQL_DYNAMIC_LIB -# define LIBODB_PGSQL_EXPORT __declspec(dllexport) -# else -# define LIBODB_PGSQL_EXPORT __declspec(dllimport) -# endif -# else -# ifdef LIBODB_PGSQL_DYNAMIC_LIB -# ifdef DLL_EXPORT -# define LIBODB_PGSQL_EXPORT __declspec(dllexport) -# else -# define LIBODB_PGSQL_EXPORT -# endif -# else -# define LIBODB_PGSQL_EXPORT __declspec(dllimport) -# endif -# endif -# else -# define LIBODB_PGSQL_EXPORT -# endif -#endif - -#endif // LIBODB_PGSQL_BUILD2 - #include #endif // ODB_PGSQL_DETAILS_EXPORT_HXX diff --git a/libodb-qt/odb/qt/buildfile b/libodb-qt/odb/qt/buildfile index 98afecd..7fb051b 100644 --- a/libodb-qt/odb/qt/buildfile +++ b/libodb-qt/odb/qt/buildfile @@ -21,7 +21,6 @@ imp_libs = lib{odb-qt}: {hxx ixx txx cxx}{** -version} {hxx}{version} \ - details/build2/{h}{*} \ options{**} ../options{qt} \ $imp_libs $int_libs @@ -38,7 +37,7 @@ # Build options. # - cxx.poptions =+ "-I$out_root" "-I$src_root" -DLIBODB_QT_BUILD2 + cxx.poptions =+ "-I$out_root" "-I$src_root" obja{*}: cxx.poptions += -DLIBODB_QT_STATIC_BUILD objs{*}: cxx.poptions += -DLIBODB_QT_SHARED_BUILD @@ -47,7 +46,7 @@ # lib{odb-qt}: { - cxx.export.poptions = "-I$out_root" "-I$src_root" -DLIBODB_QT_BUILD2 + cxx.export.poptions = "-I$out_root" "-I$src_root" cxx.export.libs = $int_libs } @@ -62,25 +61,5 @@ lib{odb-qt}: bin.lib.version = @"-$version.project_id" else lib{odb-qt}: bin.lib.version = @"-$version.major.$version.minor" - - # Installation tweaks. - # - install_include = [dir_path] include/odb/qt/ - - details/build2/ - { - h{*}: install = false - - if ($cxx.target.system == 'win32-msvc') - { - h{config-vc}@./: install = $install_include/details/ - h{config-vc-stub}@./: install = $install_include/details/build2/config-vc.h - } - else - { - h{config}@./: install = $install_include/details/ - h{config-stub}@./: install = $install_include/details/build2/config.h - } - } } } diff --git a/libodb-qt/odb/qt/details/build2/config-stub.h b/libodb-qt/odb/qt/details/build2/config-stub.h deleted file mode 100644 index fbb2971..0000000 --- a/libodb-qt/odb/qt/details/build2/config-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/qt/details/build2/config-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-qt/odb/qt/details/build2/config-vc-stub.h b/libodb-qt/odb/qt/details/build2/config-vc-stub.h deleted file mode 100644 index e6a412d..0000000 --- a/libodb-qt/odb/qt/details/build2/config-vc-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/qt/details/build2/config-vc-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-qt/odb/qt/details/build2/config-vc.h b/libodb-qt/odb/qt/details/build2/config-vc.h deleted file mode 100644 index 36113ce..0000000 --- a/libodb-qt/odb/qt/details/build2/config-vc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* file : odb/qt/details/build2/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Configuration file for Windows/VC++ for the build2 build. */ - -#ifndef ODB_QT_DETAILS_CONFIG_VC_H -#define ODB_QT_DETAILS_CONFIG_VC_H - -/* Define LIBODB_QT_BUILD2 for the installed case. */ -#ifndef LIBODB_QT_BUILD2 -# define LIBODB_QT_BUILD2 -#endif - -#endif /* ODB_QT_DETAILS_CONFIG_VC_H */ diff --git a/libodb-qt/odb/qt/details/build2/config.h b/libodb-qt/odb/qt/details/build2/config.h deleted file mode 100644 index 12d168f..0000000 --- a/libodb-qt/odb/qt/details/build2/config.h +++ /dev/null @@ -1,17 +0,0 @@ -/* file : odb/qt/details/build2/config.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Static configuration file for the build2 build. The installed case - (when LIBODB_QT_BUILD2 is not necessarily defined) is the only - reason we have it. */ - -#ifndef ODB_QT_DETAILS_CONFIG_H -#define ODB_QT_DETAILS_CONFIG_H - -/* Define LIBODB_QT_BUILD2 for the installed case. */ -#ifndef LIBODB_QT_BUILD2 -# define LIBODB_QT_BUILD2 -#endif - -#endif /* ODB_QT_DETAILS_CONFIG_H */ diff --git a/libodb-qt/odb/qt/details/config-vc.h b/libodb-qt/odb/qt/details/config-vc.h deleted file mode 100644 index 6718a07..0000000 --- a/libodb-qt/odb/qt/details/config-vc.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/qt/details/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Dummy configuration file for Windows/VC++. */ diff --git a/libodb-qt/odb/qt/details/config.h.in b/libodb-qt/odb/qt/details/config.h.in deleted file mode 100644 index a0c3989..0000000 --- a/libodb-qt/odb/qt/details/config.h.in +++ /dev/null @@ -1,12 +0,0 @@ -/* file : odb/qt/details/config.h.in - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* This file is automatically processed by configure. */ - -#ifndef ODB_QT_DETAILS_CONFIG_H -#define ODB_QT_DETAILS_CONFIG_H - -#undef LIBODB_QT_STATIC_LIB - -#endif /* ODB_QT_DETAILS_CONFIG_H */ diff --git a/libodb-qt/odb/qt/details/config.hxx b/libodb-qt/odb/qt/details/config.hxx index 9077380..01a4eb5 100644 --- a/libodb-qt/odb/qt/details/config.hxx +++ b/libodb-qt/odb/qt/details/config.hxx @@ -24,13 +24,7 @@ # define __PIC__ # endif # endif -# define LIBODB_QT_STATIC_LIB -#elif !defined(LIBODB_QT_BUILD2) -# ifdef _MSC_VER -# include -# else -# include -# endif +# define LIBODB_QT_STATIC #endif // no post diff --git a/libodb-qt/odb/qt/details/export.hxx b/libodb-qt/odb/qt/details/export.hxx index 4c0097f..f38d0ee 100644 --- a/libodb-qt/odb/qt/details/export.hxx +++ b/libodb-qt/odb/qt/details/export.hxx @@ -6,7 +6,7 @@ #include -#include +#include // LIBODB_QT_STATIC if ODB_COMPILER // Normally we don't export class templates (but do complete specializations), // inline functions, and classes with only inline member functions. Exporting @@ -16,8 +16,6 @@ // used before their inline definition. The workaround is to reorder code. In // the end it's all trial and error. -#ifdef LIBODB_QT_BUILD2 - #if defined(LIBODB_QT_STATIC) // Using static. # define LIBODB_QT_EXPORT #elif defined(LIBODB_QT_STATIC_BUILD) // Building static. @@ -43,36 +41,6 @@ # define LIBODB_QT_EXPORT // Using static or shared. #endif -#else // LIBODB_QT_BUILD2 - -#ifdef LIBODB_QT_STATIC_LIB -# define LIBODB_QT_EXPORT -#else -# ifdef _WIN32 -# ifdef _MSC_VER -# ifdef LIBODB_QT_DYNAMIC_LIB -# define LIBODB_QT_EXPORT __declspec(dllexport) -# else -# define LIBODB_QT_EXPORT __declspec(dllimport) -# endif -# else -# ifdef LIBODB_QT_DYNAMIC_LIB -# ifdef DLL_EXPORT -# define LIBODB_QT_EXPORT __declspec(dllexport) -# else -# define LIBODB_QT_EXPORT -# endif -# else -# define LIBODB_QT_EXPORT __declspec(dllimport) -# endif -# endif -# else -# define LIBODB_QT_EXPORT -# endif -#endif - -#endif // LIBODB_QT_BUILD2 - #include #endif // ODB_QT_DETAILS_EXPORT_HXX diff --git a/libodb-sqlite/odb/sqlite/buildfile b/libodb-sqlite/odb/sqlite/buildfile index 22bca96..69d2425 100644 --- a/libodb-sqlite/odb/sqlite/buildfile +++ b/libodb-sqlite/odb/sqlite/buildfile @@ -9,7 +9,6 @@ import int_libs += libsqlite3%lib{sqlite3} lib{odb-sqlite}: {hxx ixx txx cxx}{* -version} {hxx}{version} \ details/{hxx ixx txx cxx}{* -options} \ - details/build2/{h}{*} \ $int_libs # Include the generated version header into the distribution (so that we don't @@ -25,7 +24,7 @@ hxx{version}: # Build options. # -cxx.poptions =+ "-I$out_root" "-I$src_root" -DLIBODB_SQLITE_BUILD2 +cxx.poptions =+ "-I$out_root" "-I$src_root" obja{*}: cxx.poptions += -DLIBODB_SQLITE_STATIC_BUILD objs{*}: cxx.poptions += -DLIBODB_SQLITE_SHARED_BUILD @@ -34,7 +33,7 @@ objs{*}: cxx.poptions += -DLIBODB_SQLITE_SHARED_BUILD # lib{odb-sqlite}: { - cxx.export.poptions = "-I$out_root" "-I$src_root" -DLIBODB_SQLITE_BUILD2 + cxx.export.poptions = "-I$out_root" "-I$src_root" cxx.export.libs = $int_libs } @@ -131,19 +130,3 @@ install_include = [dir_path] include/odb/sqlite/ install = $install_include install.subdirs = true } - -details/build2/ -{ - h{*}: install = false - - if ($cxx.target.system == 'win32-msvc') - { - h{config-vc}@./: install = $install_include/details/ - h{config-vc-stub}@./: install = $install_include/details/build2/config-vc.h - } - else - { - h{config}@./: install = $install_include/details/ - h{config-stub}@./: install = $install_include/details/build2/config.h - } -} diff --git a/libodb-sqlite/odb/sqlite/details/build2/config-stub.h b/libodb-sqlite/odb/sqlite/details/build2/config-stub.h deleted file mode 100644 index 34ba8ff..0000000 --- a/libodb-sqlite/odb/sqlite/details/build2/config-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/sqlite/details/build2/config-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-sqlite/odb/sqlite/details/build2/config-vc-stub.h b/libodb-sqlite/odb/sqlite/details/build2/config-vc-stub.h deleted file mode 100644 index 70e3e93..0000000 --- a/libodb-sqlite/odb/sqlite/details/build2/config-vc-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/sqlite/details/build2/config-vc-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb-sqlite/odb/sqlite/details/build2/config-vc.h b/libodb-sqlite/odb/sqlite/details/build2/config-vc.h deleted file mode 100644 index 75ce442..0000000 --- a/libodb-sqlite/odb/sqlite/details/build2/config-vc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* file : odb/sqlite/details/build2/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Configuration file for Windows/VC++ for the build2 build. */ - -#ifndef ODB_SQLITE_DETAILS_CONFIG_VC_H -#define ODB_SQLITE_DETAILS_CONFIG_VC_H - -/* Define LIBODB_SQLITE_BUILD2 for the installed case. */ -#ifndef LIBODB_SQLITE_BUILD2 -# define LIBODB_SQLITE_BUILD2 -#endif - -#endif /* ODB_SQLITE_DETAILS_CONFIG_VC_H */ diff --git a/libodb-sqlite/odb/sqlite/details/build2/config.h b/libodb-sqlite/odb/sqlite/details/build2/config.h deleted file mode 100644 index b4a1a1f..0000000 --- a/libodb-sqlite/odb/sqlite/details/build2/config.h +++ /dev/null @@ -1,17 +0,0 @@ -/* file : odb/sqlite/details/build2/config.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Static configuration file for the build2 build. The installed case - (when LIBODB_SQLITE_BUILD2 is not necessarily defined) is the only - reason we have it. */ - -#ifndef ODB_SQLITE_DETAILS_CONFIG_H -#define ODB_SQLITE_DETAILS_CONFIG_H - -/* Define LIBODB_SQLITE_BUILD2 for the installed case. */ -#ifndef LIBODB_SQLITE_BUILD2 -# define LIBODB_SQLITE_BUILD2 -#endif - -#endif /* ODB_SQLITE_DETAILS_CONFIG_H */ diff --git a/libodb-sqlite/odb/sqlite/details/config-vc.h b/libodb-sqlite/odb/sqlite/details/config-vc.h deleted file mode 100644 index f42c2a0..0000000 --- a/libodb-sqlite/odb/sqlite/details/config-vc.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/sqlite/details/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Dummy configuration file for Windows/VC++. */ diff --git a/libodb-sqlite/odb/sqlite/details/config.h.in b/libodb-sqlite/odb/sqlite/details/config.h.in deleted file mode 100644 index a223ecb..0000000 --- a/libodb-sqlite/odb/sqlite/details/config.h.in +++ /dev/null @@ -1,14 +0,0 @@ -/* file : odb/sqlite/details/config.h.in - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* This file is automatically processed by configure. */ - -#ifndef ODB_SQLITE_DETAILS_CONFIG_H -#define ODB_SQLITE_DETAILS_CONFIG_H - -#undef LIBODB_SQLITE_STATIC_LIB -#undef LIBODB_SQLITE_HAVE_UNLOCK_NOTIFY -#undef LIBODB_SQLITE_HAVE_COLUMN_METADATA - -#endif /* ODB_SQLITE_DETAILS_CONFIG_H */ diff --git a/libodb-sqlite/odb/sqlite/details/config.hxx b/libodb-sqlite/odb/sqlite/details/config.hxx index 4f1c5ce..98f4bca 100644 --- a/libodb-sqlite/odb/sqlite/details/config.hxx +++ b/libodb-sqlite/odb/sqlite/details/config.hxx @@ -8,26 +8,16 @@ #ifdef ODB_COMPILER # error libodb-sqlite header included in odb-compiled header -#elif !defined(LIBODB_SQLITE_BUILD2) -# ifdef _MSC_VER -# include -# else -# include -# endif #endif -// LIBODB_SQLITE_BUILD2 macro can be defined either by the buildfile or by the -// included odb/sqlite/details/config*.h (see above). -// -#ifdef LIBODB_SQLITE_BUILD2 -# include +#include -# if SQLITE_VERSION_NUMBER >= 3006012 -# define LIBODB_SQLITE_HAVE_UNLOCK_NOTIFY 1 -# endif -# define LIBODB_SQLITE_HAVE_COLUMN_METADATA 1 +#if SQLITE_VERSION_NUMBER >= 3006012 +# define LIBODB_SQLITE_HAVE_UNLOCK_NOTIFY 1 #endif +#define LIBODB_SQLITE_HAVE_COLUMN_METADATA 1 + // no post #endif // ODB_SQLITE_DETAILS_CONFIG_HXX diff --git a/libodb-sqlite/odb/sqlite/details/export.hxx b/libodb-sqlite/odb/sqlite/details/export.hxx index c0903ae..639db2a 100644 --- a/libodb-sqlite/odb/sqlite/details/export.hxx +++ b/libodb-sqlite/odb/sqlite/details/export.hxx @@ -6,14 +6,10 @@ #include +// Note: do this check directly instead of including config.hxx. +// #ifdef ODB_COMPILER # error libodb-sqlite header included in odb-compiled header -#elif !defined(LIBODB_SQLITE_BUILD2) -# ifdef _MSC_VER -# include -# else -# include -# endif #endif // Normally we don't export class templates (but do complete specializations), @@ -24,8 +20,6 @@ // used before their inline definition. The workaround is to reorder code. In // the end it's all trial and error. -#ifdef LIBODB_SQLITE_BUILD2 - #if defined(LIBODB_SQLITE_STATIC) // Using static. # define LIBODB_SQLITE_EXPORT #elif defined(LIBODB_SQLITE_STATIC_BUILD) // Building static. @@ -51,36 +45,6 @@ # define LIBODB_SQLITE_EXPORT // Using static or shared. #endif -#else // LIBODB_SQLITE_BUILD2 - -#ifdef LIBODB_SQLITE_STATIC_LIB -# define LIBODB_SQLITE_EXPORT -#else -# ifdef _WIN32 -# ifdef _MSC_VER -# ifdef LIBODB_SQLITE_DYNAMIC_LIB -# define LIBODB_SQLITE_EXPORT __declspec(dllexport) -# else -# define LIBODB_SQLITE_EXPORT __declspec(dllimport) -# endif -# else -# ifdef LIBODB_SQLITE_DYNAMIC_LIB -# ifdef DLL_EXPORT -# define LIBODB_SQLITE_EXPORT __declspec(dllexport) -# else -# define LIBODB_SQLITE_EXPORT -# endif -# else -# define LIBODB_SQLITE_EXPORT __declspec(dllimport) -# endif -# endif -# else -# define LIBODB_SQLITE_EXPORT -# endif -#endif - -#endif // LIBODB_SQLITE_BUILD2 - #include #endif // ODB_SQLITE_DETAILS_EXPORT_HXX diff --git a/libodb/odb/buildfile b/libodb/odb/buildfile index 2df1874..903893f 100644 --- a/libodb/odb/buildfile +++ b/libodb/odb/buildfile @@ -5,7 +5,7 @@ lib{odb}: {hxx ixx txx cxx}{* -version} \ {hxx}{version} \ details/{hxx ixx txx}{*} \ details/{cxx}{* -condition -lock -mutex} \ - details/build2/{h}{*} \ + details/{h}{*} \ details/meta/{hxx}{*} \ details/shared-ptr/{hxx ixx txx cxx}{*} \ details/win32/{hxx}{windows} @@ -23,14 +23,14 @@ hxx{version}: # Build options. # -cxx.poptions =+ "-I$out_root" "-I$src_root" -DLIBODB_BUILD2 +cxx.poptions =+ "-I$out_root" "-I$src_root" obja{*}: cxx.poptions += -DLIBODB_STATIC_BUILD objs{*}: cxx.poptions += -DLIBODB_SHARED_BUILD # Export options. # -lib{odb}: cxx.export.poptions = "-I$out_root" "-I$src_root" -DLIBODB_BUILD2 +lib{odb}: cxx.export.poptions = "-I$out_root" "-I$src_root" liba{odb}: cxx.export.poptions += -DLIBODB_STATIC libs{odb}: cxx.export.poptions += -DLIBODB_SHARED @@ -49,7 +49,7 @@ else # install_include = [dir_path] include/odb/ -{hxx ixx txx}{*}: +{h hxx ixx txx}{*}: { install = $install_include install.subdirs = true @@ -58,18 +58,10 @@ install_include = [dir_path] include/odb/ if ($cxx.target.class != "windows") details/win32/*: install = false -details/build2/ +details/ { - h{*}: install = false - - if ($cxx.target.system == 'win32-msvc') - { - h{config-vc}@./: install = $install_include/details/ - h{config-vc-stub}@./: install = $install_include/details/build2/config-vc.h - } + if ($cxx.target.system != 'win32-msvc') + h{config-vc}@./: install = false else - { - h{config}@./: install = $install_include/details/ - h{config-stub}@./: install = $install_include/details/build2/config.h - } + h{config}@./: install = false } diff --git a/libodb/odb/details/build2/config-stub.h b/libodb/odb/details/build2/config-stub.h deleted file mode 100644 index 83ea927..0000000 --- a/libodb/odb/details/build2/config-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/details/build2/config-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb/odb/details/build2/config-vc-stub.h b/libodb/odb/details/build2/config-vc-stub.h deleted file mode 100644 index e440e70..0000000 --- a/libodb/odb/details/build2/config-vc-stub.h +++ /dev/null @@ -1,5 +0,0 @@ -/* file : odb/details/build2/config-vc-stub.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -#include diff --git a/libodb/odb/details/build2/config-vc.h b/libodb/odb/details/build2/config-vc.h deleted file mode 100644 index 77ce106..0000000 --- a/libodb/odb/details/build2/config-vc.h +++ /dev/null @@ -1,23 +0,0 @@ -/* file : odb/details/build2/config-vc.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Configuration file for Windows/VC++ for the build2 build. */ - -#ifndef ODB_DETAILS_CONFIG_VC_H -#define ODB_DETAILS_CONFIG_VC_H - -/* Define LIBODB_BUILD2 for the installed case. */ -#ifndef LIBODB_BUILD2 -# define LIBODB_BUILD2 -#endif - -#ifndef ODB_THREADS_NONE -# if _MSC_VER >= 1900 -# define ODB_THREADS_CXX11 -# else -# error Unsupoprted MSVC version (no thread_local) -# endif -#endif - -#endif /* ODB_DETAILS_CONFIG_VC_H */ diff --git a/libodb/odb/details/build2/config.h b/libodb/odb/details/build2/config.h deleted file mode 100644 index ba434f4..0000000 --- a/libodb/odb/details/build2/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* file : odb/details/build2/config.h - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* Static configuration file for the build2 build. */ - -#ifndef ODB_DETAILS_CONFIG_H -#define ODB_DETAILS_CONFIG_H - -/* Define LIBODB_BUILD2 for the installed case. */ -#ifndef LIBODB_BUILD2 -# define LIBODB_BUILD2 -#endif - -#ifndef ODB_THREADS_NONE -# define ODB_THREADS_CXX11 -#endif - -#endif /* ODB_DETAILS_CONFIG_H */ diff --git a/libodb/odb/details/config-vc.h b/libodb/odb/details/config-vc.h index b1e38b2..7c4def0 100644 --- a/libodb/odb/details/config-vc.h +++ b/libodb/odb/details/config-vc.h @@ -2,12 +2,22 @@ * license : GNU GPL v2; see accompanying LICENSE file */ -/* Configuration file for Windows/VC++. */ +/* Configuration file for Windows/VC++ for the build2 build. + * + * Note that currently we only support ODB_THREADS_NONE and ODB_THREADS_CXX11 + * but could also support the _WIN32 variant with a bit of effort. + * + */ #ifndef ODB_DETAILS_CONFIG_VC_H #define ODB_DETAILS_CONFIG_VC_H -#define ODB_THREADS_WIN32 -#define ODB_THREADS_TLS_DECLSPEC +#ifndef ODB_THREADS_NONE +# if _MSC_VER >= 1900 +# define ODB_THREADS_CXX11 +# else +# error Unsupoprted MSVC version (no thread_local) +# endif +#endif #endif /* ODB_DETAILS_CONFIG_VC_H */ diff --git a/libodb/odb/details/config.h b/libodb/odb/details/config.h new file mode 100644 index 0000000..4ad9a8d --- /dev/null +++ b/libodb/odb/details/config.h @@ -0,0 +1,18 @@ +/* file : odb/details/config.h + * license : GNU GPL v2; see accompanying LICENSE file + */ + +/* Static configuration file for build2 build. + * + * Note that currently we only support ODB_THREADS_NONE and ODB_THREADS_CXX11 + * but could also support the _POSIX and _WIN32 variants with a bit of effort. + */ + +#ifndef ODB_DETAILS_CONFIG_H +#define ODB_DETAILS_CONFIG_H + +#ifndef ODB_THREADS_NONE +# define ODB_THREADS_CXX11 +#endif + +#endif /* ODB_DETAILS_CONFIG_H */ diff --git a/libodb/odb/details/config.h.in b/libodb/odb/details/config.h.in deleted file mode 100644 index 2396606..0000000 --- a/libodb/odb/details/config.h.in +++ /dev/null @@ -1,18 +0,0 @@ -/* file : odb/details/config.h.in - * license : GNU GPL v2; see accompanying LICENSE file - */ - -/* This file is automatically processed by configure. */ - -#ifndef ODB_DETAILS_CONFIG_H -#define ODB_DETAILS_CONFIG_H - -#undef ODB_THREADS_NONE -#undef ODB_THREADS_POSIX -#undef ODB_THREADS_WIN32 -#undef ODB_THREADS_TLS_KEYWORD -#undef ODB_THREADS_TLS_DECLSPEC - -#undef LIBODB_STATIC_LIB - -#endif /* ODB_DETAILS_CONFIG_H */ diff --git a/libodb/odb/details/config.hxx b/libodb/odb/details/config.hxx index a42dd69..3168109 100644 --- a/libodb/odb/details/config.hxx +++ b/libodb/odb/details/config.hxx @@ -62,13 +62,7 @@ // #ifdef ODB_COMPILER # define ODB_THREADS_NONE -# define LIBODB_STATIC_LIB -#elif defined(LIBODB_BUILD2) -# if defined(_MSC_VER) -# include -# else -# include -# endif +# define LIBODB_STATIC #elif defined(_MSC_VER) # include #else diff --git a/libodb/odb/details/export.hxx b/libodb/odb/details/export.hxx index 80fe342..2ddc104 100644 --- a/libodb/odb/details/export.hxx +++ b/libodb/odb/details/export.hxx @@ -6,7 +6,7 @@ #include -#include +#include // LIBODB_STATIC if ODB_COMPILER // Normally we don't export class templates (but do complete specializations), // inline functions, and classes with only inline member functions. Exporting @@ -16,8 +16,6 @@ // used before their inline definition. The workaround is to reorder code. In // the end it's all trial and error. -#ifdef LIBODB_BUILD2 - #if defined(LIBODB_STATIC) // Using static. # define LIBODB_EXPORT #elif defined(LIBODB_STATIC_BUILD) // Building static. @@ -43,36 +41,6 @@ # define LIBODB_EXPORT // Using static or shared. #endif -#else // LIBODB_BUILD2 - -#ifdef LIBODB_STATIC_LIB -# define LIBODB_EXPORT -#else -# ifdef _WIN32 -# ifdef _MSC_VER -# ifdef LIBODB_DYNAMIC_LIB -# define LIBODB_EXPORT __declspec(dllexport) -# else -# define LIBODB_EXPORT __declspec(dllimport) -# endif -# else -# ifdef LIBODB_DYNAMIC_LIB -# ifdef DLL_EXPORT -# define LIBODB_EXPORT __declspec(dllexport) -# else -# define LIBODB_EXPORT -# endif -# else -# define LIBODB_EXPORT __declspec(dllimport) -# endif -# endif -# else -# define LIBODB_EXPORT -# endif -#endif - -#endif // LIBODB_BUILD2 - #include #endif // ODB_DETAILS_EXPORT_HXX diff --git a/libodb/odb/details/win32/dll.cxx b/libodb/odb/details/win32/dll.cxx index 49b660c..3f674ba 100644 --- a/libodb/odb/details/win32/dll.cxx +++ b/libodb/odb/details/win32/dll.cxx @@ -1,12 +1,9 @@ // file : odb/details/win32/dll.cxx // license : GNU GPL v2; see accompanying LICENSE file -// If we are building a static library from VC++ (LIBODB_STATIC_LIB) or -// a static library from automake (!DLL_EXPORT), then omit DllMain. -// +// If we are building a static library then omit DllMain. -#if (defined(_MSC_VER) && defined(LIBODB_DYNAMIC_LIB)) || \ - (!defined(_MSC_VER) && defined(DLL_EXPORT)) +#ifdef LIBODB_SHARED_BUILD #include #include -- cgit v1.1