push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,118 @@
From 37f30a35bea94a86a37fe22adf8e99c20bc6e18b Mon Sep 17 00:00:00 2001
From: wxt <3264117476@qq.com>
Date: Tue, 21 Jan 2025 12:26:24 +0800
Subject: [PATCH] fix gcc14
---
m4/bdb.m4 | 1 +
m4/firebird.m4 | 2 ++
m4/ldap.m4 | 1 +
m4/mdbtools.m4 | 1 +
m4/mysql.m4 | 2 ++
m4/oracle.m4 | 1 +
m4/postgresql.m4 | 1 +
7 files changed, 9 insertions(+)
diff --git a/m4/bdb.m4 b/m4/bdb.m4
index 3f577960a..b7d58b8ea 100644
--- a/m4/bdb.m4
+++ b/m4/bdb.m4
@@ -168,6 +168,7 @@ m4_define([_BDB_CHECK_INTERNAL],
LIBS="$LIBS -L$d/$bdb_loclibdir $db_lib"
AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <${db_hdr}>
+#include <stdio.h>
int main() {
printf("%p", db_create);
return 0;
diff --git a/m4/firebird.m4 b/m4/firebird.m4
index 933962dc8..6d2370a41 100644
--- a/m4/firebird.m4
+++ b/m4/firebird.m4
@@ -154,6 +154,7 @@ m4_define([_FIREBIRD_CHECK_INTERNAL],
LIBS="$LIBS -L$d/$firebird_loclibdir -lfbclient"
AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <ibase.h>
+#include <stdio.h>
int main() {
printf("%p", isc_open);
return 0;
@@ -196,6 +197,7 @@ int main() {
LIBS="$LIBS -L$d/$firebird_loclibdir -lfbembed"
AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <ibase.h>
+#include <stdio.h>
int main() {
printf("%p", isc_open);
return 0;
diff --git a/m4/ldap.m4 b/m4/ldap.m4
index 032533192..77e3b34dd 100644
--- a/m4/ldap.m4
+++ b/m4/ldap.m4
@@ -124,6 +124,7 @@ m4_define([_LDAP_CHECK_INTERNAL],
#include <ldap.h>
#include <lber.h>
#include <ldap_schema.h>
+#include <stdio.h>
int main() {
printf("%p,%p", ldap_initialize, ldap_str2attributetype);
printf("%p", ber_free);
diff --git a/m4/mdbtools.m4 b/m4/mdbtools.m4
index 7ca5b40c5..054498f7b 100644
--- a/m4/mdbtools.m4
+++ b/m4/mdbtools.m4
@@ -141,6 +141,7 @@ m4_define([_MDBTOOLS_CHECK_INTERNAL],
LIBS="$LIBS -L$d/$mdb_loclibdir -lmdb $mdb_glib_libs"
AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <mdbtools.h>
+#include <stdio.h>
int main() {
printf("%p", mdb_open);
return 0;
diff --git a/m4/mysql.m4 b/m4/mysql.m4
index 535a081a9..5bd9e49b3 100644
--- a/m4/mysql.m4
+++ b/m4/mysql.m4
@@ -134,6 +134,7 @@ m4_define([_MYSQL_CHECK_INTERNAL],
AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <winsock.h>
#include <mysql.h>
+#include <stdio.h>
int main() {
printf("%p", mysql_real_connect);
return 0;
@@ -177,6 +178,7 @@ int main() {
AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <mysql.h>
+#include <stdio.h>
int main() {
printf("%p", mysql_real_connect);
return 0;
diff --git a/m4/oracle.m4 b/m4/oracle.m4
index 2d9003e41..cf5ba8ebd 100644
--- a/m4/oracle.m4
+++ b/m4/oracle.m4
@@ -140,6 +140,7 @@ m4_define([_ORACLE_CHECK_INTERNAL],
fi
AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <oci.h>
+#include <stdio.h>
int main() {
printf("%p", OCIInitialize);
return 0;
diff --git a/m4/postgresql.m4 b/m4/postgresql.m4
index 252d9053d..a7e308d1a 100644
--- a/m4/postgresql.m4
+++ b/m4/postgresql.m4
@@ -133,6 +133,7 @@ m4_define([_POSTGRES_CHECK_INTERNAL],
LIBS="$LIBS -L$d/$pg_loclibdir -lpq"
AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <libpq-fe.h>
+#include <stdio.h>
int main() {
printf("%p", PQconnectdb);
return 0;
--
2.47.0

View File

@@ -0,0 +1,119 @@
{
lib,
stdenv,
fetchurl,
pkg-config,
intltool,
itstool,
libxml2,
gtk3,
openssl,
gnome,
gobject-introspection,
vala,
libgee,
fetchpatch,
autoreconfHook,
gtk-doc,
autoconf-archive,
yelp-tools,
mysqlSupport ? false,
libmysqlclient,
postgresSupport ? false,
libpq,
}:
stdenv.mkDerivation rec {
pname = "libgda";
version = "5.2.10";
src = fetchurl {
url = "mirror://gnome/sources/libgda/${lib.versions.majorMinor version}/libgda-${version}.tar.xz";
hash = "sha256-b2zfe4BT9VO5B+DIimBk60jPJ1GFLrJDI9zwJ3kjNMg=";
};
patches = [
# fix compile error with mysql
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/libgda/-/commit/9859479884fad5f39e6c37e8995e57c28b11b1b9.diff";
hash = "sha256-G2PS8LkUXj7deofEn8lgpEMbYg4RLB5injS9VRizGpU=";
})
(fetchpatch {
name = "CVE-2021-39359.patch";
url = "https://src.fedoraproject.org/rpms/libgda5/raw/72bb769f12e861e27e883dac5fab34f1ba4bd97e/f/bebdffb4de586fb43fd07ac549121f4b22f6812d.patch";
hash = "sha256-hIKuY5NEqOzntdlLb541bA4xZU5ypTRmV1u765K6KbM=";
})
# Fix configure detection of features with c99.
./0001-gcc14-fix.patch
];
nativeBuildInputs = [
pkg-config
intltool
itstool
gobject-introspection
vala
autoreconfHook
gtk-doc
autoconf-archive
yelp-tools
libpq.pg_config
];
buildInputs = [
gtk3
openssl
libgee
]
++ lib.optionals mysqlSupport [
libmysqlclient
]
++ lib.optionals postgresSupport [
libpq
];
propagatedBuildInputs = [
libxml2
];
configureFlags = [
"--with-mysql=${if mysqlSupport then "yes" else "no"}"
"--with-postgres=${if postgresSupport then "yes" else "no"}"
# macOS builds use the sqlite source code that comes with libgda,
# as opposed to using the system or brewed sqlite3, which is not supported on macOS,
# as mentioned in https://github.com/GNOME/libgda/blob/95eeca4b0470f347c645a27f714c62aa6e59f820/libgda/sqlite/README#L31,
# which references the paper https://web.archive.org/web/20100610151539/http://lattice.umiacs.umd.edu/files/functions_tr.pdf
# See also https://github.com/Homebrew/homebrew-core/blob/104f9ecd02854a82372b64d63d41356555378a52/Formula/libgda.rb
"--enable-system-sqlite=${if stdenv.hostPlatform.isDarwin then "no" else "yes"}"
];
env.NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types";
enableParallelBuilding = true;
hardeningDisable = [ "format" ];
passthru = {
updateScript = gnome.updateScript {
packageName = "libgda";
attrPath = "libgda5";
versionPolicy = "odd-unstable";
freeze = true;
};
};
meta = {
description = "Database access library";
homepage = "https://www.gnome-db.org/";
license = with lib.licenses; [
# library
lgpl2Plus
# CLI tools
gpl2Plus
];
maintainers = [ lib.maintainers.bot-wxt1221 ];
platforms = lib.platforms.unix;
};
}

View File

@@ -0,0 +1,119 @@
{
lib,
stdenv,
fetchurl,
fetchpatch,
pkg-config,
intltool,
meson,
ninja,
itstool,
libxml2,
python3,
gtk3,
json-glib,
isocodes,
openssl,
gnome,
gobject-introspection,
vala,
libgee,
sqlite,
gtk-doc,
yelp-tools,
mysqlSupport ? false,
libmysqlclient ? null,
postgresSupport ? false,
libpq ? null,
}:
assert mysqlSupport -> libmysqlclient != null;
assert postgresSupport -> libpq != null;
stdenv.mkDerivation rec {
pname = "libgda";
version = "6.0.0";
src = fetchurl {
url = "mirror://gnome/sources/libgda/${lib.versions.majorMinor version}/libgda-${version}.tar.xz";
sha256 = "0w564z7krgjk19r39mi5qn4kggpdg9ggbyn9pb4aavb61r14npwr";
};
patches = [
# Fix undefined behavior
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/libgda/-/commit/657b2f8497da907559a6769c5b1d2d7b5bd40688.patch";
sha256 = "Qx4S9KQsTAr4M0QJi0Xr5kKuHSp4NwZJHoRPYyxIyTk=";
})
# Fix building vapi
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/libgda/-/commit/57f618a3b2a3758ee3dcbf9bbdc566122dd8566d.patch";
sha256 = "pyfymUd61m1kHaGyMbUQMma+szB8mlqGWwcFBBQawf8=";
})
(fetchpatch {
name = "CVE-2021-39359.patch";
url = "https://gitlab.gnome.org/GNOME/libgda/-/commit/bebdffb4de586fb43fd07ac549121f4b22f6812d.patch";
sha256 = "sha256-UjHP1nhb5n6TOdaMdQeE2s828T4wv/0ycG3FAk+I1QA=";
})
];
nativeBuildInputs = [
pkg-config
intltool
meson
ninja
itstool
libxml2
python3
gobject-introspection
vala
gtk-doc
yelp-tools
];
buildInputs = [
gtk3
json-glib
isocodes
openssl
libgee
sqlite
]
++ lib.optionals mysqlSupport [
libmysqlclient
]
++ lib.optionals postgresSupport [
libpq
];
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=incompatible-function-pointer-types";
postPatch = ''
patchShebangs \
providers/raw_spec.py \
providers/mysql/gen_bin.py
'';
passthru = {
updateScript = gnome.updateScript {
packageName = "libgda";
attrPath = "libgda6";
versionPolicy = "odd-unstable";
};
};
meta = with lib; {
description = "Database access library";
homepage = "https://www.gnome-db.org/";
license = with licenses; [
# library
lgpl2Plus
# CLI tools
gpl2Plus
];
teams = [ teams.gnome ];
platforms = platforms.unix;
};
}