pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
gnatcoll-db: lint package, add shlib options handling, redesign build proc
Module Name: pkgsrc-wip
Committed By: Dmytro Kazankov <dkazankov%NetBSD.org@localhost>
Pushed By: dkazankov
Date: Tue May 20 06:17:10 2025 +0300
Changeset: 5dd3adadc622d159f99c025f149608f02072a889
Modified Files:
gnatcoll-db/COMMIT_MSG
gnatcoll-db/Makefile
gnatcoll-db/buildlink3.mk
gnatcoll-db/distinfo
gnatcoll-db/options.mk
Added Files:
gnatcoll-db/patches/patch-Makefile
Removed Files:
gnatcoll-db/PLIST
Log Message:
gnatcoll-db: lint package, add shlib options handling, redesign build proc
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=5dd3adadc622d159f99c025f149608f02072a889
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
gnatcoll-db/COMMIT_MSG | 2 +
gnatcoll-db/Makefile | 123 ++++--------------------------
gnatcoll-db/PLIST | 152 -------------------------------------
gnatcoll-db/buildlink3.mk | 7 +-
gnatcoll-db/distinfo | 1 +
gnatcoll-db/options.mk | 97 +++++++++++++----------
gnatcoll-db/patches/patch-Makefile | 111 +++++++++++++++++++++++++++
7 files changed, 189 insertions(+), 304 deletions(-)
diffs:
diff --git a/gnatcoll-db/COMMIT_MSG b/gnatcoll-db/COMMIT_MSG
index 3fc499e35d..b708a80ab7 100644
--- a/gnatcoll-db/COMMIT_MSG
+++ b/gnatcoll-db/COMMIT_MSG
@@ -1 +1,3 @@
+
+
GNATCOLL Db - database connectivity for Ada
diff --git a/gnatcoll-db/Makefile b/gnatcoll-db/Makefile
index d9a48ece44..b5585c1bf5 100644
--- a/gnatcoll-db/Makefile
+++ b/gnatcoll-db/Makefile
@@ -1,26 +1,28 @@
# $NetBSD: Makefile,v 1.0 2024/05/13 13:00:00 dkazankov Exp $
-PKGNAME= gnatcoll-db-25.0.0
DISTNAME= gnatcoll-db-${PKGVERSION_NOREV}
-CATEGORIES= devel
+PKGNAME= gnatcoll-db-25.0.0
+CATEGORIES= databases devel
MASTER_SITES= ${MASTER_SITE_GITHUB:=AdaCore/}
GITHUB_PROJECT= gnatcoll-db
GITHUB_TAG= v${PKGVERSION_NOREV}
+MAINTAINER= dkazankov%NetBSD.org@localhost
HOMEPAGE= https://github.com/AdaCore/gnatcoll-db
COMMENT= The GNAT Components Collection (GNATcoll) - Database packages
LICENSE= gnu-gpl-v3
USE_TOOLS+= gmake grep
-HAS_CONFIGURE= yes
-
CHECK_PIE_SKIP+= bin/*
USE_LANGUAGES= c ada
-
+# See xmlada package for rationale
GCC_REQD+= 13
+.include "../../mk/bsd.prefs.mk"
+.include "options.mk"
+
SUBST_CLASSES+= fixver
SUBST_STAGE.fixver= pre-configure
SUBST_FILES.fixver= version_information
@@ -31,114 +33,19 @@ GENERATE_PLIST+= \
cd ${DESTDIR}${PREFIX} && \
${FIND} bin include lib share \( -type f -or -type l \) -print | ${SORT};
-.include "../../mk/bsd.prefs.mk"
-
-.include "options.mk"
-
-CONFIG_SHELL_FLAGS+= prefix=${DESTDIR}${PREFIX} BUILD=PROD
-CONFIG_SHELL= ${MAKE_PROGRAM}
-CONFIGURE_SCRIPT= setup
-
-# Makefile in gnatcoll_db2ada directory can build and install
-# four different apps, but one at a time. So we need special
-# build and install process for this directory
+CONFIGURE_ARGS+= prefix=${DESTDIR}${PREFIX} BUILD=PROD BUILD_DIRS=${PKG_BUILD_DIRS:Q} \
+ DB_BACKENDS=${DB_BACKENDS:Q}
+MAKE_FLAGS+= BUILD_DIRS=${PKG_BUILD_DIRS:Q} DB_BACKENDS=${DB_BACKENDS:Q}
-do-build:
-.for _dir_ in ${BUILD_DIRS}
-. if ${_dir_} == "gnatcoll_db2ada"
-. if !empty(PKG_OPTIONS:Mgnatcoll_db2ada)
- ${RUN}${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${PKGSRC_SETENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_JOBS} \
- ${MAKE_FLAGS} ${BUILD_MAKE_FLAGS} DB_BACKEND=db \
- -f ${MAKE_FILE} \
- ${BUILD_TARGET}
-. endif
-. if !empty(PKG_OPTIONS:Mgnatcoll_postgres2ada)
- ${RUN}${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${PKGSRC_SETENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_JOBS} \
- ${MAKE_FLAGS} ${BUILD_MAKE_FLAGS} DB_BACKEND=postgres \
- -f ${MAKE_FILE} \
- ${BUILD_TARGET}
-. endif
-. if !empty(PKG_OPTIONS:Mgnatcoll_sqlite2ada)
- ${RUN}${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${PKGSRC_SETENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_JOBS} \
- ${MAKE_FLAGS} ${BUILD_MAKE_FLAGS} DB_BACKEND=sqlite \
- -f ${MAKE_FILE} \
- ${BUILD_TARGET}
-. endif
-. if !empty(PKG_OPTIONS:Mgnatcoll_all2ada)
+do-configure:
${RUN}${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${PKGSRC_SETENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_JOBS} \
- ${MAKE_FLAGS} ${BUILD_MAKE_FLAGS} DB_BACKEND=all \
- -f ${MAKE_FILE} \
- ${BUILD_TARGET}
-. endif
-. else
- ${RUN}${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${BUILD_MAKE_CMD} ${BUILD_TARGET}
-. endif
-.endfor
-
-do-install:
-.for _dir_ in ${INSTALL_DIRS}
-. if ${_dir_} == "gnatcoll_db2ada"
-. if !empty(PKG_OPTIONS:Mgnatcoll_db2ada)
- ${RUN} ${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${PKGSRC_SETENV} ${INSTALL_ENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_FLAGS} ${INSTALL_MAKE_FLAGS} DB_BACKEND=db \
- -f ${MAKE_FILE} ${INSTALL_TARGET}
-. endif
-. if !empty(PKG_OPTIONS:Mgnatcoll_postgres2ada)
- ${RUN} ${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${PKGSRC_SETENV} ${INSTALL_ENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_FLAGS} ${INSTALL_MAKE_FLAGS} DB_BACKEND=postgres \
- -f ${MAKE_FILE} ${INSTALL_TARGET}
-. endif
-. if !empty(PKG_OPTIONS:Mgnatcoll_sqlite2ada)
- ${RUN} ${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${PKGSRC_SETENV} ${INSTALL_ENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_FLAGS} ${INSTALL_MAKE_FLAGS} DB_BACKEND=sqlite \
- -f ${MAKE_FILE} ${INSTALL_TARGET}
-. endif
-. if !empty(PKG_OPTIONS:Mgnatcoll_all2ada)
- ${RUN} ${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${PKGSRC_SETENV} ${INSTALL_ENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_FLAGS} ${INSTALL_MAKE_FLAGS} DB_BACKEND=all \
- -f ${MAKE_FILE} ${INSTALL_TARGET}
-. endif
-. else
- ${RUN} ${_ULIMIT_CMD} \
- cd ${WRKSRC} && cd ${_dir_} && \
- ${PKGSRC_SETENV} ${INSTALL_ENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_FLAGS} ${INSTALL_MAKE_FLAGS} \
- -f ${MAKE_FILE} ${INSTALL_TARGET}
-. endif
-.endfor
-
-.include "../../lang/gcc13-gnat-libs/buildlink3.mk"
-.include "../../wip/gprbuild/buildlink3.mk"
+ cd ${WRKSRC} && \
+ ${PKGSRC_SETENV} ${CONFIGURE_ENV} \
+ ${MAKE_PROGRAM} ${CONFIGURE_ARGS} setup
-BUILDLINK_DEPMETHOD.xmlada= full
+.include "../../devel/gprbuild/buildlink3.mk"
.include "../../wip/xmlada/buildlink3.mk"
-
-BUILDLINK_DEPMETHOD.gprlib= full
.include "../../wip/gprlib/buildlink3.mk"
-
-BUILDLINK_DEPMETHOD.gnatcoll-core= full
.include "../../wip/gnatcoll-core/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/gnatcoll-db/PLIST b/gnatcoll-db/PLIST
deleted file mode 100644
index e776634455..0000000000
--- a/gnatcoll-db/PLIST
+++ /dev/null
@@ -1,152 +0,0 @@
-@comment $NetBSD: PLIST,v 1.0 2024/05/06 13:00:00 dkazankov Exp $
-bin/gnatcoll_all2ada
-bin/gnatcoll_db2ada
-bin/gnatcoll_postgres2ada
-bin/gnatcoll_sqlite2ada
-bin/gnatinspect
-include/gnatcoll_postgres/gnatcoll-sql-postgres-builder.adb
-include/gnatcoll_postgres/gnatcoll-sql-postgres-builder.ads
-include/gnatcoll_postgres/gnatcoll-sql-postgres-gnade.adb
-include/gnatcoll_postgres/gnatcoll-sql-postgres-gnade.ads
-include/gnatcoll_postgres/gnatcoll-sql-postgres.adb
-include/gnatcoll_postgres/gnatcoll-sql-postgres.ads
-include/gnatcoll_postgres/gnatcoll-sql-ranges.adb
-include/gnatcoll_postgres/gnatcoll-sql-ranges.ads
-include/gnatcoll_postgres/postgres_support.c
-include/gnatcoll_sql/gnatcoll-sql-exec-tasking.adb
-include/gnatcoll_sql/gnatcoll-sql-exec-tasking.ads
-include/gnatcoll_sql/gnatcoll-sql-exec.adb
-include/gnatcoll_sql/gnatcoll-sql-exec.ads
-include/gnatcoll_sql/gnatcoll-sql-exec_private.adb
-include/gnatcoll_sql/gnatcoll-sql-exec_private.ads
-include/gnatcoll_sql/gnatcoll-sql-inspect.adb
-include/gnatcoll_sql/gnatcoll-sql-inspect.ads
-include/gnatcoll_sql/gnatcoll-sql-orm-impl.adb
-include/gnatcoll_sql/gnatcoll-sql-orm-impl.ads
-include/gnatcoll_sql/gnatcoll-sql-orm.adb
-include/gnatcoll_sql/gnatcoll-sql-orm.ads
-include/gnatcoll_sql/gnatcoll-sql-sessions.adb
-include/gnatcoll_sql/gnatcoll-sql-sessions.ads
-include/gnatcoll_sql/gnatcoll-sql.adb
-include/gnatcoll_sql/gnatcoll-sql.ads
-include/gnatcoll_sql/gnatcoll-sql_fields.adb
-include/gnatcoll_sql/gnatcoll-sql_fields.ads
-include/gnatcoll_sql/gnatcoll-sql_impl.adb
-include/gnatcoll_sql/gnatcoll-sql_impl.ads
-include/gnatcoll_sqlite/gnatcoll-sql-sqlite-builder.adb
-include/gnatcoll_sqlite/gnatcoll-sql-sqlite-builder.ads
-include/gnatcoll_sqlite/gnatcoll-sql-sqlite-gnade.adb
-include/gnatcoll_sqlite/gnatcoll-sql-sqlite-gnade.ads
-include/gnatcoll_sqlite/gnatcoll-sql-sqlite.adb
-include/gnatcoll_sqlite/gnatcoll-sql-sqlite.ads
-include/gnatcoll_sqlite/shell.c
-include/gnatcoll_sqlite/sqlite3.c
-include/gnatcoll_sqlite/sqlite3.h
-include/gnatcoll_sqlite/sqlite3ext.h
-include/gnatcoll_xref/gnatcoll-xref-database.adb
-include/gnatcoll_xref/gnatcoll-xref-database.ads
-include/gnatcoll_xref/gnatcoll-xref-database_names.ads
-include/gnatcoll_xref/gnatcoll-xref.adb
-include/gnatcoll_xref/gnatcoll-xref.ads
-lib/gnatcoll_postgres.relocatable/gnatcoll-sql-postgres.ali
-lib/gnatcoll_postgres.relocatable/gnatcoll-sql-ranges.ali
-lib/gnatcoll_postgres.relocatable/libgnatcoll_postgres.so
-lib/gnatcoll_postgres.relocatable/libgnatcoll_postgres.so.25
-lib/gnatcoll_postgres.relocatable/libgnatcoll_postgres.so.25.0
-lib/gnatcoll_postgres.static-pic/gnatcoll-sql-postgres-builder.ali
-lib/gnatcoll_postgres.static-pic/gnatcoll-sql-postgres-gnade.ali
-lib/gnatcoll_postgres.static-pic/gnatcoll-sql-postgres.ali
-lib/gnatcoll_postgres.static-pic/gnatcoll-sql-ranges.ali
-lib/gnatcoll_postgres.static-pic/libgnatcoll_postgres.a
-lib/gnatcoll_postgres.static/gnatcoll-sql-postgres-builder.ali
-lib/gnatcoll_postgres.static/gnatcoll-sql-postgres-gnade.ali
-lib/gnatcoll_postgres.static/gnatcoll-sql-postgres.ali
-lib/gnatcoll_postgres.static/gnatcoll-sql-ranges.ali
-lib/gnatcoll_postgres.static/libgnatcoll_postgres.a
-lib/gnatcoll_sql.relocatable/gnatcoll-sql-exec-tasking.ali
-lib/gnatcoll_sql.relocatable/gnatcoll-sql-exec.ali
-lib/gnatcoll_sql.relocatable/gnatcoll-sql-exec_private.ali
-lib/gnatcoll_sql.relocatable/gnatcoll-sql-inspect.ali
-lib/gnatcoll_sql.relocatable/gnatcoll-sql-orm-impl.ali
-lib/gnatcoll_sql.relocatable/gnatcoll-sql-orm.ali
-lib/gnatcoll_sql.relocatable/gnatcoll-sql-sessions.ali
-lib/gnatcoll_sql.relocatable/gnatcoll-sql.ali
-lib/gnatcoll_sql.relocatable/gnatcoll-sql_fields.ali
-lib/gnatcoll_sql.relocatable/gnatcoll-sql_impl.ali
-lib/gnatcoll_sql.relocatable/libgnatcoll_sql.so
-lib/gnatcoll_sql.relocatable/libgnatcoll_sql.so.25
-lib/gnatcoll_sql.relocatable/libgnatcoll_sql.so.25.0
-lib/gnatcoll_sql.static-pic/gnatcoll-sql-exec-tasking.ali
-lib/gnatcoll_sql.static-pic/gnatcoll-sql-exec.ali
-lib/gnatcoll_sql.static-pic/gnatcoll-sql-exec_private.ali
-lib/gnatcoll_sql.static-pic/gnatcoll-sql-inspect.ali
-lib/gnatcoll_sql.static-pic/gnatcoll-sql-orm-impl.ali
-lib/gnatcoll_sql.static-pic/gnatcoll-sql-orm.ali
-lib/gnatcoll_sql.static-pic/gnatcoll-sql-sessions.ali
-lib/gnatcoll_sql.static-pic/gnatcoll-sql.ali
-lib/gnatcoll_sql.static-pic/gnatcoll-sql_fields.ali
-lib/gnatcoll_sql.static-pic/gnatcoll-sql_impl.ali
-lib/gnatcoll_sql.static-pic/libgnatcoll_sql.a
-lib/gnatcoll_sql.static/gnatcoll-sql-exec-tasking.ali
-lib/gnatcoll_sql.static/gnatcoll-sql-exec.ali
-lib/gnatcoll_sql.static/gnatcoll-sql-exec_private.ali
-lib/gnatcoll_sql.static/gnatcoll-sql-inspect.ali
-lib/gnatcoll_sql.static/gnatcoll-sql-orm-impl.ali
-lib/gnatcoll_sql.static/gnatcoll-sql-orm.ali
-lib/gnatcoll_sql.static/gnatcoll-sql-sessions.ali
-lib/gnatcoll_sql.static/gnatcoll-sql.ali
-lib/gnatcoll_sql.static/gnatcoll-sql_fields.ali
-lib/gnatcoll_sql.static/gnatcoll-sql_impl.ali
-lib/gnatcoll_sql.static/libgnatcoll_sql.a
-lib/gnatcoll_sqlite.relocatable/gnatcoll-sql-sqlite.ali
-lib/gnatcoll_sqlite.relocatable/libgnatcoll_sqlite.so
-lib/gnatcoll_sqlite.relocatable/libgnatcoll_sqlite.so.25
-lib/gnatcoll_sqlite.relocatable/libgnatcoll_sqlite.so.25.0
-lib/gnatcoll_sqlite.static-pic/gnatcoll-sql-sqlite-builder.ali
-lib/gnatcoll_sqlite.static-pic/gnatcoll-sql-sqlite-gnade.ali
-lib/gnatcoll_sqlite.static-pic/gnatcoll-sql-sqlite.ali
-lib/gnatcoll_sqlite.static-pic/libgnatcoll_sqlite.a
-lib/gnatcoll_sqlite.static/gnatcoll-sql-sqlite-builder.ali
-lib/gnatcoll_sqlite.static/gnatcoll-sql-sqlite-gnade.ali
-lib/gnatcoll_sqlite.static/gnatcoll-sql-sqlite.ali
-lib/gnatcoll_sqlite.static/libgnatcoll_sqlite.a
-lib/gnatcoll_xref.relocatable/gnatcoll-xref-database.ali
-lib/gnatcoll_xref.relocatable/gnatcoll-xref-database_names.ali
-lib/gnatcoll_xref.relocatable/gnatcoll-xref.ali
-lib/gnatcoll_xref.relocatable/libgnatcoll_xref.so
-lib/gnatcoll_xref.relocatable/libgnatcoll_xref.so.25
-lib/gnatcoll_xref.relocatable/libgnatcoll_xref.so.25.0
-lib/gnatcoll_xref.static-pic/gnatcoll-xref-database.ali
-lib/gnatcoll_xref.static-pic/gnatcoll-xref-database_names.ali
-lib/gnatcoll_xref.static-pic/gnatcoll-xref.ali
-lib/gnatcoll_xref.static-pic/libgnatcoll_xref.a
-lib/gnatcoll_xref.static/gnatcoll-xref-database.ali
-lib/gnatcoll_xref.static/gnatcoll-xref-database_names.ali
-lib/gnatcoll_xref.static/gnatcoll-xref.ali
-lib/gnatcoll_xref.static/libgnatcoll_xref.a
-lib/libgnatcoll_postgres.so
-lib/libgnatcoll_postgres.so.25
-lib/libgnatcoll_postgres.so.25.0
-lib/libgnatcoll_sql.so
-lib/libgnatcoll_sql.so.25
-lib/libgnatcoll_sql.so.25.0
-lib/libgnatcoll_sqlite.so
-lib/libgnatcoll_sqlite.so.25
-lib/libgnatcoll_sqlite.so.25.0
-lib/libgnatcoll_xref.so
-lib/libgnatcoll_xref.so.25
-lib/libgnatcoll_xref.so.25.0
-share/gnatcoll/dborm.py
-share/gpr/gnatcoll_postgres.gpr
-share/gpr/gnatcoll_sql.gpr
-share/gpr/gnatcoll_sqlite.gpr
-share/gpr/gnatcoll_xref.gpr
-share/gpr/manifests/gnatcoll_all2ada
-share/gpr/manifests/gnatcoll_db2ada
-share/gpr/manifests/gnatcoll_postgres
-share/gpr/manifests/gnatcoll_postgres2ada
-share/gpr/manifests/gnatcoll_sql
-share/gpr/manifests/gnatcoll_sqlite
-share/gpr/manifests/gnatcoll_sqlite2ada
-share/gpr/manifests/gnatcoll_xref
-share/gpr/manifests/gnatinspect
diff --git a/gnatcoll-db/buildlink3.mk b/gnatcoll-db/buildlink3.mk
index 5e86cc7407..b27b300158 100644
--- a/gnatcoll-db/buildlink3.mk
+++ b/gnatcoll-db/buildlink3.mk
@@ -6,13 +6,10 @@ BUILDLINK_TREE+= gnatcoll-db
GNATCOLL_DB_BUILDLINK3_MK:=
BUILDLINK_API_DEPENDS.gnatcoll-db+= gnatcoll-db>=24.0.0
-BUILDLINK_PKGSRCDIR.gnatcoll-db= ../../wip/gnatcoll-db
+BUILDLINK_ABI_DEPENDS.gnatcoll-db+= gnatcoll-db>=25.0.0
+BUILDLINK_PKGSRCDIR.gnatcoll-db?= ../../wip/gnatcoll-db
BUILDLINK_DEPMETHOD.gnatcoll-db?= build
-BUILDLINK_FILES.gnatcoll-db= include/gnatcoll_*/* lib/libgnatcoll* lib/gnatcoll_*/*
-BUILDLINK_FILES.gnatcoll-db+= share/gpr/manifests/gnatcoll_* share/gpr/gnatcoll_*.gpr
-BUILDLINK_FILES.gnatcoll-db+= bin/gnatcoll_*2ada bin/gnatinspect
-
BUILDLINK_CONTENTS_FILTER.gnatcoll-db= \
${EGREP} '(include/.*\.ads$$|lib/.*\.ali$$|lib/.*\.a$$|lib/libgnatcoll.*\.so.*$$|share/gpr/manifests/.*|share/gpr/.*\.gpr$$|bin/gnatcoll_.*2ada$$|bin/gnatinspect$$)'
diff --git a/gnatcoll-db/distinfo b/gnatcoll-db/distinfo
index 2061f8d0d1..ef933028f5 100644
--- a/gnatcoll-db/distinfo
+++ b/gnatcoll-db/distinfo
@@ -3,6 +3,7 @@ $NetBSD$
BLAKE2s (gnatcoll-db-25.0.0.tar.gz) = 644f89eca578ab538daf7c90317a89cfa4736632f141e2d7db5a413d39c0c297
SHA512 (gnatcoll-db-25.0.0.tar.gz) = 7cd37d33650a16fd72796adda375a62a6368c11b369209686194fe96ad72a8e49094076679824266f88aeb7b1bc592ac1be678fcfaad10b59c7e05f7dd512cf3
Size (gnatcoll-db-25.0.0.tar.gz) = 2688678 bytes
+SHA1 (patch-Makefile) = 8bd30cf6a9af34bc24529fc1f51fdc41ce72420c
SHA1 (patch-gnatcoll__db2ada_Makefile) = dbcec198253c682b952ecdbac4e839eb335c97ec
SHA1 (patch-gnatcoll__db2ada_gnatcoll__all2ada.gpr) = e6198437023047531952e4e2c785d84b310382b3
SHA1 (patch-gnatcoll__db2ada_gnatcoll__db2ada.gpr) = 4e14ba5302d45b5999e536071fddabebc8066711
diff --git a/gnatcoll-db/options.mk b/gnatcoll-db/options.mk
index 74db2047bb..468cea111f 100644
--- a/gnatcoll-db/options.mk
+++ b/gnatcoll-db/options.mk
@@ -1,63 +1,82 @@
# $NetBSD: options.mk,v 1.0 2024/05/13 15:00:00 dkazankov Exp $
-PKG_OPTIONS_VAR= PKG_OPTIONS.gnatcoll-db
-PKG_SUPPORTED_OPTIONS= gnatcoll_db2ada gnatcoll_postgres2ada gnatcoll_sqlite2ada gnatcoll_all2ada
-PKG_SUPPORTED_OPTIONS+= gnatinspect postgres sql sqlite xref
-PKG_SUGGESTED_OPTIONS= gnatcoll_db2ada gnatcoll_postgres2ada gnatcoll_sqlite2ada gnatcoll_all2ada
-PKG_SUGGESTED_OPTIONS+= gnatinspect postgres sql sqlite xref
+PKG_OPTIONS_VAR= PKG_OPTIONS.gnatcoll-db
+PKG_SUPPORTED_OPTIONS= gnatcoll-db2ada gnatcoll-postgres2ada gnatcoll-sqlite2ada gnatcoll-all2ada \
+ gnatcoll-gnatinspect gnatcoll-postgres gnatcoll-sql gnatcoll-sqlite gnatcoll-xref
+PKG_OPTIONS_OPTIONAL_GROUPS= shared-libs
+PKG_OPTIONS_GROUP.shared-libs= enable-shared-libs disable-shared-libs
+PKG_SUGGESTED_OPTIONS= gnatcoll-db2ada gnatcoll-postgres2ada gnatcoll-sqlite2ada gnatcoll-all2ada \
+ gnatcoll-gnatinspect gnatcoll-postgres gnatcoll-sql gnatcoll-sqlite gnatcoll-xref
.include "../../mk/bsd.fast.prefs.mk"
-
.include "../../mk/bsd.options.mk"
-CONFIGURE_DIRS=
-BUILD_DIRS=
-INSTALL_DIRS=
+.if !empty(PKG_OPTIONS:Menable-shared-libs)
+CONFIGURE_FLAGS+= ENABLE_SHARED=yes
+USE_GCC_RUNTIME= yes
+BUILDLINK_DEPMETHOD.xmlada= full
+BUILDLINK_DEPMETHOD.gprlib= full
+BUILDLINK_DEPMETHOD.gnatcoll-core= full
+.endif
+.if !empty(PKG_OPTIONS:Mdisable-shared-libs)
+CONFIGURE_FLAGS+= ENABLE_SHARED=no
+.endif
+.if empty(PKG_OPTIONS:Menable-shared-libs) && empty(PKG_OPTIONS:Mdisable-shared-libs)
+USE_GCC_RUNTIME= yes
+BUILDLINK_DEPMETHOD.xmlada= full
+BUILDLINK_DEPMETHOD.gprlib= full
+BUILDLINK_DEPMETHOD.gnatcoll-core= full
+.endif
# Build order is important
-
-.if !empty(PKG_OPTIONS:Msql)
-CONFIGURE_DIRS+= sql
-BUILD_DIRS+= sql
-INSTALL_DIRS+= sql
+.if !empty(PKG_OPTIONS:Mgnatcoll-sql)
+PKG_BUILD_DIRS+= sql
.endif
-.if !empty(PKG_OPTIONS:Msqlite)
+.if !empty(PKG_OPTIONS:Mgnatcoll-sqlite)
#. include "../../databases/sqlite3/buildlink3.mk"
-CONFIGURE_DIRS+= sqlite
-BUILD_DIRS+= sqlite
-INSTALL_DIRS+= sqlite
+PKG_BUILD_DIRS+= sqlite
.endif
-.if !empty(PKG_OPTIONS:Mpostgres)
-. include "../../wip/gnatcoll-bindings/buildlink3.mk"
-CONFIGURE_DIRS+= postgres
-BUILD_DIRS+= postgres
-INSTALL_DIRS+= postgres
+.if !empty(PKG_OPTIONS:Mgnatcoll-postgres)
+PKG_BUILD_DIRS+= postgres
.endif
-.if !empty(PKG_OPTIONS:Mxref)
-. include "../../wip/gnatcoll-bindings/buildlink3.mk"
-CONFIGURE_DIRS+= xref
-BUILD_DIRS+= xref
-INSTALL_DIRS+= xref
+.if !empty(PKG_OPTIONS:Mgnatcoll-xref)
+PKG_BUILD_DIRS+= xref
+.endif
+
+.if !empty(PKG_OPTIONS:Mgnatcoll-gnatinspect)
+PKG_BUILD_DIRS+= gnatinspect
.endif
-.if !empty(PKG_OPTIONS:Mgnatinspect)
+.if !empty(PKG_OPTIONS:Mgnatcoll-postgres) || !empty(PKG_OPTIONS:Mgnatcoll-xref) || \
+ !empty(PKG_OPTIONS:Mgnatcoll-gnatinspect)
. include "../../wip/gnatcoll-bindings/buildlink3.mk"
-CONFIGURE_DIRS+= gnatinspect
-BUILD_DIRS+= gnatinspect
-INSTALL_DIRS+= gnatinspect
.endif
-.if !empty(PKG_OPTIONS:Mgnatcoll_db2ada) || !empty(PKG_OPTIONS:Mgnatcoll_postgres2ada) || \
- !empty(PKG_OPTIONS:Mgnatcoll_sqlite2ada) || !empty(PKG_OPTIONS:Mgnatcoll_all2ada)
-CONFIGURE_DIRS+= gnatcoll_db2ada
-BUILD_DIRS+= gnatcoll_db2ada
-INSTALL_DIRS+= gnatcoll_db2ada
+.if !empty(PKG_OPTIONS:Mgnatcoll-db2ada) || !empty(PKG_OPTIONS:Mgnatcoll-postgres2ada) || \
+ !empty(PKG_OPTIONS:Mgnatcoll-sqlite2ada) || !empty(PKG_OPTIONS:Mgnatcoll-all2ada)
+PKG_BUILD_DIRS+= gnatcoll_db2ada
.endif
-.if !empty(PKG_OPTIONS:Mpostgres) || \
- !empty(PKG_OPTIONS:Mgnatcoll_postgres2ada) || !empty(PKG_OPTIONS:Mgnatcoll_all2ada)
+.if !empty(PKG_OPTIONS:Mgnatcoll-postgres) || \
+ !empty(PKG_OPTIONS:Mgnatcoll-postgres2ada) || !empty(PKG_OPTIONS:Mgnatcoll-all2ada)
. include "../../mk/pgsql.buildlink3.mk"
.endif
+
+.if !empty(PKG_OPTIONS:Mgnatcoll-db2ada)
+DB_BACKENDS+= db
+.endif
+
+.if !empty(PKG_OPTIONS:Mgnatcoll-postgres2ada)
+DB_BACKENDS+= postgres
+.endif
+
+.if !empty(PKG_OPTIONS:Mgnatcoll-sqlite2ada)
+DB_BACKENDS+= sqlite
+.endif
+
+.if !empty(PKG_OPTIONS:Mgnatcoll-all2ada)
+DB_BACKENDS+= all
+.endif
diff --git a/gnatcoll-db/patches/patch-Makefile b/gnatcoll-db/patches/patch-Makefile
new file mode 100644
index 0000000000..f0cb53f7b8
--- /dev/null
+++ b/gnatcoll-db/patches/patch-Makefile
@@ -0,0 +1,111 @@
+$NetBSD: patch-Makefile,v 1.1 2025/05/13 21:00:00 dkazankov Exp $
+
+Create single common Makefile to control all components.
+Makefile in gnatcoll_db2ada can build and install four different apps,
+but one at a time. So we need special build and install process for
+this directory.
+
+--- /dev/null
++++ Makefile
+@@ -0,0 +1,101 @@
++prefix ?= $(dir $(shell $(WHICH) gnatls))..
++ENABLE_SHARED ?= yes
++BUILD ?= PROD
++PROCESSORS ?= 0
++TARGET ?= $(shell gcc -dumpmachine)
++
++BUILD_DIRS ?= sql sqlite postgres xref gnatinspect gnatcoll_db2ada
++DB_BACKENDS ?= db postgres sqlite all
++
++NORMALIZED_TARGET := $(lastword $(subst :, ,$(shell gprconfig --config=ada --target=$(TARGET) --mi-show-compilers | grep ' 1 normalized_target:')))
++ifeq ($(NORMALIZED_TARGET),)
++ $(error No toolchain found for target "$(TARGET)")
++endif
++
++ifeq ($(ENABLE_SHARED), yes)
++ LIBRARY_TYPES=static,static-pic,relocatable
++else
++ LIBRARY_TYPES=static,static-pic
++endif
++
++# Used to pass extra options to GPRBUILD, like -d for instance
++GPRBUILD_OPTIONS=
++GPRINSTALL_OPTIONS=
++
++.PHONY: setup
++setup: $(BUILD_DIRS:%=setup-%)
++
++setup-%:
++ cd $* && \
++ make prefix=$(prefix) BUILD=$(BUILD) ENABLE_SHARED=$(ENABLE_SHARED) \
++ PROCESSORS=$(PROCESSORS) \
++ setup
++ cd ..
++
++all: build
++
++.PHONY: build $(BUILD_DIRS)
++build: $(BUILD_DIRS:%=build-%)
++
++build-gnatcoll_db2ada: $(DB_BACKENDS:%=build-db2ada-%)
++
++build-db2ada-%:
++ cd gnatcoll_db2ada && \
++ make GPRBUILD_OPTIONS="$(subst $$,\$$\$$,$(GPRBUILD_OPTIONS))" DB_BACKEND=$* all
++ cd ..
++
++build-%:
++ cd $* && \
++ make GPRBUILD_OPTIONS="$(subst $$,\$$\$$,$(GPRBUILD_OPTIONS))" all
++ cd ..
++
++.PHONY: install
++install: $(BUILD_DIRS:%=install-%)
++
++install-gnatcoll_db2ada: $(DB_BACKENDS:%=install-db2ada-%)
++
++install-db2ada-%:
++ cd gnatcoll_db2ada && \
++ make GPRINSTALL_OPTIONS='$(subst ','',$(GPRINSTALL_OPTIONS))' DB_BACKEND=$* install
++ cd ..
++
++install-%:
++ cd $* && \
++ make GPRINSTALL_OPTIONS='$(subst ','',$(GPRINSTALL_OPTIONS))' install
++ cd ..
++
++.PHONY: uninstall
++uninstall: $(BINDINGS:%=uninstall-%)
++
++uninstall-gnatcoll_db2ada: $(DB_BACKENDS:%=uninstall-db2ada-%)
++
++uninstall-db2ada-%:
++ cd gnatcoll_db2ada && \
++ make GPRINSTALL_OPTIONS='$(subst ','',$(GPRINSTALL_OPTIONS))' DB_BACKEND=$* uninstall
++ cd ..
++
++uninstall-%:
++ cd $* && \
++ make GPRINSTALL_OPTIONS='$(subst ','',$(GPRINSTALL_OPTIONS))' uninstall
++ cd ..
++
++.PHONY: clean
++clean: $(BINDINGS:%=clean-%)
++
++clean-gnatcoll_db2ada: $(DB_BACKENDS:%=clean-db2ada-%)
++
++clean-db2ada-%:
++ cd gnatcoll_db2ada && \
++ make DBBACKEND=$* clean
++ cd ..
++
++clean-%:
++ cd $* && \
++ make clean
++ cd ..
++
++.PHONY: test
++test:
++ sh testsuite/run-tests
++
++.NOTPARALLEL:
Home |
Main Index |
Thread Index |
Old Index