# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit git-r3 go-module DESCRIPTION="Universal command-line interface for SQL databases" HOMEPAGE="https://github.com/xo/usql" EGIT_REPO_URI="https://github.com/xo/${PN}.git" LICENSE="MIT" SLOT="0" IUSE="athena avatica bigquery cassandra chai clickhouse cosmos couchbase csvq databend databricks duckdb dynamodb exasol firebird flightsql h2 hdb hive ignite impala maxcompute +mssql +mysql netezza +oracle odbc +postgres presto ql ramsql sapase saphana snowflake spanner +sqlite tablestore tds trino vertica voltdb ydb" src_unpack() { git-r3_src_unpack go-module_live_vendor } src_compile() { LDFLAGS="-X github.com/xo/usql/text.CommandName=${PN} -X github.com/xo/usql/text.CommandVersion=${PV}" TAGS="netgo $(usex athena athena no_athena) $(usex avatica avatica no_avatica) $(usex bigquery bigquery no_bigquery) $(usex cassandra cassandra no_cassandra) $(usex chai chai no_chai) $(usex clickhouse clickhouse no_clickhouse) $(usex cosmos cosmos no_cosmos) $(usex couchbase couchbase no_couchbase) $(usex csvq csvq no_csvq) $(usex databend databend no_databend) $(usex databricks databricks no_databricks) $(duckdb duckdb no_duckdb) $(usex dynamodb dynamodb no_dynamodb) $(usex exasol exasol no_exasol) $(usex firebird firebird no_firebird) $(flightsql flightsql no_flightsql) $(usex h2 h2 no_h2) $(usex hdb hdb no_hdb) $(usex hive hive no_hive) $(usex ignite ignite no_ignite) $(usex impala impala no_impala) $(usex maxcompute maxcompute no_maxcompute) $(usex mssql sqlserver no_sqlserver) $(usex mysql 'mysql mymysql' 'no_mysql no_mymysql') $(usex netezza netezza no_netezza) $(odbc odbc no_odbc) $(usex oracle 'godror oracle' 'no_godror' no_oracle) $(usex postgres 'pgx postgres' 'no_pgx no_postgres') $(usex presto presto no_presto) $(usex ramsql ramsql no_ramsql) $(usex ql ql no_ql) $(usex snowflake snowflake no_snowflake) $(usex spanner spanner no_spanner) $(usex tablestore ots no_ots) $(usex sapase sapase no_sapase) $(usex saphana saphana no_saphana) $(usex sqlite 'moderncsqlite sqlite3 sqlite sqlite_app_armor sqlite_fts5 sqlite_introspect sqlite_json1 sqlite_stat4 sqlite_userauth sqlite_vtable sqlite_icu' 'no_moderncsqlite no_sqlite3') $(usex tds tds no_tds) $(usex trino trino no_trino) $(usex vertica vertica no_vertica) $(usex voltdb voltdb no_voltdb) $(ydb ydb no_ydb) no_adodb" ego build -tags "${TAGS}" -ldflags="${LDFLAGS}" } src_test() { ego test } src_install() { einstalldocs dobin usql }