mirror of
https://github.com/silverqx/TinyORM.git
synced 2026-05-08 09:59:23 -05:00
tools added crystal repository for Gentoo
This repository contains tinyorm and tabulate packages. This allows to install TinyORM project on Gentoo using: emerge -va tinyorm [skip ci]
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# Gentoo `crystal` repository
|
||||
|
||||
Copy `crystal/` folder to the `/var/db/repos/`
|
||||
|
||||
```bash
|
||||
sudo cp -r crystal /var/db/repos
|
||||
cd /var/db/repos/crystal
|
||||
sudo chown -R root:root .
|
||||
```
|
||||
|
||||
Enable `crystal` repository by creating the `crystal-repo.conf` at `/etc/portage/repos.conf/`
|
||||
|
||||
```ini
|
||||
[crystal]
|
||||
location = /var/db/repos/crystal
|
||||
```
|
||||
|
||||
Repository also contains the [`tabulate`](https://github.com/p-ranav/tabulate) package because `gentoo` repository doesn't have one.
|
||||
|
||||
Enable unstable `~amd64` keyword for `tinyorm` and `tabulate` packages by creating `tinyorm` file at `/etc/portage/package.accept_keywords/`
|
||||
|
||||
```
|
||||
dev-db/tinyorm ~amd64
|
||||
dev-cpp/tabulate ~amd64
|
||||
```
|
||||
|
||||
Configure `USE` flags by creating `tinyorm` file at `/etc/portage/package.use/`
|
||||
|
||||
```
|
||||
dev-db/tinyorm mysql postgres sqlite mysql-ping tom tom-cli -qt5
|
||||
#dev-db/tinyorm build-drivers mysql -sqlite -qt5
|
||||
```
|
||||
|
||||
Check `USE` flags
|
||||
|
||||
```bash
|
||||
equery uses tinyorm
|
||||
```
|
||||
|
||||
Install `tinyorm` package
|
||||
|
||||
```bash
|
||||
sudo emerge --quiet-build -va tinyorm
|
||||
```
|
||||
@@ -0,0 +1,11 @@
|
||||
# https://editorconfig.org/
|
||||
root = true
|
||||
|
||||
[*.{ebuild,eclass}]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
indent_style = tab
|
||||
indent_size = 4
|
||||
trim_trailing_whitespace = true
|
||||
#max_line_length = 80
|
||||
@@ -0,0 +1,6 @@
|
||||
# Old/new developers can be added here to map their contributions accurately
|
||||
# before joining and after retiring, as well as the usual uses of .mailmap.
|
||||
# See gitmailmap(5) for format details.
|
||||
# Please keep this list sorted.
|
||||
# Use "grep -v '^#' .mailmap | LC_ALL=en_US.utf-8 sort".
|
||||
Silver Zachara <silver.zachara@gmail.com>
|
||||
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<catmetadata>
|
||||
<longdescription lang="en">
|
||||
The dev-cpp category contains libraries and utilities relevant to the
|
||||
c++ programming language.
|
||||
</longdescription>
|
||||
<longdescription lang="de">
|
||||
Die Kategorie dev-cpp enthält Bibliotheken und Werkzeuge für die
|
||||
Programmiersprache C++.
|
||||
</longdescription>
|
||||
<longdescription lang="es">
|
||||
La categoría dev-cpp contiene librerias y utilidades referentes al
|
||||
lenguaje de programación C++.
|
||||
</longdescription>
|
||||
<longdescription lang="ja">
|
||||
dev-cpp カテゴリーにはC++プログラミング言語に関連したライブラリーと
|
||||
ユーティリティが含まれます。
|
||||
</longdescription>
|
||||
<longdescription lang="nl">
|
||||
De dev-cpp categorie bevat bibliotheken en hulpmiddelen voor het gebruik
|
||||
van de programmeertaal C++.
|
||||
</longdescription>
|
||||
<longdescription lang="vi">
|
||||
Nhóm dev-cpp chứa các thư viện và tiện ích liên quan
|
||||
đến ngôn ngữ lập trình C++.
|
||||
</longdescription>
|
||||
<longdescription lang="it">
|
||||
La categoria dev-cpp contiene librerie e utilità per illinguaggio C++.
|
||||
</longdescription>
|
||||
<longdescription lang="pt">
|
||||
A categoria dev-cpp contém bibliotecas e utilitários para a
|
||||
linguagem de programação C++.
|
||||
</longdescription>
|
||||
<longdescription lang="pl">
|
||||
Kategoria dev-cpp zawiera biblioteki i narzędzia związane z językiem
|
||||
programowania c++.
|
||||
</longdescription>
|
||||
</catmetadata>
|
||||
@@ -0,0 +1 @@
|
||||
DIST v1.5.tar.gz 2546549 BLAKE2B 9c2005c3b666d2643fb72c78c957fd52c6521cbc1249c441de55a2f8125d7298bfd37c47c439e37be2765b7b037ced4946edbccbee9ac307765584f0c93cbf9f SHA512 324c9f2427d4d0e568b63fcd7bd81f4eee6743d7106af5ead134f81d637f190f77122f28cc42b9e95f7782f5058492b1903eadb44e1c3061a636b32bb93d0ed2
|
||||
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>silver.zachara@gmail.com</email>
|
||||
<name>Silver Zachara</name>
|
||||
<description>Primary package maintainer</description>
|
||||
</maintainer>
|
||||
<maintainer type="person">
|
||||
<name>Pranav (p-ranav)</name>
|
||||
<description>Upstream developer, CC on bugs</description>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
Table Maker for Modern C++
|
||||
</longdescription>
|
||||
<upstream>
|
||||
<remote-id type="github">p-ranav/tabulate</remote-id>
|
||||
</upstream>
|
||||
<bugs-to>https://github.com/p-ranav/tabulate/issues</bugs-to>
|
||||
<doc>https://github.com/p-ranav/tabulate</doc>
|
||||
</pkgmetadata>
|
||||
@@ -0,0 +1,20 @@
|
||||
# Copyright 2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="Table Maker for Modern C++"
|
||||
HOMEPAGE="https://github.com/p-ranav/tabulate"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/p-ranav/tabulate.git"
|
||||
EGIT_MIN_CLONE_TYPE="single"
|
||||
else
|
||||
SRC_URI="https://github.com/p-ranav/tabulate/archive/refs/tags/v${PV}.tar.gz"
|
||||
KEYWORDS="~amd64"
|
||||
fi
|
||||
@@ -0,0 +1,20 @@
|
||||
# Copyright 2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="Table Maker for Modern C++"
|
||||
HOMEPAGE="https://github.com/p-ranav/tabulate"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/p-ranav/tabulate.git"
|
||||
EGIT_MIN_CLONE_TYPE="single"
|
||||
else
|
||||
SRC_URI="https://github.com/p-ranav/tabulate/archive/refs/tags/v${PV}.tar.gz"
|
||||
KEYWORDS="~amd64"
|
||||
fi
|
||||
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<catmetadata>
|
||||
<longdescription lang="en">
|
||||
The dev-db category contains libraries and utilities for database
|
||||
related programming.
|
||||
</longdescription>
|
||||
<longdescription lang="de">
|
||||
Die Kategorie dev-db enhält Bibliotheken und Werkzeuge für die
|
||||
Datenbank-Programmierung.
|
||||
</longdescription>
|
||||
<longdescription lang="es">
|
||||
La categoría dev-db contiene librerias y utilidades para programación
|
||||
referente a bases de datos.
|
||||
</longdescription>
|
||||
<longdescription lang="ja">
|
||||
dev-dbカテゴリーにはデータベース・プログラミングに関連したライブラリーと
|
||||
ユーティリティが含まれます。
|
||||
</longdescription>
|
||||
<longdescription lang="nl">
|
||||
De dev-db categorie bevat bibliotheken en hulpmiddelen voor het gebruik
|
||||
van verschillende database-programmeertalen.
|
||||
</longdescription>
|
||||
<longdescription lang="vi">
|
||||
Nhóm dev-db chứa các thư viện và tiện ích liên quan
|
||||
đến Cơ sở dữ liệu.
|
||||
</longdescription>
|
||||
<longdescription lang="it">
|
||||
La categoria dev-db contiene librerie ed utilità per la programmazione di basi di dati.
|
||||
</longdescription>
|
||||
<longdescription lang="pt">
|
||||
A categoria dev-db contém bibliotecas e utilitários para a
|
||||
programação relacionada a bancos de dados.
|
||||
</longdescription>
|
||||
<longdescription lang="pl">
|
||||
Kategoria dev-db zawiera biblioteki i narzędzia związane z
|
||||
programowaniem związanym z bazami danych.
|
||||
</longdescription>
|
||||
</catmetadata>
|
||||
@@ -0,0 +1 @@
|
||||
DIST tinyorm-0.37.1.tar.gz 2226512 BLAKE2B 5d143acf5be50a128950346cffccd2214cb063a7aa8990b099d56a0c561608f4b1311756502e5d9d662dc1aa9934add2dc2d099ea215023c354d53048212ba00 SHA512 1ad4f9b8b2ad0a66e76c4f0f3a72883346bae5e32aec01dcdcf918e53fa66ec776324169e6e1aa1888243fb46a8c77e5eb601c43a7387e17f636e7e6d0918eff
|
||||
@@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>silver.zachara@gmail.com</email>
|
||||
<name>Silver Zachara</name>
|
||||
<description>Upstream developer, CC on bugs</description>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
Modern C++ ORM library for Qt framework
|
||||
</longdescription>
|
||||
<upstream>
|
||||
<remote-id type="github">silverqx/TinyORM</remote-id>
|
||||
</upstream>
|
||||
<bugs-to>https://github.com/silverqx/TinyORM/issues</bugs-to>
|
||||
<doc>https://www.tinyorm.org</doc>
|
||||
<use>
|
||||
<flag name="build-drivers">
|
||||
Build TinyDrivers SQL database drivers (alternative to the QtSql module, MySQL only)
|
||||
</flag>
|
||||
<flag name="disable-thread-local">
|
||||
Remove all thread_local storage duration specifiers (disables multi-threading support)
|
||||
</flag>
|
||||
<flag name="disable-thread-local">
|
||||
Remove all thread_local storage duration specifiers (disables multi-threading support)
|
||||
</flag>
|
||||
<flag name="inline-constants">
|
||||
Use inline constants instead of extern constants in shared builds
|
||||
</flag>
|
||||
<flag name="mysql-ping">
|
||||
Install MySQL C client library (libmysql) to support the mysql_ping()
|
||||
</flag>
|
||||
<flag name="orm">
|
||||
Enable ORM-related source code (without it only the query builder is compiled)
|
||||
</flag>
|
||||
<flag name="mysql">
|
||||
Add support for the MySQL database
|
||||
</flag>
|
||||
<flag name="postgres">
|
||||
Add support for the PostgreSQL database
|
||||
</flag>
|
||||
<flag name="qt5">
|
||||
Build and link against the Qt v5 (deprecated)
|
||||
</flag>
|
||||
<flag name="sqlite">
|
||||
Add support for the SQLite database
|
||||
</flag>
|
||||
<flag name="tom">
|
||||
Enable Tom-related source code (command-line interface)
|
||||
</flag>
|
||||
<flag name="tom-cli">
|
||||
Build Tom command-line application (migrations, scaffolding, enhances bash completion)
|
||||
</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
@@ -0,0 +1,76 @@
|
||||
# Copyright 2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="Modern C++ ORM library for Qt framework"
|
||||
HOMEPAGE="https://www.tinyorm.org https://github.com/silverqx/TinyORM"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/silverqx/TinyORM.git"
|
||||
EGIT_MIN_CLONE_TYPE="single"
|
||||
else
|
||||
SRC_URI="https://github.com/silverqx/TinyORM/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S=${WORKDIR}/TinyORM-${PV}
|
||||
KEYWORDS="~amd64"
|
||||
fi
|
||||
|
||||
IUSE="build-drivers disable-thread-local inline-constants mysql mysql-ping +orm postgres -qt5 +sqlite +tom +tom-cli"
|
||||
REQUIRED_USE="
|
||||
build-drivers? ( || ( mysql ) !postgres !sqlite !qt5 )
|
||||
tom-cli? ( tom )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
build-drivers? (
|
||||
>=dev-qt/qtbase-6.7:6[icu]
|
||||
mysql? ( dev-db/mysql-connector-c:= )
|
||||
)
|
||||
!build-drivers? (
|
||||
!qt5? (
|
||||
>=dev-qt/qtbase-6.7:6[icu]
|
||||
dev-qt/qtbase:=[mysql,postgres,sqlite]
|
||||
)
|
||||
qt5? (
|
||||
dev-qt/qtcore:5[icu]
|
||||
dev-qt/qtsql:5[mysql,postgres,sqlite]
|
||||
)
|
||||
)
|
||||
mysql-ping? ( dev-db/mysql-connector-c:= )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
>=dev-cpp/range-v3-0.12.0
|
||||
>=dev-cpp/tabulate-1.5"
|
||||
|
||||
DOCS=()
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-D CMAKE_CXX_SCAN_FOR_MODULES:BOOL=OFF
|
||||
-D CMAKE_EXPORT_PACKAGE_REGISTRY:BOOL=OFF
|
||||
-D BUILD_TREE_DEPLOY:BOOL=OFF
|
||||
-D STRICT_MODE:BOOL=OFF
|
||||
-D VERBOSE_CONFIGURE:BOOL=ON
|
||||
-D BUILD_TESTS:BOOL=OFF
|
||||
-D BUILD_DRIVERS:BOOL=$(usex build-drivers)
|
||||
-D DRIVERS_TYPE:STRING=Shared
|
||||
-D DISABLE_THREAD_LOCAL:BOOL=$(usex disable-thread-local)
|
||||
-D INLINE_CONSTANTS:BOOL=$(usex inline-constants)
|
||||
-D MYSQL_PING:BOOL=$(usex mysql-ping)
|
||||
-D ORM:BOOL=$(usex orm)
|
||||
-D TOM:BOOL=$(usex tom)
|
||||
-D TOM_EXAMPLE:BOOL=$(usex tom-cli)
|
||||
)
|
||||
|
||||
use build-drivers && mycmakeargs+=(
|
||||
-D BUILD_MYSQL_DRIVER:BOOL=$(usex mysql)
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
# Copyright 2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="Modern C++ ORM library for Qt framework"
|
||||
HOMEPAGE="https://www.tinyorm.org https://github.com/silverqx/TinyORM"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/silverqx/TinyORM.git"
|
||||
EGIT_MIN_CLONE_TYPE="single"
|
||||
else
|
||||
SRC_URI="https://github.com/silverqx/TinyORM/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S=${WORKDIR}/TinyORM-${PV}
|
||||
KEYWORDS="~amd64"
|
||||
fi
|
||||
|
||||
IUSE="build-drivers disable-thread-local inline-constants mysql mysql-ping +orm postgres -qt5 +sqlite +tom +tom-cli"
|
||||
REQUIRED_USE="
|
||||
build-drivers? ( || ( mysql ) !postgres !sqlite !qt5 )
|
||||
tom-cli? ( tom )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
build-drivers? (
|
||||
>=dev-qt/qtbase-6.7:6[icu]
|
||||
mysql? ( dev-db/mysql-connector-c:= )
|
||||
)
|
||||
!build-drivers? (
|
||||
!qt5? (
|
||||
>=dev-qt/qtbase-6.7:6[icu]
|
||||
dev-qt/qtbase:=[mysql,postgres,sqlite]
|
||||
)
|
||||
qt5? (
|
||||
dev-qt/qtcore:5[icu]
|
||||
dev-qt/qtsql:5[mysql,postgres,sqlite]
|
||||
)
|
||||
)
|
||||
mysql-ping? ( dev-db/mysql-connector-c:= )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
>=dev-cpp/range-v3-0.12.0
|
||||
>=dev-cpp/tabulate-1.5"
|
||||
|
||||
DOCS=()
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-D CMAKE_CXX_SCAN_FOR_MODULES:BOOL=OFF
|
||||
-D CMAKE_EXPORT_PACKAGE_REGISTRY:BOOL=OFF
|
||||
-D BUILD_TREE_DEPLOY:BOOL=OFF
|
||||
-D STRICT_MODE:BOOL=OFF
|
||||
-D VERBOSE_CONFIGURE:BOOL=ON
|
||||
-D BUILD_TESTS:BOOL=OFF
|
||||
-D BUILD_DRIVERS:BOOL=$(usex build-drivers)
|
||||
-D DRIVERS_TYPE:STRING=Shared
|
||||
-D DISABLE_THREAD_LOCAL:BOOL=$(usex disable-thread-local)
|
||||
-D INLINE_CONSTANTS:BOOL=$(usex inline-constants)
|
||||
-D MYSQL_PING:BOOL=$(usex mysql-ping)
|
||||
-D ORM:BOOL=$(usex orm)
|
||||
-D TOM:BOOL=$(usex tom)
|
||||
-D TOM_EXAMPLE:BOOL=$(usex tom-cli)
|
||||
)
|
||||
|
||||
use build-drivers && mycmakeargs+=(
|
||||
-D BUILD_MYSQL_DRIVER:BOOL=$(usex mysql)
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
# This is a partial list of copyright holders for Gentoo packages.
|
||||
# It is opt-in and manually maintained, so it will be neither complete
|
||||
# nor necessarily up to date. A more exhaustive list can be obtained
|
||||
# by additionally extracting author information from the commit history
|
||||
# of the Gentoo CVS and git repositories.
|
||||
#
|
||||
# Requests to be listed below can be filed at https://bugs.gentoo.org/
|
||||
# under the Gentoo Foundation product. To be considered, an entity must
|
||||
# have made a legally significant contribution, as determined by the
|
||||
# Board of Trustees. As a reference, the following guide can be used:
|
||||
# https://www.gnu.org/prep/maintain/html_node/Legally-Significant.html
|
||||
#
|
||||
# Entries are single lines and contain the entity's name and an optional
|
||||
# e-mail address. Keep the list sorted (use "LC_ALL=en_US.utf-8 sort").
|
||||
#
|
||||
Silver Zachara <silver.zachara@gmail.com>
|
||||
@@ -0,0 +1,3 @@
|
||||
masters = gentoo
|
||||
thin-manifests = true
|
||||
sign-manifests = false
|
||||
@@ -0,0 +1 @@
|
||||
8
|
||||
@@ -0,0 +1 @@
|
||||
crystal
|
||||
Reference in New Issue
Block a user