Merge staging-next into staging
This commit is contained in:
commit
cc3ebacb50
@ -6276,6 +6276,16 @@
|
||||
githubId = 541748;
|
||||
name = "Felipe Espinoza";
|
||||
};
|
||||
federicoschonborn = {
|
||||
name = "Federico Damián Schonborn";
|
||||
email = "federicoschonborn@disroot.org";
|
||||
github = "FedericoSchonborn";
|
||||
githubId = 62166915;
|
||||
matrix = "@FedericoDSchonborn:matrix.org";
|
||||
keys = [
|
||||
{ fingerprint = "C43F 4052 D289 3B73 33F8 0259 E4F6 F544 DE9E 29E8"; }
|
||||
];
|
||||
};
|
||||
fedx-sudo = {
|
||||
email = "fedx-sudo@pm.me";
|
||||
github = "FedX-sudo";
|
||||
|
@ -99,6 +99,7 @@ with lib.maintainers; {
|
||||
budgie = {
|
||||
members = [
|
||||
bobby285271
|
||||
federicoschonborn
|
||||
];
|
||||
scope = "Maintain Budgie desktop environment";
|
||||
shortName = "Budgie";
|
||||
|
@ -1439,6 +1439,8 @@ in {
|
||||
nodejs
|
||||
gnupg
|
||||
|
||||
"${cfg.packages.gitlab}/share/gitlab/vendor/gems/sidekiq-${cfg.packages.gitlab.rubyEnv.gems.sidekiq.version}"
|
||||
|
||||
# Needed for GitLab project imports
|
||||
gnutar
|
||||
gzip
|
||||
@ -1452,7 +1454,12 @@ in {
|
||||
TimeoutSec = "infinity";
|
||||
Restart = "always";
|
||||
WorkingDirectory = "${cfg.packages.gitlab}/share/gitlab";
|
||||
ExecStart="${cfg.packages.gitlab.rubyEnv}/bin/sidekiq -C \"${cfg.packages.gitlab}/share/gitlab/config/sidekiq_queues.yml\" -e production";
|
||||
ExecStart = utils.escapeSystemdExecArgs [
|
||||
"${cfg.packages.gitlab}/share/gitlab/bin/sidekiq-cluster"
|
||||
"-e" "production"
|
||||
"-r" "."
|
||||
"*" # all queue groups
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
@ -1550,7 +1557,7 @@ in {
|
||||
gnutar
|
||||
gzip
|
||||
openssh
|
||||
gitlab-workhorse
|
||||
cfg.packages.gitlab-workhorse
|
||||
];
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
|
@ -236,9 +236,9 @@ in
|
||||
};
|
||||
|
||||
services.hedgedoc.settings = {
|
||||
defaultNotePath = lib.mkDefault "${cfg.package}/public/default.md";
|
||||
docsPath = lib.mkDefault "${cfg.package}/public/docs";
|
||||
viewPath = lib.mkDefault "${cfg.package}/public/views";
|
||||
defaultNotePath = lib.mkDefault "${cfg.package}/share/hedgedoc/public/default.md";
|
||||
docsPath = lib.mkDefault "${cfg.package}/share/hedgedoc/public/docs";
|
||||
viewPath = lib.mkDefault "${cfg.package}/share/hedgedoc/public/views";
|
||||
};
|
||||
|
||||
systemd.services.hedgedoc = {
|
||||
@ -263,7 +263,7 @@ in
|
||||
Group = name;
|
||||
|
||||
Restart = "always";
|
||||
ExecStart = "${cfg.package}/bin/hedgedoc";
|
||||
ExecStart = lib.getExe cfg.package;
|
||||
RuntimeDirectory = [ name ];
|
||||
StateDirectory = [ name ];
|
||||
WorkingDirectory = "/run/${name}";
|
||||
|
@ -44,6 +44,8 @@ let
|
||||
enableSshSocket = config.services.openssh.startWhenNeeded;
|
||||
};
|
||||
in {
|
||||
meta.maintainers = lib.teams.budgie.members;
|
||||
|
||||
options = {
|
||||
services.xserver.desktopManager.budgie = {
|
||||
enable = mkEnableOption (mdDoc "the Budgie desktop");
|
||||
|
@ -233,7 +233,9 @@ in
|
||||
symlinks because modprobe only supports one directory.
|
||||
'';
|
||||
# Convert the list of path to only one path.
|
||||
apply = pkgs.aggregateModules;
|
||||
apply = let
|
||||
kernel-name = config.boot.kernelPackages.kernel.name or "kernel";
|
||||
in modules: (pkgs.aggregateModules modules).override { name = kernel-name + "-modules"; };
|
||||
};
|
||||
|
||||
system.requiredKernelConfig = mkOption {
|
||||
|
@ -13,15 +13,11 @@ let
|
||||
|
||||
kernel-name = config.boot.kernelPackages.kernel.name or "kernel";
|
||||
|
||||
modulesTree = config.system.modulesTree.override { name = kernel-name + "-modules"; };
|
||||
firmware = config.hardware.firmware;
|
||||
|
||||
|
||||
# Determine the set of modules that we need to mount the root FS.
|
||||
modulesClosure = pkgs.makeModulesClosure {
|
||||
rootModules = config.boot.initrd.availableKernelModules ++ config.boot.initrd.kernelModules;
|
||||
kernel = modulesTree;
|
||||
firmware = firmware;
|
||||
kernel = config.system.modulesTree;
|
||||
firmware = config.hardware.firmware;
|
||||
allowMissing = false;
|
||||
};
|
||||
|
||||
|
@ -91,13 +91,11 @@ let
|
||||
};
|
||||
|
||||
kernel-name = config.boot.kernelPackages.kernel.name or "kernel";
|
||||
modulesTree = config.system.modulesTree.override { name = kernel-name + "-modules"; };
|
||||
firmware = config.hardware.firmware;
|
||||
# Determine the set of modules that we need to mount the root FS.
|
||||
modulesClosure = pkgs.makeModulesClosure {
|
||||
rootModules = config.boot.initrd.availableKernelModules ++ config.boot.initrd.kernelModules;
|
||||
kernel = modulesTree;
|
||||
firmware = firmware;
|
||||
kernel = config.system.modulesTree;
|
||||
firmware = config.hardware.firmware;
|
||||
allowMissing = false;
|
||||
};
|
||||
|
||||
|
@ -61,14 +61,15 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
||||
machine.succeed(f"{cmd} | grep 'XDG_CURRENT_DESKTOP' | grep 'Budgie:GNOME'")
|
||||
machine.succeed(f"{cmd} | grep 'BUDGIE_PLUGIN_DATADIR' | grep '${pkgs.budgie.budgie-desktop-with-plugins.pname}'")
|
||||
|
||||
with subtest("Open Budgie Control Center"):
|
||||
with subtest("Open run dialog"):
|
||||
machine.send_key("alt-f2")
|
||||
machine.wait_until_succeeds("pgrep -f budgie-run-dialog")
|
||||
machine.wait_for_window("budgie-run-dialog")
|
||||
machine.sleep(3)
|
||||
machine.send_chars("Budgie Control Center", delay=0.5)
|
||||
machine.screenshot("quick_search")
|
||||
machine.send_chars("\n")
|
||||
machine.sleep(2)
|
||||
machine.screenshot("run_dialog")
|
||||
machine.send_key("esc")
|
||||
|
||||
with subtest("Open Budgie Control Center"):
|
||||
machine.succeed("${su "budgie-control-center >&2 &"}")
|
||||
machine.wait_for_window("Budgie Control Center")
|
||||
|
||||
with subtest("Lock the screen"):
|
||||
|
@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pt2-clone";
|
||||
version = "1.66.1";
|
||||
version = "1.67";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "8bitbubsy";
|
||||
repo = "pt2-clone";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-j7VPC1sj1Q+wL2TBgv06uYLPqym8F57HG1SRvj0Ggeo=";
|
||||
sha256 = "sha256-fTUTXwS6A72zhKkANlSljQVvPeN5rOTyuyb8vLxYfdk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -2,7 +2,6 @@
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, gitMinimal
|
||||
, pkg-config
|
||||
, alsa-lib
|
||||
, freetype
|
||||
@ -23,15 +22,12 @@ stdenv.mkDerivation rec {
|
||||
owner = "surge-synthesizer";
|
||||
repo = "surge";
|
||||
rev = "release_xt_${version}";
|
||||
branchName = "release-xt/${version}";
|
||||
fetchSubmodules = true;
|
||||
leaveDotGit = true;
|
||||
sha256 = "sha256-q6qs/OhIakF+Gc8Da3pnfkUGYDUoJbvee0o8dfrRI2U=";
|
||||
sha256 = "sha256-xcbZ5TC2W2PVzAkpoKPFIgW1oRGaC+ynQYot3cb5NAQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
gitMinimal
|
||||
pkg-config
|
||||
];
|
||||
|
||||
|
@ -15,6 +15,13 @@ buildGoModule rec {
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
checkFlags = [
|
||||
# Test fails with:
|
||||
# 'x509_test.go:201: server did not report bad certificate error;
|
||||
# instead errored with [...] tls: unknown certificate authority (*url.Error)'
|
||||
"-skip=^TestUntrustedClientCert$"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://decred.org";
|
||||
description = "A secure Decred wallet daemon written in Go (golang)";
|
||||
|
733
pkgs/applications/blockchains/polkadot/Cargo.lock
generated
733
pkgs/applications/blockchains/polkadot/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -11,13 +11,13 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "polkadot";
|
||||
version = "1.8.0";
|
||||
version = "1.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "paritytech";
|
||||
repo = "polkadot-sdk";
|
||||
rev = "polkadot-v${version}";
|
||||
hash = "sha256-GyiipeXe4Ny7UAwKMEelTqiaWZH1r/VhmbdMaUH6fjQ=";
|
||||
hash = "sha256-YLd1XKluL8QBbZPTb1FCvBDVD0YWjZfZTvl4p9jx28Y=";
|
||||
|
||||
# the build process of polkadot requires a .git folder in order to determine
|
||||
# the git commit hash that is being built and add it to the version string.
|
||||
|
@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
|
||||
"-Dvapi=false"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "An implementation of the KDE Connect protocol, built on GNOME platform libraries";
|
||||
mainProgram = "valent";
|
||||
longDescription = ''
|
||||
@ -82,8 +82,8 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = "https://valent.andyholmes.ca";
|
||||
changelog = "https://github.com/andyholmes/valent/blob/${src.rev}/CHANGELOG.md";
|
||||
license = with licenses; [ gpl3Plus cc0 cc-by-sa-30 ];
|
||||
maintainers = with maintainers; [ aleksana ];
|
||||
platforms = platforms.linux;
|
||||
license = with lib.licenses; [ gpl3Plus cc0 cc-by-sa-30 ];
|
||||
maintainers = with lib.maintainers; [ aleksana federicoschonborn ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -2,6 +2,7 @@
|
||||
, stdenv
|
||||
, bash
|
||||
, fetchFromGitHub
|
||||
, fetchFromGitLab
|
||||
, SDL2
|
||||
, alsa-lib
|
||||
, catch2_3
|
||||
@ -72,6 +73,17 @@ let
|
||||
rev = "0.10.1";
|
||||
hash = "sha256-iIYKvpOWafPJB5XhDOSIW9Mb4I3A4pcgIIPQdQYEqUw=";
|
||||
};
|
||||
|
||||
wireplumber_0_4 = wireplumber.overrideAttrs (attrs: rec {
|
||||
version = "0.4.17";
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.freedesktop.org";
|
||||
owner = "pipewire";
|
||||
repo = "wireplumber";
|
||||
rev = version;
|
||||
hash = "sha256-vhpQT67+849WV1SFthQdUeFnYe/okudTQJoL3y+wXwI=";
|
||||
};
|
||||
});
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "waybar";
|
||||
@ -138,7 +150,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
++ lib.optional traySupport libdbusmenu-gtk3
|
||||
++ lib.optional udevSupport udev
|
||||
++ lib.optional upowerSupport upower
|
||||
++ lib.optional wireplumberSupport wireplumber
|
||||
++ lib.optional wireplumberSupport wireplumber_0_4
|
||||
++ lib.optional (cavaSupport || pipewireSupport) pipewire
|
||||
++ lib.optional (!stdenv.isLinux) libinotify-kqueue;
|
||||
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "helm-unittest";
|
||||
version = "0.4.2";
|
||||
version = "0.4.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-51Cx8V0cvuyBLFVmOWpA8X/kpDR67Q5EYZct44ED/ys=";
|
||||
hash = "sha256-2ymsh+GWCjpiTVRIuf0i9+wz6WnwpG0QP6tErabSEFk=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-6tXQ2fbn1ZzImx8luxetXHNj3gIUt217rjXJPxMpjTw=";
|
||||
vendorHash = "sha256-ftD913mz9ziO3XWCdsbONrgMlBIc0uX4gq3NQmkXbs0=";
|
||||
|
||||
# NOTE: Remove the install and upgrade hooks.
|
||||
postPatch = ''
|
||||
|
@ -5,16 +5,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "terragrunt";
|
||||
version = "0.55.15";
|
||||
version = "0.55.18";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gruntwork-io";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-luVYnuvsLHfkSZVCjzGB34ffbNzuKjEFmxQfgdY+YpQ=";
|
||||
hash = "sha256-66yNRBh4WzArHL/yPn6IuLXt2YEthnufkcR2sw7LJYQ=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-KXAN8WNKFfGbV7YQRhwgFBM0g+rbHe+MIuaR5/7khAs=";
|
||||
vendorHash = "sha256-ijAg0Y/dfNxDS/Jov7QYjlTZ4N4/jDMH/zCV0jdVXRc=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "vcluster";
|
||||
version = "0.19.1";
|
||||
version = "0.19.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "loft-sh";
|
||||
repo = pname;
|
||||
repo = "vcluster";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-W9BSLGUrW8Us+yYQLIz3oY8JKJSo43cL+oWQQf3xWJE=";
|
||||
hash = "sha256-fzHaB+EeS8Gr1EVlxAZzKDYgv3Jij4LwmYaXN4tjYBg=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
@ -45,12 +45,13 @@ buildGoModule rec {
|
||||
command = "vcluster --version";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
changelog = "https://github.com/loft-sh/vcluster/releases/tag/v${version}";
|
||||
description = "Create fully functional virtual Kubernetes clusters";
|
||||
mainProgram = "vcluster";
|
||||
downloadPage = "https://github.com/loft-sh/vcluster";
|
||||
homepage = "https://www.vcluster.com/";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ peterromfeldhk berryp qjoly ];
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ berryp peterromfeldhk qjoly superherointj ];
|
||||
};
|
||||
}
|
||||
|
@ -36,8 +36,10 @@ buildGoModule rec {
|
||||
passthru.tests = { inherit (nixosTests) magnetico; };
|
||||
|
||||
meta = with lib; {
|
||||
# Build fails with Go >=1.21, couldn't be fixed by updating module dependencies.
|
||||
broken = true;
|
||||
description = "Autonomous (self-hosted) BitTorrent DHT search engine suite";
|
||||
homepage = "https://github.com/boramalper/magnetico";
|
||||
homepage = "https://github.com/ireun/magnetico";
|
||||
license = licenses.agpl3;
|
||||
badPlatforms = platforms.darwin;
|
||||
maintainers = with maintainers; [ rnhmjoj ];
|
||||
|
@ -5,13 +5,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "storj-uplink";
|
||||
version = "1.100.2";
|
||||
version = "1.100.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "storj";
|
||||
repo = "storj";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-wc6oK1zn04/1nwis9ndpkQc8dwY/J85zZbhkwmNFLek=";
|
||||
hash = "sha256-/aR6M/zL7xL+ujmGgu9J8Toiy7/0ou76nYJ0vwd5RVM=";
|
||||
};
|
||||
|
||||
subPackages = [ "cmd/uplink" ];
|
||||
|
@ -1,15 +1,15 @@
|
||||
{
|
||||
"version": "16.8.1",
|
||||
"repo_hash": "sha256-95YdEAUYoFDFX4COI6NnI6tDB+NLnihlJdUDM8NixXA=",
|
||||
"yarn_hash": "1yhl4l2dln9ck4nbjjrlyjx17nxk4h12gb5hqjh4dq3rz3az3jvx",
|
||||
"version": "16.9.2",
|
||||
"repo_hash": "sha256-pvmbxCySSc+Ug4W3cpXA6L7E3/I6J2A0BpcjFbR3YEI=",
|
||||
"yarn_hash": "02vchjx17h6kk268pwrjqmrri0wa6vrljm7y5s23hwzir4v86slq",
|
||||
"owner": "gitlab-org",
|
||||
"repo": "gitlab",
|
||||
"rev": "v16.8.1-ee",
|
||||
"rev": "v16.9.2-ee",
|
||||
"passthru": {
|
||||
"GITALY_SERVER_VERSION": "16.8.1",
|
||||
"GITLAB_PAGES_VERSION": "16.8.1",
|
||||
"GITALY_SERVER_VERSION": "16.9.2",
|
||||
"GITLAB_PAGES_VERSION": "16.9.2",
|
||||
"GITLAB_SHELL_VERSION": "14.33.0",
|
||||
"GITLAB_ELASTICSEARCH_INDEXER_VERSION": "4.6.0",
|
||||
"GITLAB_WORKHORSE_VERSION": "16.8.1"
|
||||
"GITLAB_ELASTICSEARCH_INDEXER_VERSION": "4.7.0",
|
||||
"GITLAB_WORKHORSE_VERSION": "16.9.2"
|
||||
}
|
||||
}
|
||||
|
@ -49,7 +49,7 @@ let
|
||||
cp Cargo.lock $out
|
||||
'';
|
||||
};
|
||||
hash = "sha256-I5w/roDgnRe5eyXo0wiRcoWPpXEtpL3kOl9eDg99t/w=";
|
||||
hash = "sha256-csasA2RH1vwRdF/9/BpFmh0AKsP3xtGmrhCx6mbVf6k=";
|
||||
};
|
||||
|
||||
dontBuild = false;
|
||||
|
@ -6,7 +6,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "16.8.1";
|
||||
version = "16.9.2";
|
||||
package_version = "v${lib.versions.major version}";
|
||||
gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}";
|
||||
|
||||
@ -18,10 +18,10 @@ let
|
||||
owner = "gitlab-org";
|
||||
repo = "gitaly";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-yR8O9F6THymKKHbnfh67NhEcNNBz7XHja/fpeTmVoe0=";
|
||||
hash = "sha256-YlSZq7+YtV9mhZDoNZ7QStbZLQ/Vtt8H2ZW84ONvCq8=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-AkL/BbCrqgXyvfiMxzMIXeZwh5aFL2a2+myk/4YXMNc=";
|
||||
vendorHash = "sha256-aqwdeBjR8IGa1DsAXY1h7vq7OkuTgoDim5m40YKlcmo=";
|
||||
|
||||
ldflags = [ "-X ${gitaly_package}/internal/version.version=${version}" "-X ${gitaly_package}/internal/version.moduleVersion=${version}" ];
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gitlab-container-registry";
|
||||
version = "3.88.0";
|
||||
version = "3.90.0";
|
||||
rev = "v${version}-gitlab";
|
||||
|
||||
# nixpkgs-update: no auto update
|
||||
@ -10,10 +10,10 @@ buildGoModule rec {
|
||||
owner = "gitlab-org";
|
||||
repo = "container-registry";
|
||||
inherit rev;
|
||||
hash = "sha256-egslb+8+RsDjpL5xQpdCU3QwFH59grRCkODQnAkZe/0=";
|
||||
hash = "sha256-bHRvvmVQFsdgYmVVucu1warn+SvCoIVh+C/U2uwi12E=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-IFXIr0xYJCKM5VUHQV+4S/+FEAhFEjbMaU+9JWIh8cA=";
|
||||
vendorHash = "sha256-Zv5Xz1T/ZUM/kyEgZJKbDuIN2nufoHVAn4kD3SuvJCg=";
|
||||
|
||||
patches = [
|
||||
./Disable-inmemory-storage-driver-test.patch
|
||||
|
@ -2,17 +2,17 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gitlab-elasticsearch-indexer";
|
||||
version = "4.6.0";
|
||||
version = "4.7.0";
|
||||
|
||||
# nixpkgs-update: no auto update
|
||||
src = fetchFromGitLab {
|
||||
owner = "gitlab-org";
|
||||
repo = "gitlab-elasticsearch-indexer";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-HlT3Uj/DWbyK4xGq7SjKjZ90sww6oMiMDo05mtv6rTA=";
|
||||
sha256 = "sha256-xkCG8PyOXQl2xqsq3INqYWGdcJpJgRsi/hB9creGTSM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-YUH/agSy/shHmHRXlfDtgumbka6BjX5NTxgvlNJS4hQ=";
|
||||
vendorHash = "sha256-1eyIRlrgEQ6iiM2tom5S92BlsyaPVKZzSU3+Mmdxi+4=";
|
||||
|
||||
buildInputs = [ icu ];
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
@ -2,17 +2,17 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gitlab-pages";
|
||||
version = "16.8.1";
|
||||
version = "16.9.2";
|
||||
|
||||
# nixpkgs-update: no auto update
|
||||
src = fetchFromGitLab {
|
||||
owner = "gitlab-org";
|
||||
repo = "gitlab-pages";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Wj15GHm+5Xd5wq4C3dH+i94jh7pecHM6KCDugLm5YAA=";
|
||||
hash = "sha256-1ygIMatPcqvhjN5Zkuk0WXd9iW6fv3bLK9EZsIII/WM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-9yogTSdEij/YwWGm3gz7jMn2AZcI+o7aEnjBvJ8E3vA=";
|
||||
vendorHash = "sha256-ZjIjGZaZhxa3OvdaA4qD+Qza604mxe1u+zAUtIAKouo=";
|
||||
subPackages = [ "." ];
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -5,7 +5,7 @@ in
|
||||
buildGoModule rec {
|
||||
pname = "gitlab-workhorse";
|
||||
|
||||
version = "16.8.1";
|
||||
version = "16.9.2";
|
||||
|
||||
# nixpkgs-update: no auto update
|
||||
src = fetchFromGitLab {
|
||||
@ -17,7 +17,7 @@ buildGoModule rec {
|
||||
|
||||
sourceRoot = "${src.name}/workhorse";
|
||||
|
||||
vendorHash = "sha256-OcdfanSlH1ZUmKlhzMOD3oNySx1o92Is7EDf1Z3953A=";
|
||||
vendorHash = "sha256-RJ/CT8p1DpxmZcJLBeMDG77Zsn0Q6MiXsDcMK/LM2DA=";
|
||||
buildInputs = [ git ];
|
||||
ldflags = [ "-X main.Version=${version}" ];
|
||||
doCheck = false;
|
||||
|
@ -28,7 +28,7 @@ gem 'rails', '~> 7.0.8' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'activerecord-gitlab', path: 'gems/activerecord-gitlab' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'bootsnap', '~> 1.17.1', require: false # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'bootsnap', '~> 1.18.3', require: false # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'openssl', '~> 3.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'ipaddr', '~> 1.2.5' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
@ -141,11 +141,11 @@ gem 'grape-path-helpers', '~> 2.0.0', feature_category: :api
|
||||
gem 'rack-cors', '~> 2.0.1', require: 'rack/cors' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
# GraphQL API
|
||||
gem 'graphql', '~> 2.0.27', feature_category: :api
|
||||
gem 'graphql', '~> 2.2.5', feature_category: :api
|
||||
gem 'graphql-docs', '~> 4.0.0', group: [:development, :test], feature_category: :api
|
||||
gem 'graphiql-rails', '~> 1.8.0', feature_category: :api
|
||||
gem 'apollo_upload_server', '~> 2.1.5', feature_category: :api
|
||||
gem 'graphlient', '~> 0.5.0', feature_category: :importers # Used by BulkImport feature (group::import)
|
||||
gem 'graphlient', '~> 0.6.0', feature_category: :importers # Used by BulkImport feature (group::import)
|
||||
|
||||
# Generate Fake data
|
||||
gem 'ffaker', '~> 2.10' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
@ -196,6 +196,10 @@ gem 'google-apis-serviceusage_v1', '~> 0.28.0' # rubocop:todo Gemfile/MissingFea
|
||||
gem 'google-apis-sqladmin_v1beta4', '~> 0.41.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'google-apis-androidpublisher_v3', '~> 0.34.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'googleauth', '~> 1.8.1', feature_category: :shared
|
||||
gem 'google-cloud-artifact_registry-v1', '~> 0.11.0', feature_category: :shared
|
||||
gem 'google-cloud-compute-v1', '~> 2.6.0', feature_category: :shared
|
||||
|
||||
# Seed data
|
||||
gem 'seed-fu', '~> 2.3.7' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
@ -203,9 +207,9 @@ gem 'seed-fu', '~> 2.3.7' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'elasticsearch-model', '~> 7.2' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'elasticsearch-rails', '~> 7.2', require: 'elasticsearch/rails/instrumentation' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'elasticsearch-api', '7.13.3' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'aws-sdk-core', '~> 3.190.2' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'aws-sdk-core', '~> 3.191.1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'aws-sdk-cloudformation', '~> 1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'aws-sdk-s3', '~> 1.142.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'aws-sdk-s3', '~> 1.143.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'faraday_middleware-aws-sigv4', '~>0.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'typhoeus', '~> 1.4.0' # Used with Elasticsearch to support http keep-alive connections # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
@ -226,7 +230,7 @@ gem 'asciidoctor-kroki', '~> 0.8.0', require: false # rubocop:todo Gemfile/Missi
|
||||
gem 'rouge', '~> 4.2.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'truncato', '~> 0.7.12' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'nokogiri', '~> 1.16' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'gitlab-glfm-markdown', '~> 0.0.11', feature_category: :team_planning
|
||||
gem 'gitlab-glfm-markdown', '~> 0.0.12', feature_category: :team_planning
|
||||
|
||||
# Calendar rendering
|
||||
gem 'icalendar' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
@ -252,7 +256,7 @@ gem 'state_machines-activerecord', '~> 0.8.0' # rubocop:todo Gemfile/MissingFeat
|
||||
gem 'acts-as-taggable-on', '~> 10.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
# Background jobs
|
||||
gem 'sidekiq', '~> 7.1.6' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'sidekiq', path: 'vendor/gems/sidekiq-7.1.6', require: 'sidekiq' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'sidekiq-cron', '~> 1.12.0', feature_category: :shared
|
||||
gem 'gitlab-sidekiq-fetcher', path: 'vendor/gems/sidekiq-reliable-fetch', require: 'sidekiq-reliable-fetch' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
@ -269,11 +273,11 @@ gem 'rainbow', '~> 3.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'ruby-progressbar', '~> 1.10' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
# Linear-time regex library for untrusted regular expressions
|
||||
gem 're2', '2.6.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 're2', '2.7.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
# Misc
|
||||
|
||||
gem 'semver_dialects', '~> 1.5', feature_category: :static_application_security_testing
|
||||
gem 'semver_dialects', '~> 1.6.1', feature_category: :static_application_security_testing
|
||||
gem 'version_sorter', '~> 2.3' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'csv_builder', path: 'gems/csv_builder' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
@ -336,7 +340,8 @@ gem 'gitlab_chronic_duration', '~> 0.12' # rubocop:todo Gemfile/MissingFeatureCa
|
||||
|
||||
gem 'rack-proxy', '~> 0.7.7' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'sassc-rails', '~> 2.1.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'sassc-rails', '~> 2.1.0', feature_category: :shared, require: false
|
||||
gem 'cssbundling-rails', '1.3.3', feature_category: :shared, require: false
|
||||
gem 'autoprefixer-rails', '10.2.5.1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'terser', '1.0.2' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
@ -347,7 +352,7 @@ gem 'gon', '~> 6.4.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'request_store', '~> 1.5.1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'base32', '~> 0.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'gitlab-license', '~> 2.3' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'gitlab-license', '~> 2.4', feature_category: :shared
|
||||
|
||||
# Protect against bruteforcing
|
||||
gem 'rack-attack', '~> 6.7.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
@ -360,14 +365,14 @@ gem 'sentry-sidekiq', '~> 5.10.0', feature_category: :error_tracking
|
||||
|
||||
# PostgreSQL query parsing
|
||||
#
|
||||
gem 'pg_query', '~> 4.2.3' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'pg_query', '~> 5.1.0', feature_category: :database
|
||||
|
||||
gem 'gitlab-schema-validation', path: 'gems/gitlab-schema-validation' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'gitlab-http', path: 'gems/gitlab-http' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'premailer-rails', '~> 1.10.3' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'gitlab-labkit', '~> 0.35.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'gitlab-labkit', '~> 0.35.1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'thrift', '>= 0.16.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
# I18n
|
||||
@ -388,12 +393,12 @@ gem 'snowplow-tracker', '~> 0.8.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
# Metrics
|
||||
gem 'webrick', '~> 1.8.1', require: false # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'prometheus-client-mmap', '~> 1.1', require: 'prometheus/client' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'prometheus-client-mmap', '~> 1.1', '>= 1.1.1', require: 'prometheus/client' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'warning', '~> 1.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
group :development do
|
||||
gem 'lefthook', '~> 1.5.5', require: false, feature_category: :tooling
|
||||
gem 'lefthook', '~> 1.5.6', require: false, feature_category: :tooling
|
||||
gem 'rubocop', feature_category: :tooling
|
||||
gem 'solargraph', '~> 0.47.2', require: false # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
@ -407,7 +412,7 @@ group :development do
|
||||
|
||||
gem 'listen', '~> 3.7' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'ruby-lsp', "~> 0.13.2", require: false, feature_category: :tooling
|
||||
gem 'ruby-lsp', "~> 0.13.3", require: false, feature_category: :tooling
|
||||
|
||||
gem 'ruby-lsp-rails', "~> 0.2.8", feature_category: :tooling
|
||||
|
||||
@ -498,15 +503,15 @@ group :test do
|
||||
gem 'rspec-parameterized', '~> 1.0', require: false, feature_category: :tooling
|
||||
gem 'os', '~> 1.1', feature_category: :tooling
|
||||
|
||||
gem 'capybara', '~> 3.39', '>= 3.39.2' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'capybara', '~> 3.40' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'capybara-screenshot', '~> 1.0.26' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'selenium-webdriver', '~> 4.16' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'selenium-webdriver', '~> 4.17' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'graphlyte', '~> 1.0.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'shoulda-matchers', '~> 5.1.0', require: false # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'email_spec', '~> 2.2.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'webmock', '~> 3.19.1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'webmock', '~> 3.20.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'rails-controller-testing' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'concurrent-ruby', '~> 1.1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'test-prof', '~> 1.3.1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
@ -517,10 +522,10 @@ group :test do
|
||||
# Moved in `test` because https://gitlab.com/gitlab-org/gitlab/-/issues/217527
|
||||
gem 'derailed_benchmarks', require: false # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'gitlab_quality-test_tooling', '~> 1.11.0', require: false, feature_category: :tooling
|
||||
gem 'gitlab_quality-test_tooling', '~> 1.14.2', require: false, feature_category: :tooling
|
||||
end
|
||||
|
||||
gem 'octokit', '~> 6.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'octokit', '~> 8.0', feature_category: :importers
|
||||
|
||||
gem 'gitlab-mail_room', '~> 0.0.24', require: 'mail_room', feature_category: :shared
|
||||
|
||||
@ -552,14 +557,14 @@ gem 'ssh_data', '~> 1.3' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'spamcheck', '~> 1.3.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
# Gitaly GRPC protocol definitions
|
||||
gem 'gitaly', '~> 16.7.0-rc1', feature_category: :gitaly
|
||||
gem 'gitaly', '~> 16.9.0-rc3', feature_category: :gitaly
|
||||
|
||||
# KAS GRPC protocol definitions
|
||||
gem 'kas-grpc', '~> 0.3.0', feature_category: :deployment_management
|
||||
gem 'kas-grpc', '~> 0.4.0', feature_category: :deployment_management
|
||||
|
||||
gem 'grpc', '~> 1.58.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'grpc', '~> 1.60.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'google-protobuf', '~> 3.25', '>= 3.25.2' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
gem 'google-protobuf', '~> 3.25', '>= 3.25.1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'toml-rb', '~> 2.2.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
@ -634,7 +639,7 @@ gem 'cvss-suite', '~> 3.0.1', require: 'cvss_suite' # rubocop:todo Gemfile/Missi
|
||||
gem 'arr-pm', '~> 0.0.12' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
# Remote Development
|
||||
gem 'devfile', '~> 0.0.24.pre.alpha1', feature_category: :remote_development
|
||||
gem 'devfile', '~> 0.0.25.pre.alpha1', feature_category: :remote_development
|
||||
|
||||
# Apple plist parsing
|
||||
gem 'CFPropertyList', '~> 3.0.0' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
@ -652,4 +657,4 @@ gem 'net-http', '= 0.1.1' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'duo_api', '~> 1.3' # rubocop:todo Gemfile/MissingFeatureCategory
|
||||
|
||||
gem 'gitlab-sdk', feature_category: :application_instrumentation
|
||||
gem 'gitlab-sdk', '~> 0.3.0', feature_category: :application_instrumentation
|
||||
|
@ -34,6 +34,7 @@ PATH
|
||||
specs:
|
||||
gitlab-housekeeper (0.1.0)
|
||||
activesupport
|
||||
awesome_print
|
||||
httparty
|
||||
rubocop
|
||||
|
||||
@ -177,6 +178,15 @@ PATH
|
||||
nokogiri (>= 1.4.4)
|
||||
omniauth (~> 2.0)
|
||||
|
||||
PATH
|
||||
remote: vendor/gems/sidekiq-7.1.6
|
||||
specs:
|
||||
sidekiq (7.1.6)
|
||||
concurrent-ruby (< 2)
|
||||
connection_pool (>= 2.3.0)
|
||||
rack (>= 2.2.4)
|
||||
redis-client (>= 0.14.0)
|
||||
|
||||
PATH
|
||||
remote: vendor/gems/sidekiq-reliable-fetch
|
||||
specs:
|
||||
@ -301,7 +311,7 @@ GEM
|
||||
aws-sdk-cloudformation (1.41.0)
|
||||
aws-sdk-core (~> 3, >= 3.99.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-core (3.190.2)
|
||||
aws-sdk-core (3.191.1)
|
||||
aws-eventstream (~> 1, >= 1.3.0)
|
||||
aws-partitions (~> 1, >= 1.651.0)
|
||||
aws-sigv4 (~> 1.8)
|
||||
@ -309,8 +319,8 @@ GEM
|
||||
aws-sdk-kms (1.76.0)
|
||||
aws-sdk-core (~> 3, >= 3.188.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-s3 (1.142.0)
|
||||
aws-sdk-core (~> 3, >= 3.189.0)
|
||||
aws-sdk-s3 (1.143.0)
|
||||
aws-sdk-core (~> 3, >= 3.191.0)
|
||||
aws-sdk-kms (~> 1)
|
||||
aws-sigv4 (~> 1.8)
|
||||
aws-sigv4 (1.8.0)
|
||||
@ -337,6 +347,7 @@ GEM
|
||||
babosa (2.0.0)
|
||||
backport (1.2.0)
|
||||
base32 (0.3.2)
|
||||
base64 (0.2.0)
|
||||
batch-loader (2.0.1)
|
||||
bcrypt (3.1.18)
|
||||
benchmark (0.2.0)
|
||||
@ -353,7 +364,7 @@ GEM
|
||||
bindata (2.4.11)
|
||||
binding_of_caller (1.0.0)
|
||||
debug_inspector (>= 0.0.1)
|
||||
bootsnap (1.17.1)
|
||||
bootsnap (1.18.3)
|
||||
msgpack (~> 1.2)
|
||||
browser (5.3.1)
|
||||
builder (3.2.4)
|
||||
@ -364,11 +375,11 @@ GEM
|
||||
bundler (>= 1.2.0, < 3)
|
||||
thor (~> 1.0)
|
||||
byebug (11.1.3)
|
||||
capybara (3.39.2)
|
||||
capybara (3.40.0)
|
||||
addressable
|
||||
matrix
|
||||
mini_mime (>= 0.1.3)
|
||||
nokogiri (~> 1.8)
|
||||
nokogiri (~> 1.11)
|
||||
rack (>= 1.6.0)
|
||||
rack-test (>= 0.6.3)
|
||||
regexp_parser (>= 1.5, < 3.0)
|
||||
@ -382,8 +393,7 @@ GEM
|
||||
mime-types (>= 1.16)
|
||||
ssrf_filter (~> 1.0, < 1.1.0)
|
||||
cbor (0.5.9.6)
|
||||
character_set (1.4.1)
|
||||
sorted_set (~> 1.0)
|
||||
character_set (1.8.0)
|
||||
charlock_holmes (0.7.7)
|
||||
chef-config (18.3.0)
|
||||
addressable
|
||||
@ -425,8 +435,10 @@ GEM
|
||||
git
|
||||
css_parser (1.14.0)
|
||||
addressable
|
||||
cssbundling-rails (1.3.3)
|
||||
railties (>= 6.0.0)
|
||||
cvss-suite (3.0.1)
|
||||
danger (9.3.1)
|
||||
danger (9.4.2)
|
||||
claide (~> 1.0)
|
||||
claide-plugins (>= 0.9.2)
|
||||
colored2 (~> 3.1)
|
||||
@ -437,7 +449,7 @@ GEM
|
||||
kramdown (~> 2.3)
|
||||
kramdown-parser-gfm (~> 1.0)
|
||||
no_proxy_fix
|
||||
octokit (~> 6.0)
|
||||
octokit (>= 4.0)
|
||||
terminal-table (>= 1, < 4)
|
||||
danger-gitlab (8.0.0)
|
||||
danger
|
||||
@ -471,7 +483,7 @@ GEM
|
||||
thor (>= 0.19, < 2)
|
||||
descendants_tracker (0.0.4)
|
||||
thread_safe (~> 0.3, >= 0.3.1)
|
||||
devfile (0.0.24.pre.alpha1)
|
||||
devfile (0.0.25.pre.alpha1)
|
||||
device_detector (1.0.0)
|
||||
devise (4.9.3)
|
||||
bcrypt (~> 3.0)
|
||||
@ -651,7 +663,7 @@ GEM
|
||||
rspec-core (~> 3.0)
|
||||
ruby-progressbar (~> 1.4)
|
||||
fuzzyurl (0.9.0)
|
||||
gapic-common (0.18.0)
|
||||
gapic-common (0.20.0)
|
||||
faraday (>= 1.9, < 3.a)
|
||||
faraday-retry (>= 1.0, < 3.a)
|
||||
google-protobuf (~> 3.14)
|
||||
@ -673,7 +685,7 @@ GEM
|
||||
git (1.18.0)
|
||||
addressable (~> 2.8)
|
||||
rchardet (~> 1.8)
|
||||
gitaly (16.7.0.pre.rc1)
|
||||
gitaly (16.9.0.pre.rc3)
|
||||
grpc (~> 1.0)
|
||||
gitlab (4.19.0)
|
||||
httparty (~> 0.20)
|
||||
@ -693,9 +705,9 @@ GEM
|
||||
fog-core (= 2.1.0)
|
||||
fog-json (~> 1.2.0)
|
||||
mime-types
|
||||
gitlab-glfm-markdown (0.0.11)
|
||||
gitlab-glfm-markdown (0.0.12)
|
||||
rb_sys (~> 0.9.86)
|
||||
gitlab-labkit (0.35.0)
|
||||
gitlab-labkit (0.35.1)
|
||||
actionpack (>= 5.0.0, < 8.0.0)
|
||||
activesupport (>= 5.0.0, < 8.0.0)
|
||||
grpc (>= 1.37)
|
||||
@ -703,7 +715,7 @@ GEM
|
||||
opentracing (~> 0.4)
|
||||
pg_query (>= 4.2.3, < 6.0)
|
||||
redis (> 3.0.0, < 6.0.0)
|
||||
gitlab-license (2.3.0)
|
||||
gitlab-license (2.4.0)
|
||||
gitlab-mail_room (0.0.24)
|
||||
jwt (>= 2.0)
|
||||
net-imap (>= 0.2.1)
|
||||
@ -712,7 +724,7 @@ GEM
|
||||
redis-namespace (>= 1.8.2)
|
||||
gitlab-markup (1.9.0)
|
||||
gitlab-net-dns (0.9.2)
|
||||
gitlab-sdk (0.2.3)
|
||||
gitlab-sdk (0.3.0)
|
||||
activesupport (>= 5.2.0)
|
||||
rake (~> 13.0)
|
||||
snowplow-tracker (~> 0.8.0)
|
||||
@ -729,14 +741,15 @@ GEM
|
||||
omniauth (>= 1.3, < 3)
|
||||
pyu-ruby-sasl (>= 0.0.3.3, < 0.1)
|
||||
rubyntlm (~> 0.5)
|
||||
gitlab_quality-test_tooling (1.11.0)
|
||||
activesupport (>= 6.1, < 7.2)
|
||||
gitlab_quality-test_tooling (1.14.2)
|
||||
activesupport (>= 6.1, < 7.1)
|
||||
amatch (~> 0.4.1)
|
||||
gitlab (~> 4.19)
|
||||
http (~> 5.0)
|
||||
nokogiri (~> 1.10)
|
||||
parallel (>= 1, < 2)
|
||||
rainbow (>= 3, < 4)
|
||||
rspec-parameterized (~> 1.0.0)
|
||||
table_print (= 1.5.7)
|
||||
zeitwerk (>= 2, < 3)
|
||||
globalid (1.1.0)
|
||||
@ -783,12 +796,27 @@ GEM
|
||||
google-apis-core (>= 0.9.1, < 2.a)
|
||||
google-apis-storage_v1 (0.29.0)
|
||||
google-apis-core (>= 0.11.0, < 2.a)
|
||||
google-cloud-artifact_registry-v1 (0.11.0)
|
||||
gapic-common (>= 0.20.0, < 2.a)
|
||||
google-cloud-errors (~> 1.0)
|
||||
google-cloud-location (>= 0.4, < 2.a)
|
||||
grpc-google-iam-v1 (~> 1.1)
|
||||
google-cloud-common (1.1.0)
|
||||
google-protobuf (~> 3.14)
|
||||
googleapis-common-protos-types (~> 1.2)
|
||||
google-cloud-compute-v1 (2.6.0)
|
||||
gapic-common (>= 0.20.0, < 2.a)
|
||||
google-cloud-common (~> 1.0)
|
||||
google-cloud-errors (~> 1.0)
|
||||
google-cloud-core (1.6.0)
|
||||
google-cloud-env (~> 1.0)
|
||||
google-cloud-errors (~> 1.0)
|
||||
google-cloud-env (1.6.0)
|
||||
faraday (>= 0.17.3, < 3.0)
|
||||
google-cloud-errors (1.3.0)
|
||||
google-cloud-location (0.6.0)
|
||||
gapic-common (>= 0.20.0, < 2.a)
|
||||
google-cloud-errors (~> 1.0)
|
||||
google-cloud-profiler-v2 (0.4.0)
|
||||
gapic-common (>= 0.18.0, < 2.a)
|
||||
google-cloud-errors (~> 1.0)
|
||||
@ -807,10 +835,9 @@ GEM
|
||||
grpc (~> 1.27)
|
||||
googleapis-common-protos-types (1.5.0)
|
||||
google-protobuf (~> 3.14)
|
||||
googleauth (1.3.0)
|
||||
googleauth (1.8.1)
|
||||
faraday (>= 0.17.3, < 3.a)
|
||||
jwt (>= 1.4, < 3.0)
|
||||
memoist (~> 0.16)
|
||||
multi_json (~> 1.11)
|
||||
os (>= 0.9, < 2.0)
|
||||
signet (>= 0.16, < 2.a)
|
||||
@ -843,13 +870,14 @@ GEM
|
||||
graphiql-rails (1.8.0)
|
||||
railties
|
||||
sprockets-rails
|
||||
graphlient (0.5.0)
|
||||
graphlient (0.6.0)
|
||||
faraday (>= 1.0)
|
||||
faraday_middleware
|
||||
graphql-client
|
||||
graphlyte (1.0.0)
|
||||
graphql (2.0.27)
|
||||
graphql-client (0.18.0)
|
||||
graphql (2.2.5)
|
||||
racc (~> 1.4)
|
||||
graphql-client (0.19.0)
|
||||
activesupport (>= 3.0)
|
||||
graphql
|
||||
graphql-docs (4.0.0)
|
||||
@ -860,9 +888,13 @@ GEM
|
||||
gemoji (~> 3.0)
|
||||
graphql (~> 2.0)
|
||||
html-pipeline (~> 2.14, >= 2.14.3)
|
||||
grpc (1.58.0)
|
||||
google-protobuf (~> 3.23)
|
||||
grpc (1.60.0)
|
||||
google-protobuf (~> 3.25)
|
||||
googleapis-common-protos-types (~> 1.0)
|
||||
grpc-google-iam-v1 (1.5.0)
|
||||
google-protobuf (~> 3.18)
|
||||
googleapis-common-protos (~> 1.4)
|
||||
grpc (~> 1.41)
|
||||
gssapi (1.3.1)
|
||||
ffi (>= 1.0.1)
|
||||
guard (2.16.2)
|
||||
@ -977,7 +1009,7 @@ GEM
|
||||
activerecord
|
||||
kaminari-core (= 1.2.2)
|
||||
kaminari-core (1.2.2)
|
||||
kas-grpc (0.3.0)
|
||||
kas-grpc (0.4.0)
|
||||
grpc (~> 1.0)
|
||||
knapsack (1.21.1)
|
||||
rake
|
||||
@ -993,7 +1025,7 @@ GEM
|
||||
language_server-protocol (3.17.0.3)
|
||||
launchy (2.5.0)
|
||||
addressable (~> 2.7)
|
||||
lefthook (1.5.5)
|
||||
lefthook (1.5.6)
|
||||
letter_opener (1.7.0)
|
||||
launchy (~> 2.2)
|
||||
letter_opener_web (2.0.0)
|
||||
@ -1009,9 +1041,9 @@ GEM
|
||||
tomlrb (>= 1.3, < 2.1)
|
||||
with_env (= 1.1.0)
|
||||
xml-simple (~> 1.1.9)
|
||||
licensee (9.16.0)
|
||||
licensee (9.16.1)
|
||||
dotenv (~> 2.0)
|
||||
octokit (>= 4.20, < 7.0)
|
||||
octokit (>= 4.20, < 9.0)
|
||||
reverse_markdown (>= 1, < 3)
|
||||
rugged (>= 0.24, < 2.0)
|
||||
thor (>= 0.19, < 2.0)
|
||||
@ -1055,7 +1087,6 @@ GEM
|
||||
actionpack (>= 5.2)
|
||||
activerecord (>= 5.2)
|
||||
matrix (0.4.2)
|
||||
memoist (0.16.2)
|
||||
memory_profiler (1.0.1)
|
||||
method_source (1.0.0)
|
||||
mime-types (3.5.1)
|
||||
@ -1124,7 +1155,7 @@ GEM
|
||||
rack (>= 1.2, < 4)
|
||||
snaky_hash (~> 2.0)
|
||||
version_gem (~> 1.1)
|
||||
octokit (6.1.1)
|
||||
octokit (8.0.0)
|
||||
faraday (>= 1, < 3)
|
||||
sawyer (~> 0.9)
|
||||
ohai (18.1.3)
|
||||
@ -1240,7 +1271,7 @@ GEM
|
||||
peek (1.1.0)
|
||||
railties (>= 4.0.0)
|
||||
pg (1.5.4)
|
||||
pg_query (4.2.3)
|
||||
pg_query (5.1.0)
|
||||
google-protobuf (>= 3.22.3)
|
||||
plist (3.7.0)
|
||||
png_quantizator (0.2.1)
|
||||
@ -1259,7 +1290,7 @@ GEM
|
||||
coderay
|
||||
parser
|
||||
unparser
|
||||
prometheus-client-mmap (1.1.0)
|
||||
prometheus-client-mmap (1.1.1)
|
||||
rb_sys (~> 0.9.86)
|
||||
protocol (2.0.0)
|
||||
ruby_parser (~> 3.0)
|
||||
@ -1347,9 +1378,8 @@ GEM
|
||||
ffi (>= 1.0.6)
|
||||
msgpack (>= 0.4.3)
|
||||
optimist (>= 3.0.0)
|
||||
rbtree (0.4.6)
|
||||
rchardet (1.8.0)
|
||||
re2 (2.6.0)
|
||||
re2 (2.7.0)
|
||||
mini_portile2 (~> 2.8.5)
|
||||
recaptcha (5.12.3)
|
||||
json
|
||||
@ -1475,7 +1505,7 @@ GEM
|
||||
ruby-fogbugz (0.3.0)
|
||||
crack (~> 0.4)
|
||||
multipart-post (~> 2.0)
|
||||
ruby-lsp (0.13.2)
|
||||
ruby-lsp (0.13.3)
|
||||
language_server-protocol (~> 3.17.0)
|
||||
prism (>= 0.19.0, < 0.20)
|
||||
sorbet-runtime (>= 0.5.5685)
|
||||
@ -1497,7 +1527,8 @@ GEM
|
||||
rexml
|
||||
ruby-statistics (3.0.0)
|
||||
ruby2_keywords (0.0.5)
|
||||
ruby_parser (3.20.3)
|
||||
ruby_parser (3.21.0)
|
||||
racc (~> 1.5)
|
||||
sexp_processor (~> 4.16)
|
||||
rubyntlm (0.6.3)
|
||||
rubypants (0.2.0)
|
||||
@ -1511,7 +1542,7 @@ GEM
|
||||
nokogiri (>= 1.12.0)
|
||||
sassc (2.4.0)
|
||||
ffi (~> 1.9)
|
||||
sassc-rails (2.1.0)
|
||||
sassc-rails (2.1.2)
|
||||
railties (>= 4.0.0)
|
||||
sassc (>= 2.0)
|
||||
sprockets (> 3.0)
|
||||
@ -1524,11 +1555,12 @@ GEM
|
||||
seed-fu (2.3.7)
|
||||
activerecord (>= 3.1)
|
||||
activesupport (>= 3.1)
|
||||
selenium-webdriver (4.16.0)
|
||||
selenium-webdriver (4.17.0)
|
||||
base64 (~> 0.2)
|
||||
rexml (~> 3.2, >= 3.2.5)
|
||||
rubyzip (>= 1.2.2, < 3.0)
|
||||
websocket (~> 1.0)
|
||||
semver_dialects (1.5.0)
|
||||
semver_dialects (1.6.1)
|
||||
deb_version (~> 1.0.1)
|
||||
pastel (~> 0.8.0)
|
||||
thor (~> 1.3)
|
||||
@ -1543,22 +1575,16 @@ GEM
|
||||
sentry-sidekiq (5.10.0)
|
||||
sentry-ruby (~> 5.10.0)
|
||||
sidekiq (>= 3.0)
|
||||
set (1.0.2)
|
||||
sexp_processor (4.17.0)
|
||||
sexp_processor (4.17.1)
|
||||
shellany (0.0.1)
|
||||
shoulda-matchers (5.1.0)
|
||||
activesupport (>= 5.2.0)
|
||||
sidekiq (7.1.6)
|
||||
concurrent-ruby (< 2)
|
||||
connection_pool (>= 2.3.0)
|
||||
rack (>= 2.2.4)
|
||||
redis-client (>= 0.14.0)
|
||||
sidekiq-cron (1.12.0)
|
||||
fugit (~> 1.8)
|
||||
globalid (>= 1.0.1)
|
||||
sidekiq (>= 6)
|
||||
sigdump (0.2.4)
|
||||
signet (0.17.0)
|
||||
signet (0.18.0)
|
||||
addressable (~> 2.8)
|
||||
faraday (>= 0.17.5, < 3.a)
|
||||
jwt (>= 1.5, < 3.0)
|
||||
@ -1597,9 +1623,6 @@ GEM
|
||||
tilt (~> 2.0)
|
||||
yard (~> 0.9, >= 0.9.24)
|
||||
sorbet-runtime (0.5.11144)
|
||||
sorted_set (1.0.3)
|
||||
rbtree
|
||||
set (~> 1.0)
|
||||
spamcheck (1.3.0)
|
||||
grpc (~> 1.0)
|
||||
spring (4.1.0)
|
||||
@ -1767,7 +1790,7 @@ GEM
|
||||
webfinger (1.2.0)
|
||||
activesupport
|
||||
httpclient (>= 2.4)
|
||||
webmock (3.19.1)
|
||||
webmock (3.20.0)
|
||||
addressable (>= 2.8.0)
|
||||
crack (>= 0.3.2)
|
||||
hashdiff (>= 0.4.0, < 2.0.0)
|
||||
@ -1815,8 +1838,8 @@ DEPENDENCIES
|
||||
autoprefixer-rails (= 10.2.5.1)
|
||||
awesome_print
|
||||
aws-sdk-cloudformation (~> 1)
|
||||
aws-sdk-core (~> 3.190.2)
|
||||
aws-sdk-s3 (~> 1.142.0)
|
||||
aws-sdk-core (~> 3.191.1)
|
||||
aws-sdk-s3 (~> 1.143.0)
|
||||
axe-core-rspec (~> 4.8.0)
|
||||
babosa (~> 2.0)
|
||||
base32 (~> 0.3.0)
|
||||
@ -1825,12 +1848,12 @@ DEPENDENCIES
|
||||
benchmark-ips (~> 2.11.0)
|
||||
benchmark-memory (~> 0.1)
|
||||
better_errors (~> 2.10.1)
|
||||
bootsnap (~> 1.17.1)
|
||||
bootsnap (~> 1.18.3)
|
||||
browser (~> 5.3.1)
|
||||
bullet (~> 7.1.2)
|
||||
bundler-audit (~> 0.9.1)
|
||||
bundler-checksum (~> 0.1.0)!
|
||||
capybara (~> 3.39, >= 3.39.2)
|
||||
capybara (~> 3.40)
|
||||
capybara-screenshot (~> 1.0.26)
|
||||
carrierwave (~> 1.3)
|
||||
charlock_holmes (~> 0.7.7)
|
||||
@ -1843,6 +1866,7 @@ DEPENDENCIES
|
||||
countries (~> 4.0.0)
|
||||
creole (~> 0.5.0)
|
||||
crystalball (~> 0.7.0)
|
||||
cssbundling-rails (= 1.3.3)
|
||||
csv_builder!
|
||||
cvss-suite (~> 3.0.1)
|
||||
database_cleaner-active_record (~> 2.1.0)
|
||||
@ -1850,7 +1874,7 @@ DEPENDENCIES
|
||||
declarative_policy (~> 1.1.0)
|
||||
deprecation_toolkit (~> 1.5.1)
|
||||
derailed_benchmarks
|
||||
devfile (~> 0.0.24.pre.alpha1)
|
||||
devfile (~> 0.0.25.pre.alpha1)
|
||||
device_detector
|
||||
devise (~> 4.9.3)
|
||||
devise-pbkdf2-encryptable (~> 0.0.0)!
|
||||
@ -1885,17 +1909,17 @@ DEPENDENCIES
|
||||
fuubar (~> 2.2.0)
|
||||
gettext (~> 3.3)
|
||||
gettext_i18n_rails (~> 1.11.0)
|
||||
gitaly (~> 16.7.0.pre.rc1)
|
||||
gitaly (~> 16.9.0.pre.rc3)
|
||||
gitlab-backup-cli!
|
||||
gitlab-chronic (~> 0.10.5)
|
||||
gitlab-dangerfiles (~> 4.6.0)
|
||||
gitlab-experiment (~> 0.9.1)
|
||||
gitlab-fog-azure-rm (~> 1.8.0)
|
||||
gitlab-glfm-markdown (~> 0.0.11)
|
||||
gitlab-glfm-markdown (~> 0.0.12)
|
||||
gitlab-housekeeper!
|
||||
gitlab-http!
|
||||
gitlab-labkit (~> 0.35.0)
|
||||
gitlab-license (~> 2.3)
|
||||
gitlab-labkit (~> 0.35.1)
|
||||
gitlab-license (~> 2.4)
|
||||
gitlab-mail_room (~> 0.0.24)
|
||||
gitlab-markup (~> 1.9.0)
|
||||
gitlab-net-dns (~> 0.9.2)
|
||||
@ -1903,14 +1927,14 @@ DEPENDENCIES
|
||||
gitlab-rspec_flaky!
|
||||
gitlab-safe_request_store!
|
||||
gitlab-schema-validation!
|
||||
gitlab-sdk
|
||||
gitlab-sdk (~> 0.3.0)
|
||||
gitlab-secret_detection!
|
||||
gitlab-sidekiq-fetcher!
|
||||
gitlab-styles (~> 11.0.0)
|
||||
gitlab-utils!
|
||||
gitlab_chronic_duration (~> 0.12)
|
||||
gitlab_omniauth-ldap (~> 2.2.0)
|
||||
gitlab_quality-test_tooling (~> 1.11.0)
|
||||
gitlab_quality-test_tooling (~> 1.14.2)
|
||||
gon (~> 6.4.0)
|
||||
google-apis-androidpublisher_v3 (~> 0.34.0)
|
||||
google-apis-cloudbilling_v1 (~> 0.21.0)
|
||||
@ -1923,8 +1947,11 @@ DEPENDENCIES
|
||||
google-apis-serviceusage_v1 (~> 0.28.0)
|
||||
google-apis-sqladmin_v1beta4 (~> 0.41.0)
|
||||
google-apis-storage_v1 (~> 0.29)
|
||||
google-cloud-artifact_registry-v1 (~> 0.11.0)
|
||||
google-cloud-compute-v1 (~> 2.6.0)
|
||||
google-cloud-storage (~> 1.45.0)
|
||||
google-protobuf (~> 3.25, >= 3.25.2)
|
||||
google-protobuf (~> 3.25, >= 3.25.1)
|
||||
googleauth (~> 1.8.1)
|
||||
gpgme (~> 2.0.23)
|
||||
grape (~> 2.0.0)
|
||||
grape-entity (~> 0.10.0)
|
||||
@ -1933,11 +1960,11 @@ DEPENDENCIES
|
||||
grape-swagger-entity (~> 0.5.1)
|
||||
grape_logging (~> 1.8)
|
||||
graphiql-rails (~> 1.8.0)
|
||||
graphlient (~> 0.5.0)
|
||||
graphlient (~> 0.6.0)
|
||||
graphlyte (~> 1.0.0)
|
||||
graphql (~> 2.0.27)
|
||||
graphql (~> 2.2.5)
|
||||
graphql-docs (~> 4.0.0)
|
||||
grpc (~> 1.58.0)
|
||||
grpc (~> 1.60.0)
|
||||
gssapi (~> 1.3.1)
|
||||
guard-rspec
|
||||
haml_lint (~> 0.53)
|
||||
@ -1960,11 +1987,11 @@ DEPENDENCIES
|
||||
jsonb_accessor (~> 1.3.10)
|
||||
jwt (~> 2.5)
|
||||
kaminari (~> 1.2.2)
|
||||
kas-grpc (~> 0.3.0)
|
||||
kas-grpc (~> 0.4.0)
|
||||
knapsack (~> 1.21.1)
|
||||
kramdown (~> 2.3.1)
|
||||
kubeclient (~> 4.11.0)
|
||||
lefthook (~> 1.5.5)
|
||||
lefthook (~> 1.5.6)
|
||||
letter_opener_web (~> 2.0.0)
|
||||
license_finder (~> 7.0)
|
||||
licensee (~> 9.16)
|
||||
@ -1989,7 +2016,7 @@ DEPENDENCIES
|
||||
net-protocol (~> 0.1.3)
|
||||
nokogiri (~> 1.16)
|
||||
oauth2 (~> 2.0)
|
||||
octokit (~> 6.0)
|
||||
octokit (~> 8.0)
|
||||
ohai (~> 18.1)
|
||||
oj (~> 3.13.21)
|
||||
oj-introspect (~> 0.7)
|
||||
@ -2021,10 +2048,10 @@ DEPENDENCIES
|
||||
parslet (~> 1.8)
|
||||
peek (~> 1.1)
|
||||
pg (~> 1.5.4)
|
||||
pg_query (~> 4.2.3)
|
||||
pg_query (~> 5.1.0)
|
||||
png_quantizator (~> 0.2.1)
|
||||
premailer-rails (~> 1.10.3)
|
||||
prometheus-client-mmap (~> 1.1)
|
||||
prometheus-client-mmap (~> 1.1, >= 1.1.1)
|
||||
pry-byebug
|
||||
pry-rails (~> 0.3.9)
|
||||
pry-shell (~> 0.6.4)
|
||||
@ -2040,7 +2067,7 @@ DEPENDENCIES
|
||||
rails-i18n (~> 7.0)
|
||||
rainbow (~> 3.0)
|
||||
rbtrace (~> 0.4)
|
||||
re2 (= 2.6.0)
|
||||
re2 (= 2.7.0)
|
||||
recaptcha (~> 5.12)
|
||||
redis (~> 4.8.0)
|
||||
redis-actionpack (~> 5.4.0)
|
||||
@ -2059,7 +2086,7 @@ DEPENDENCIES
|
||||
rspec_profiling (~> 0.0.6)
|
||||
rubocop
|
||||
ruby-fogbugz (~> 0.3.0)
|
||||
ruby-lsp (~> 0.13.2)
|
||||
ruby-lsp (~> 0.13.3)
|
||||
ruby-lsp-rails (~> 0.2.8)
|
||||
ruby-lsp-rspec (~> 0.1.8)
|
||||
ruby-magic (~> 0.6)
|
||||
@ -2072,14 +2099,14 @@ DEPENDENCIES
|
||||
sassc-rails (~> 2.1.0)
|
||||
sd_notify (~> 0.1.0)
|
||||
seed-fu (~> 2.3.7)
|
||||
selenium-webdriver (~> 4.16)
|
||||
semver_dialects (~> 1.5)
|
||||
selenium-webdriver (~> 4.17)
|
||||
semver_dialects (~> 1.6.1)
|
||||
sentry-rails (~> 5.10.0)
|
||||
sentry-raven (~> 3.1)
|
||||
sentry-ruby (~> 5.10.0)
|
||||
sentry-sidekiq (~> 5.10.0)
|
||||
shoulda-matchers (~> 5.1.0)
|
||||
sidekiq (~> 7.1.6)
|
||||
sidekiq!
|
||||
sidekiq-cron (~> 1.12.0)
|
||||
sigdump (~> 0.2.4)
|
||||
simple_po_parser (~> 1.1.6)
|
||||
@ -2119,10 +2146,10 @@ DEPENDENCIES
|
||||
vmstat (~> 2.3.0)
|
||||
warning (~> 1.3.0)
|
||||
webauthn (~> 3.0)
|
||||
webmock (~> 3.19.1)
|
||||
webmock (~> 3.20.0)
|
||||
webrick (~> 1.8.1)
|
||||
wikicloth (= 0.8.1)
|
||||
yajl-ruby (~> 1.4.3)
|
||||
|
||||
BUNDLED WITH
|
||||
2.5.4
|
||||
2.5.5
|
||||
|
@ -411,10 +411,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0z9f8ypvpwj3sfqh3nlnhrq7ryhrv7isqzg370fba27zpy7bv5sx";
|
||||
sha256 = "0fy80878z21j8py03ddf1ycsndzmnmw4jkbzw1mlrglwav08yq7q";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.190.2";
|
||||
version = "3.191.1";
|
||||
};
|
||||
aws-sdk-kms = {
|
||||
dependencies = ["aws-sdk-core" "aws-sigv4"];
|
||||
@ -433,10 +433,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1sfpipfdmixpc0madfx1yvpwpv52fdhxfx4bmvrjxzb6ra78ikbr";
|
||||
sha256 = "1safbxycz517m2v981z8kbmdiqx9jypl093ia0mcrskkgh4fyb3s";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.142.0";
|
||||
version = "1.143.0";
|
||||
};
|
||||
aws-sigv4 = {
|
||||
dependencies = ["aws-eventstream"];
|
||||
@ -534,6 +534,16 @@ src:
|
||||
};
|
||||
version = "0.3.2";
|
||||
};
|
||||
base64 = {
|
||||
groups = ["default" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "01qml0yilb9basf7is2614skjp8384h2pycfx86cr8023arfj98g";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.0";
|
||||
};
|
||||
batch-loader = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
@ -653,10 +663,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "028qif22isxa5sg5gf1322d0qjhir5rr0jpkaiwcic4lspacdcnv";
|
||||
sha256 = "1srlq3gqirzdkhv12ljpnp5cb0f8jfrl3n8xs9iivyz2c7khvdyp";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.17.1";
|
||||
version = "1.18.3";
|
||||
};
|
||||
browser = {
|
||||
groups = ["default"];
|
||||
@ -730,10 +740,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "114qm5f5vhwaaw9rj1h2lcamh46zl13v1m18jiw68zl961gwmw6n";
|
||||
sha256 = "1vxfah83j6zpw3v5hic0j70h519nvmix2hbszmjwm8cfawhagns2";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.39.2";
|
||||
version = "3.40.0";
|
||||
};
|
||||
capybara-screenshot = {
|
||||
dependencies = ["capybara" "launchy"];
|
||||
@ -779,15 +789,14 @@ src:
|
||||
version = "3.0.5";
|
||||
};
|
||||
character_set = {
|
||||
dependencies = ["sorted_set"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0ql0kxnpbblggyn8hx511pghpqf8xv3ng2kbybwwdi11bg1il6zp";
|
||||
sha256 = "0l9z2pihzc11f0jpq2sx789zwpmwf5nyhsjps45zzvfs5931fwrb";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.4.1";
|
||||
version = "1.8.0";
|
||||
};
|
||||
charlock_holmes = {
|
||||
groups = ["default"];
|
||||
@ -1043,6 +1052,17 @@ src:
|
||||
};
|
||||
version = "1.14.0";
|
||||
};
|
||||
cssbundling-rails = {
|
||||
dependencies = ["railties"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0m8qgrh70982xfdcylrm4zgh7pxq9ps539icnc7bqh1awl8k78aa";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.3.3";
|
||||
};
|
||||
csv_builder = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
@ -1068,10 +1088,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1x8xwn2l7avc6h08vgrkxyb6ga7slip5x8lynswmzd0y32ngnw4h";
|
||||
sha256 = "104x4p9rmk8frf4l858p171vjaif7mqgxspx61d26c0hfg355ra3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "9.3.1";
|
||||
version = "9.4.2";
|
||||
};
|
||||
danger-gitlab = {
|
||||
dependencies = ["danger" "gitlab"];
|
||||
@ -1224,10 +1244,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0036nfmz7dz5jwagm4k3hshrkmm3w2473q38bhnr06dmxlkgrfvj";
|
||||
sha256 = "1p11hv0a2s4m29vvyr7z22wjr9f4cfmdjnqidrv62rfcg9r73w0g";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.24.pre.alpha1";
|
||||
version = "0.0.25.pre.alpha1";
|
||||
};
|
||||
device_detector = {
|
||||
groups = ["default"];
|
||||
@ -2075,10 +2095,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1awn2k5b2sji74vr0xhg0v68h1y0msqpkwq5z8k31mp2ii9mmmbg";
|
||||
sha256 = "0rlka373b2iva4dz2diz2zx7jyx617hwqvnfx2hs5xs0nh24fc5g";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.18.0";
|
||||
version = "0.20.0";
|
||||
};
|
||||
gemoji = {
|
||||
groups = ["default" "development" "test"];
|
||||
@ -2140,10 +2160,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1xqi0f0pf7cj110b981nx95wql3i4knzvc6417ym3yvbvsxjyand";
|
||||
sha256 = "07q9fmk4mddfn12vl3jvj80rxmhixkl99hxff7zi385rwphki8an";
|
||||
type = "gem";
|
||||
};
|
||||
version = "16.7.0.pre.rc1";
|
||||
version = "16.9.0.pre.rc3";
|
||||
};
|
||||
gitlab = {
|
||||
dependencies = ["httparty" "terminal-table"];
|
||||
@ -2216,13 +2236,13 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0z0h4bvfvlwyfx8ia03lr9dlpy38n75v2wxh424v6fhy4z08ycab";
|
||||
sha256 = "0mqwz2a4k9894d160k5a3mqm5g6p9rncgi4kx8w8dymbnz34bcli";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.11";
|
||||
version = "0.0.12";
|
||||
};
|
||||
gitlab-housekeeper = {
|
||||
dependencies = ["activesupport" "httparty" "rubocop"];
|
||||
dependencies = ["activesupport" "awesome_print" "httparty" "rubocop"];
|
||||
groups = ["development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
@ -2247,20 +2267,20 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0ya6r3ij0fzz6p50h157bn224n7405nwak6lx80ppvil9sm0dzr6";
|
||||
sha256 = "1m41by1hly50yq9vsz5pbrb51yryf46n9pm7wnrinaisccrinl79";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.35.0";
|
||||
version = "0.35.1";
|
||||
};
|
||||
gitlab-license = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0ms1kf5nmclsnmd2xa9k273asmb73ivaykwrb3g7sq263j3y7jk0";
|
||||
sha256 = "082ycgvq7j0kyqrbx8shipqk3lgz6i279caf1ljvk9h5wsqqy8zx";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.3.0";
|
||||
version = "2.4.0";
|
||||
};
|
||||
gitlab-mail_room = {
|
||||
dependencies = ["jwt" "net-imap" "oauth2" "redis" "redis-namespace"];
|
||||
@ -2339,10 +2359,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1mnhl888n4zfwhmfy3f1pj0k1rzjwpf16a1ic7wb22l64252g4g8";
|
||||
sha256 = "00w9p1h3awari07vh33h65y1l1jh7sgym8fzgcp5q5aihha0y9i2";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.3";
|
||||
version = "0.3.0";
|
||||
};
|
||||
gitlab-secret_detection = {
|
||||
dependencies = ["parallel" "re2" "toml-rb"];
|
||||
@ -2408,15 +2428,15 @@ src:
|
||||
version = "2.2.0";
|
||||
};
|
||||
gitlab_quality-test_tooling = {
|
||||
dependencies = ["activesupport" "amatch" "gitlab" "http" "nokogiri" "parallel" "rainbow" "table_print" "zeitwerk"];
|
||||
dependencies = ["activesupport" "amatch" "gitlab" "http" "nokogiri" "parallel" "rainbow" "rspec-parameterized" "table_print" "zeitwerk"];
|
||||
groups = ["test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0anhwfn9dnd8zkjwkq3qycjswfxqksfnwvl7dr6azz2zvjnxnii1";
|
||||
sha256 = "0n7ndhxkjkz7pfdqvcp90lxxias3lz2ssabpv5a5nxayilr47qwy";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.11.0";
|
||||
version = "1.14.2";
|
||||
};
|
||||
globalid = {
|
||||
dependencies = ["activesupport"];
|
||||
@ -2605,6 +2625,39 @@ src:
|
||||
};
|
||||
version = "0.29.0";
|
||||
};
|
||||
google-cloud-artifact_registry-v1 = {
|
||||
dependencies = ["gapic-common" "google-cloud-errors" "google-cloud-location" "grpc-google-iam-v1"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0gkq82lsjz3yw9w819ifdqx9ixcbgydr5myy64wnczknx7fd505s";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.11.0";
|
||||
};
|
||||
google-cloud-common = {
|
||||
dependencies = ["google-protobuf" "googleapis-common-protos-types"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1yxmdxx933q48397jsczsmpshr4b61izv3spnhvzxd24s67v13bk";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.1.0";
|
||||
};
|
||||
google-cloud-compute-v1 = {
|
||||
dependencies = ["gapic-common" "google-cloud-common" "google-cloud-errors"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "07hly5qbdy0qddw48biw0ybi2cx13861l5i09mj2abzw7yrmjq5r";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.6.0";
|
||||
};
|
||||
google-cloud-core = {
|
||||
dependencies = ["google-cloud-env" "google-cloud-errors"];
|
||||
groups = ["default"];
|
||||
@ -2637,6 +2690,17 @@ src:
|
||||
};
|
||||
version = "1.3.0";
|
||||
};
|
||||
google-cloud-location = {
|
||||
dependencies = ["gapic-common" "google-cloud-errors"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1l6j0i8flfdzl9c7db990632jmn5v7bmbh1i6x0sqp3f2p59jv1q";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.6.0";
|
||||
};
|
||||
google-cloud-profiler-v2 = {
|
||||
dependencies = ["gapic-common" "google-cloud-errors"];
|
||||
groups = ["default"];
|
||||
@ -2692,15 +2756,15 @@ src:
|
||||
version = "1.5.0";
|
||||
};
|
||||
googleauth = {
|
||||
dependencies = ["faraday" "jwt" "memoist" "multi_json" "os" "signet"];
|
||||
dependencies = ["faraday" "jwt" "multi_json" "os" "signet"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1hpwgwhk0lmnknkw8kbdfxn95qqs6aagpq815l5fkw9w6mi77pai";
|
||||
sha256 = "1ry9v23kndgx2pxq9v31l68k9lnnrcz1w4v75bkxq88jmbddljl1";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.3.0";
|
||||
version = "1.8.1";
|
||||
};
|
||||
gpgme = {
|
||||
dependencies = ["mini_portile2"];
|
||||
@ -2796,10 +2860,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "14pjw0hd9rmfc687yj1cfd8jjy8gh7k6zn6w9syvcl1f2hb98b0g";
|
||||
sha256 = "1h652p91zdbdigb155vhdlh0lnq4ia8wlg5y5h0ibhlf9i5ndn5q";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.5.0";
|
||||
version = "0.6.0";
|
||||
};
|
||||
graphlyte = {
|
||||
groups = ["test"];
|
||||
@ -2812,14 +2876,15 @@ src:
|
||||
version = "1.0.0";
|
||||
};
|
||||
graphql = {
|
||||
dependencies = ["racc"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0dlb8hbgs7yas59pwf4k7qrczbgkvrpcjqd2f5cmjj02fxdbwn8z";
|
||||
sha256 = "0zmw8gslwqaydxvmvan0m2rpbgxplm77kwp64bg051cvnasb9vhm";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.27";
|
||||
version = "2.2.5";
|
||||
};
|
||||
graphql-client = {
|
||||
dependencies = ["activesupport" "graphql"];
|
||||
@ -2827,10 +2892,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "02r5qvfr176n051mp1c79xbpjhjqm92kk4118r0fbp131y0xralq";
|
||||
sha256 = "1iv9d6l14h05vnhrzmm5fn2cnjb469an28c9z7c6p4bgjy0rssgy";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.18.0";
|
||||
version = "0.19.0";
|
||||
};
|
||||
graphql-docs = {
|
||||
dependencies = ["commonmarker" "dartsass" "escape_utils" "extended-markdown-filter" "gemoji" "graphql" "html-pipeline"];
|
||||
@ -2849,10 +2914,21 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "00lx7sql179ak7rx5vg76z45y558d5wj0gldql4qjcaxjnzcryqc";
|
||||
sha256 = "1bzkhy5yy4a8nlp89wwfw9bv4h358gsa9rvzn6i2y0z2ha5vmgqn";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.58.0";
|
||||
version = "1.60.0";
|
||||
};
|
||||
grpc-google-iam-v1 = {
|
||||
dependencies = ["google-protobuf" "googleapis-common-protos" "grpc"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0kip34n9604j2cc9rkplv5ljq0n8f4aizix4yr8rginsa38md8yf";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.5.0";
|
||||
};
|
||||
gssapi = {
|
||||
dependencies = ["ffi"];
|
||||
@ -3367,10 +3443,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "12md9pbh0m2yfx0vy81dyn40ibdnhzm6b7kfwra66pkjwrac9pvq";
|
||||
sha256 = "13bkqrdz1rdn23nn0zni7vdvwnm34apgi3xy42djhhxl698888dv";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.0";
|
||||
version = "0.4.0";
|
||||
};
|
||||
knapsack = {
|
||||
dependencies = ["rake"];
|
||||
@ -3442,10 +3518,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1ac5r000h6rp7gdwyxr1n8hsg5b88gwbdkq87pbcjzps9li6n6nz";
|
||||
sha256 = "1rc7fzg4rjchyv7rd6vlz35hg5n8k5625s78hj12zji0xhg1jznc";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.5.5";
|
||||
version = "1.5.6";
|
||||
};
|
||||
letter_opener = {
|
||||
dependencies = ["launchy"];
|
||||
@ -3496,10 +3572,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0i4hs0vbgp0w3pdddr37zhydm16af122rmr0w39v3nqrj1ir65kv";
|
||||
sha256 = "05g5w9c4jlfhwn0hfz117s1c7hfdm5yn7cywr4mah7xr41yvbh04";
|
||||
type = "gem";
|
||||
};
|
||||
version = "9.16.0";
|
||||
version = "9.16.1";
|
||||
};
|
||||
listen = {
|
||||
dependencies = ["rb-fsevent" "rb-inotify"];
|
||||
@ -3648,16 +3724,6 @@ src:
|
||||
};
|
||||
version = "0.4.2";
|
||||
};
|
||||
memoist = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0i9wpzix3sjhf6d9zw60dm4371iq8kyz7ckh2qapan2vyaim6b55";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.16.2";
|
||||
};
|
||||
memory_profiler = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
@ -4115,10 +4181,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1gxh0x910qvah2sm9fbxn8jjy3pgwskyd3gm703zf182hafll3lj";
|
||||
sha256 = "11fhv1a43c51jkgmqf62aypf9yw74lc6ph4qmzsh2bydwwzbwqn3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "6.1.1";
|
||||
version = "8.0.0";
|
||||
};
|
||||
ohai = {
|
||||
dependencies = ["chef-config" "chef-utils" "ffi" "ffi-yajl" "ipaddress" "mixlib-cli" "mixlib-config" "mixlib-log" "mixlib-shellout" "plist" "train-core" "wmi-lite"];
|
||||
@ -4563,10 +4629,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "15ynrzqsmmbmxib8ri8n9k6z3l6rwd91j7y1mghm33nfgdf9bj8w";
|
||||
sha256 = "0p8ljf694qvrf5875ljg6kp7gvmndy8490kasjzcq22ghryg9xxp";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.2.3";
|
||||
version = "5.1.0";
|
||||
};
|
||||
plist = {
|
||||
groups = ["default"];
|
||||
@ -4648,10 +4714,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "19mi424kwalrzdm7cvzjx2w0rw778mxqb75y9wn20nc277nxglvb";
|
||||
sha256 = "0vg47xx3wgg24snqc6ychb08mbcyrjmvxym9fg69cpa4xvj133fx";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.1.0";
|
||||
version = "1.1.1";
|
||||
};
|
||||
protocol = {
|
||||
dependencies = ["ruby_parser"];
|
||||
@ -4995,16 +5061,6 @@ src:
|
||||
};
|
||||
version = "0.4.14";
|
||||
};
|
||||
rbtree = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1z0h1x7fpkzxamnvbw1nry64qd6n0nqkwprfair29z94kd3a9vhl";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.6";
|
||||
};
|
||||
rchardet = {
|
||||
groups = ["default" "development"];
|
||||
platforms = [];
|
||||
@ -5021,10 +5077,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0sj80r3gy4sb27mrgc6pwcf2lra669p8p81axdv2p5pfm6k3mqbq";
|
||||
sha256 = "1p0kxb1gwrsv2r38jwgsg8b5k2xx966qmrc6aajfncpzm398i79i";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.6.0";
|
||||
version = "2.7.0";
|
||||
};
|
||||
recaptcha = {
|
||||
dependencies = ["json"];
|
||||
@ -5525,10 +5581,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1g1vdas991rv6lrjppjxjbfyzif4jxbncrcg9shgzrmibzilbnwr";
|
||||
sha256 = "0b9aj7d1wh4s83mkfsvjgkikx83c7afyzy6k2940fx08hfrdqgb8";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.13.2";
|
||||
version = "0.13.3";
|
||||
};
|
||||
ruby-lsp-rails = {
|
||||
dependencies = ["actionpack" "activerecord" "railties" "ruby-lsp" "sorbet-runtime"];
|
||||
@ -5616,15 +5672,15 @@ src:
|
||||
version = "0.0.5";
|
||||
};
|
||||
ruby_parser = {
|
||||
dependencies = ["sexp_processor"];
|
||||
dependencies = ["racc" "sexp_processor"];
|
||||
groups = ["default" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0j8w4mqhqaw53jd27cfhq1mq02d1r606x9fmrpfzz0fwjnk8j8ld";
|
||||
sha256 = "0sy5y7w89ii5iqym7b21glcwxqg8kizxfy8a7kcxq0j65wyqjhiq";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.20.3";
|
||||
version = "3.21.0";
|
||||
};
|
||||
rubyntlm = {
|
||||
groups = ["default"];
|
||||
@ -5715,10 +5771,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "18mgdjxdzpbw92zrllynxw7jn7yihi85j3dg7i4f6c39w1scqkbn";
|
||||
sha256 = "1d9djmwn36a5m8a83bpycs48g8kh1n2xkyvghn7dr6zwh4wdyksz";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.1.0";
|
||||
version = "2.1.2";
|
||||
};
|
||||
sawyer = {
|
||||
dependencies = ["addressable" "faraday"];
|
||||
@ -5753,15 +5809,15 @@ src:
|
||||
version = "2.3.7";
|
||||
};
|
||||
selenium-webdriver = {
|
||||
dependencies = ["rexml" "rubyzip" "websocket"];
|
||||
dependencies = ["base64" "rexml" "rubyzip" "websocket"];
|
||||
groups = ["test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1qy3whgdg6q5bi6mzbq5gc94rxnkasdhdx3c73z3a955krj16w13";
|
||||
sha256 = "0g3l3invk95w1f72mpp0r4hc3vsc3070c1xd1wg76kfg2r182xnq";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.16.0";
|
||||
version = "4.17.0";
|
||||
};
|
||||
semver_dialects = {
|
||||
dependencies = ["deb_version" "pastel" "thor" "tty-command"];
|
||||
@ -5769,10 +5825,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1bj9r98ilpgg0w0h80wydfssr7kv65y0v2afsf1azhf9mymz3000";
|
||||
sha256 = "13jmbqzswvkq0xds2s1r6wnh78gfy2zbn35qvalhwj2qi4nmjpvf";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.5.0";
|
||||
version = "1.6.1";
|
||||
};
|
||||
sentry-rails = {
|
||||
dependencies = ["railties" "sentry-ruby"];
|
||||
@ -5818,25 +5874,15 @@ src:
|
||||
};
|
||||
version = "5.10.0";
|
||||
};
|
||||
set = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "00ick64s6066idlylbxhpjmxf56h1l22c8xp0mg4j8963zga9zq2";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.2";
|
||||
};
|
||||
sexp_processor = {
|
||||
groups = ["default" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0vzz9mhg4kkdqf179pm30i204h7iskanxrk53j0csf0qrrs4iajd";
|
||||
sha256 = "182x05kpdjlckh31qizws50fz7sjk86yjjfmy45z61q3f930j4ci";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.17.0";
|
||||
version = "4.17.1";
|
||||
};
|
||||
shellany = {
|
||||
groups = ["default" "test"];
|
||||
@ -5864,9 +5910,8 @@ src:
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "18j3g31ps6ga9nzza0z0d00qjrn810fhkhx2pqi3rvxwsmkdlnbq";
|
||||
type = "gem";
|
||||
path = "${src}/vendor/gems/sidekiq-7.1.6";
|
||||
type = "path";
|
||||
};
|
||||
version = "7.1.6";
|
||||
};
|
||||
@ -5897,10 +5942,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0100rclkhagf032rg3r0gf3f4znrvvvqrimy6hpa73f21n9k2a0x";
|
||||
sha256 = "0fzakk5y7zzii76zlkynpp1c764mzkkfg4mpj18f5pf2xp1aikb6";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.17.0";
|
||||
version = "0.18.0";
|
||||
};
|
||||
simple_po_parser = {
|
||||
groups = ["development" "test"];
|
||||
@ -6036,17 +6081,6 @@ src:
|
||||
};
|
||||
version = "0.5.11144";
|
||||
};
|
||||
sorted_set = {
|
||||
dependencies = ["rbtree" "set"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0brpwv68d7m9qbf5js4bg8bmg4v7h4ghz312jv9cnnccdvp8nasg";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.3";
|
||||
};
|
||||
spamcheck = {
|
||||
dependencies = ["grpc"];
|
||||
groups = ["default"];
|
||||
@ -6875,10 +6909,10 @@ src:
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0vfispr7wd2p1fs9ckn1qnby1yyp4i1dl7qz8n482iw977iyxrza";
|
||||
sha256 = "0rc3g9hhxi6v2l1cp9q3kcjd92bhmdbrb517l4v5pyzwq2nflcyc";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.19.1";
|
||||
version = "3.20.0";
|
||||
};
|
||||
webrick = {
|
||||
groups = ["default" "development" "test"];
|
||||
|
@ -6,6 +6,7 @@
|
||||
, xorg
|
||||
, stdenv
|
||||
, python3
|
||||
, makeBinaryWrapper
|
||||
, libsixel
|
||||
, mpv
|
||||
, CoreFoundation
|
||||
@ -19,7 +20,7 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Siriusmart";
|
||||
repo = pname;
|
||||
repo = "youtube-tui";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-FOiK3yQcQuwdCEjBtRPW4iBd+8uNsvZ6l5tclHVzL+M=";
|
||||
};
|
||||
@ -34,6 +35,7 @@ rustPlatform.buildRustPackage rec {
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
python3
|
||||
makeBinaryWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@ -47,6 +49,12 @@ rustPlatform.buildRustPackage rec {
|
||||
AppKit
|
||||
];
|
||||
|
||||
# sixel-sys is dynamically linked to libsixel
|
||||
postInstall = lib.optionalString stdenv.isDarwin ''
|
||||
wrapProgram $out/bin/youtube-tui \
|
||||
--prefix DYLD_LIBRARY_PATH : "${lib.makeLibraryPath [libsixel]}"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "An aesthetically pleasing YouTube TUI written in Rust";
|
||||
homepage = "https://siriusmart.github.io/youtube-tui";
|
||||
|
@ -36,6 +36,12 @@ buildGoModule rec {
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
# butler cannot be build with Go >=1.21
|
||||
# See https://github.com/itchio/butler/issues/256
|
||||
# and https://github.com/itchio/dmcunrar-go/issues/1
|
||||
# The dependency causing the issue is marked as 'no maintainence intended'.
|
||||
# Last butler release is from 05/2021.
|
||||
broken = true;
|
||||
description = "Command-line itch.io helper";
|
||||
homepage = "https://github.com/itchio/butler";
|
||||
license = licenses.mit;
|
||||
|
@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "eiwd";
|
||||
version = "2.14-1";
|
||||
version = "2.16-1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "illiliti";
|
||||
repo = "eiwd";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-9d7XDA98qMA6Myeik2Tpj0x6yd5VQozt+FHl0U3da50=";
|
||||
hash = "sha256-TQA9aVdXGX2hje7lRQ8T9QDpSTYGpB5cIDlNYsUg/dM=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
@ -12,6 +12,7 @@
|
||||
, lua
|
||||
, openal
|
||||
, pkg-config
|
||||
, strip-nondeterminism
|
||||
, stdenv
|
||||
, zip
|
||||
, zlib
|
||||
@ -31,6 +32,7 @@ stdenv.mkDerivation (finalAttrs:{
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
strip-nondeterminism
|
||||
zip
|
||||
];
|
||||
|
||||
@ -50,6 +52,11 @@ stdenv.mkDerivation (finalAttrs:{
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
# Make sure that the build timestamp is not included in the archive
|
||||
postFixup = ''
|
||||
strip-nondeterminism --type zip $out/share/fs-uae/fs-uae.dat
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://fs-uae.net";
|
||||
description = "An accurate, customizable Amiga Emulator";
|
||||
|
@ -52,7 +52,7 @@ rustPlatform.buildRustPackage rec {
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/awslabs/mountpoint-s3";
|
||||
description = "A simple, high-throughput file client for mounting an Amazon S3 bucket as a local file system.";
|
||||
license = licenses.amazonsl;
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ lblasc ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
@ -5,13 +5,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "namespace-cli";
|
||||
version = "0.0.350";
|
||||
version = "0.0.351";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "namespacelabs";
|
||||
repo = "foundation";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-qMtmB/KMMkMfU2AyE2pcjiy3wUwyQUpcP6rMkZk3SMI=";
|
||||
hash = "sha256-DN/YHPb2/bPzE/EgkuCN0hat8UnwV+6fpay7t4Utlv8=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-a/e+xPOD9BDSlKknmfcX2tTMyIUrzKxqtUpFXcFIDSE=";
|
||||
|
@ -6,13 +6,13 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "oelint-adv";
|
||||
version = "4.4.1";
|
||||
version = "4.4.4";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit version;
|
||||
pname = "oelint_adv";
|
||||
hash = "sha256-Yv0GCz0vZTVrnFjHFIl4XF/jbVD4DJ4J6V6+X5IllJ8=";
|
||||
hash = "sha256-ELWVQzlC56EYy0op42jKmRsuVnSZfz2fQATWOlhxWbk=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
|
37
pkgs/by-name/op/opshin/package.nix
Normal file
37
pkgs/by-name/op/opshin/package.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, python3
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "opshin";
|
||||
version = "0.20.0";
|
||||
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpShin";
|
||||
repo = "opshin";
|
||||
rev = version;
|
||||
hash = "sha256-fJlPeVAuEf80FVxdXnaKASLmjMEgz6ysXenUY72+sos=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
setuptools
|
||||
poetry-core
|
||||
uplc
|
||||
pluthon
|
||||
pycardano
|
||||
frozenlist2
|
||||
astunparse
|
||||
ordered-set
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A simple pythonic programming language for Smart Contracts on Cardano";
|
||||
homepage = "https://opshin.dev";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ t4ccer ];
|
||||
mainProgram = "opshin";
|
||||
};
|
||||
}
|
@ -7,11 +7,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "txr";
|
||||
version = "293";
|
||||
version = "294";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.kylheku.com/cgit/txr/snapshot/txr-${finalAttrs.version}.tar.bz2";
|
||||
hash = "sha256-b8Ia5zMvmPl681rTyhgI0AQ8TIU4TE5768/Oln42+lw=";
|
||||
hash = "sha256-QdkN4FwobGRPQNQGcHC62Wi5hwQqsgyLo9etYYEfqDc=";
|
||||
};
|
||||
|
||||
buildInputs = [ libffi ];
|
||||
|
@ -47,12 +47,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
--replace "update-desktop-database -q" "update-desktop-database $out/share/applications"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Simple GUI that displays the protocols implemented by a Wayland compositor";
|
||||
homepage = "https://gitlab.freedesktop.org/serebit/waycheck";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ julienmalka ];
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ julienmalka federicoschonborn ];
|
||||
mainProgram = "waycheck";
|
||||
platforms = platforms.linux;
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
})
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "xplr";
|
||||
version = "0.21.5";
|
||||
version = "0.21.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sayanarijit";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Ofr9xJH/wVlBJ1n1MMecSP8SltYwjdhb7tmkTsOMoX8=";
|
||||
sha256 = "sha256-ZitwO/XfNrlTFNepQ5Wyk1A7cwlNm6+26nPHdZ8Wh3c=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-1wzqWGp0qPn2sQ1v0+6NAxvIxqCIVuN0WwpNddj71Xc=";
|
||||
cargoHash = "sha256-mfSVjm0s/tLjjygwu8TuKn92mFM3Ui6TEHkIzS0eEOA=";
|
||||
|
||||
# fixes `thread 'main' panicked at 'cannot find strip'` on x86_64-darwin
|
||||
env = lib.optionalAttrs (stdenv.isx86_64 && stdenv.isDarwin) {
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
buildGraalvmNativeImage rec {
|
||||
pname = "yamlscript";
|
||||
version = "0.1.41";
|
||||
version = "0.1.45";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/yaml/yamlscript/releases/download/${version}/yamlscript.cli-${version}-standalone.jar";
|
||||
hash = "sha256-/Kke7MH0DsBpo8AEIr8XVDKqbSshz0Ql8S5KzrPB9jk=";
|
||||
hash = "sha256-Gh1O6nAJq1D55Gjp93WtpqI5YxgheC7TbEdbP/jzIn8=";
|
||||
};
|
||||
|
||||
executable = "ys";
|
||||
|
77
pkgs/data/fonts/openmoji/build.patch
Normal file
77
pkgs/data/fonts/openmoji/build.patch
Normal file
@ -0,0 +1,77 @@
|
||||
diff --git a/helpers/generate-fonts-runner.sh b/helpers/generate-fonts-runner.sh
|
||||
index 21267e50f..873b5c664 100755
|
||||
--- a/helpers/generate-fonts-runner.sh
|
||||
+++ b/helpers/generate-fonts-runner.sh
|
||||
@@ -25,10 +25,10 @@ mkdir -p "$build_dir"
|
||||
|
||||
# Change these to enable/disable formats
|
||||
# Remember to update font/README.md accordingly
|
||||
-methods_black=(glyf)
|
||||
-methods_color=(cbdt glyf_colr_0 glyf_colr_1 sbix picosvgz untouchedsvgz)
|
||||
+#methods_black=(glyf)
|
||||
+#methods_color=(cbdt glyf_colr_0 glyf_colr_1 sbix picosvgz untouchedsvgz)
|
||||
|
||||
-saturations=(black color)
|
||||
+#saturations=(black color)
|
||||
for saturation in "${saturations[@]}"; do
|
||||
case "$saturation" in
|
||||
black)
|
||||
@@ -43,6 +43,7 @@ for saturation in "${saturations[@]}"; do
|
||||
mkdir -p "$build_dir/$saturation"
|
||||
|
||||
for method in "${methods[@]}"; do
|
||||
+ if [ -z "$method" ]; then continue; fi
|
||||
cat >"$build_dir/$saturation/OpenMoji-$saturation-$method.toml" <<-EOF
|
||||
output_file = "$build_dir/$saturation/OpenMoji-$saturation-$method.ttf"
|
||||
color_format = "$method"
|
||||
@@ -55,10 +56,7 @@ default = 400
|
||||
|
||||
[master.regular]
|
||||
style_name = "Regular"
|
||||
-
|
||||
-# To quickly check build reverse comments below
|
||||
-srcs = ["/mnt/$saturation/svg/*.svg"]
|
||||
-# srcs = ["/mnt/$saturation/svg/1F923.svg", "/mnt/$saturation/svg/1F1E9-1F1F0.svg"]
|
||||
+srcs = ["$(pwd)/$saturation/svg/*.svg"]
|
||||
|
||||
[master.regular.position]
|
||||
wght = 400
|
||||
@@ -71,7 +69,7 @@ EOF
|
||||
for method in "${methods[@]}"; do
|
||||
# Generate XML for font
|
||||
sed "s/Color/${saturation^}/;" \
|
||||
- /mnt/data/OpenMoji-Color.ttx \
|
||||
+ data/OpenMoji-Color.ttx \
|
||||
> "$build_dir/$saturation/OpenMoji-$saturation-$method.ttx"
|
||||
|
||||
# Add version to XML
|
||||
@@ -89,25 +87,21 @@ EOF
|
||||
|
||||
# Compress with WOFF2
|
||||
woff2_compress "$build_dir/fonts/OpenMoji-$saturation-$method/OpenMoji-$saturation-$method.ttf"
|
||||
-
|
||||
- # Generate font demo
|
||||
- /mnt/helpers/generate-font-demo.js "OpenMoji-$saturation-$method.woff2" "$build_dir/fonts/OpenMoji-$saturation-$method"
|
||||
done
|
||||
done
|
||||
|
||||
-for colr_version in 0 1; do
|
||||
+for colr_version in "${maximumColorVersions[@]}"; do
|
||||
+ if [ -z "$colr_version" ]; then continue; fi
|
||||
# Make TTF with both COLR and SVG font data in it
|
||||
mkdir -p "$build_dir/fonts/OpenMoji-color-colr${colr_version}_svg"
|
||||
|
||||
- maximum_color \
|
||||
+ maximum_color --build_dir="$build_dir/color" \
|
||||
"$build_dir/fonts/OpenMoji-color-glyf_colr_${colr_version}/OpenMoji-color-glyf_colr_${colr_version}.ttf"\
|
||||
--output_file "$build_dir/fonts/OpenMoji-color-colr${colr_version}_svg/OpenMoji-color-colr${colr_version}_svg.ttf"
|
||||
|
||||
woff2_compress "$build_dir/fonts/OpenMoji-color-colr${colr_version}_svg/OpenMoji-color-colr${colr_version}_svg.ttf"
|
||||
|
||||
- /mnt/helpers/generate-font-demo.js\
|
||||
- "OpenMoji-color-colr${colr_version}_svg.woff2"\
|
||||
- "$build_dir/fonts/OpenMoji-color-colr${colr_version}_svg"
|
||||
+ rm -rf "$build_dir/fonts/OpenMoji-color-glyf_colr_${colr_version}"
|
||||
done
|
||||
|
||||
echo "Done building fonts!"
|
@ -1,93 +1,85 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, stdenvNoCC
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, scfbuild
|
||||
, fontforge
|
||||
, node-glob
|
||||
, libuninameslist
|
||||
, nodejs
|
||||
, nodePackages
|
||||
, nanoemoji
|
||||
, python3Packages
|
||||
, variant ? "color" # "color" or "black"
|
||||
, woff2
|
||||
, xmlstarlet
|
||||
# available color formats: ["cbdt" "glyf_colr_0" "glyf_colr_1" "sbix" "picosvgz" "untouchedsvgz"]
|
||||
# available black formats: ["glyf"]
|
||||
, fontFormats ? [ "glyf" "cbdt" "glyf_colr_0" "glyf_colr_1" ]
|
||||
# when at least one of the glyf_colr_0/1 formats is specified, whether to build maximum color fonts
|
||||
# "none" to not build any, "svg" to build colr+svg, "bitmap" to build cbdt+colr+svg fonts
|
||||
, buildMaximumColorFonts ? "bitmap"
|
||||
}:
|
||||
|
||||
let
|
||||
filename = builtins.replaceStrings
|
||||
[ "color" "black" ]
|
||||
[ "OpenMoji-Color.ttf" "OpenMoji-Black.ttf" ]
|
||||
variant;
|
||||
# all available methods
|
||||
methods = {
|
||||
black = [ "glyf" ];
|
||||
color = [ "cbdt" "glyf_colr_0" "glyf_colr_1" "sbix" "picosvgz" "untouchedsvgz" ];
|
||||
};
|
||||
in
|
||||
|
||||
# With newer fontforge the build hangs, see
|
||||
# https://github.com/NixOS/nixpkgs/issues/167869
|
||||
# Patches etc taken from
|
||||
# https://github.com/NixOS/nixpkgs/commit/69da642a5a9bb433138ba1b13c8d56fb5bb6ec05
|
||||
fontforge-20201107 = fontforge.overrideAttrs (old: rec {
|
||||
version = "20201107";
|
||||
src = fetchFromGitHub {
|
||||
owner = "fontforge";
|
||||
repo = "fontforge";
|
||||
rev = version;
|
||||
sha256 = "sha256-Rl/5lbXaPgIndANaD0IakaDus6T53FjiBb45FIuGrvc=";
|
||||
};
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
url = "https://salsa.debian.org/fonts-team/fontforge/raw/76bffe6ccf8ab20a0c81476a80a87ad245e2fd1c/debian/patches/0001-add-extra-cmake-install-rules.patch";
|
||||
sha256 = "u3D9od2xLECNEHhZ+8dkuv9818tPkdP6y/Tvd9CADJg=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://github.com/fontforge/fontforge/commit/69e263b2aff29ad22f97f13935cfa97a1eabf207.patch";
|
||||
sha256 = "06yyf90605aq6ppfiz83mqkdmnaq5418axp9jgsjyjq78b00xb29";
|
||||
})
|
||||
];
|
||||
buildInputs = old.buildInputs ++ [ libuninameslist ];
|
||||
});
|
||||
scfbuild-with-fontforge-20201107 = scfbuild.override (old: {
|
||||
fontforge = fontforge-20201107;
|
||||
});
|
||||
assert lib.asserts.assertEachOneOf "fontFormats" fontFormats (methods.black ++ methods.color);
|
||||
assert lib.asserts.assertOneOf "buildMaximumColorFonts" buildMaximumColorFonts [ "none" "bitmap" "svg" ];
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "openmoji";
|
||||
version = "14.0.0";
|
||||
version = "15.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hfg-gmuend";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-XnSRSlWXOMeSaO6dKaOloRg3+sWS4BSaro4bPqOyKmE=";
|
||||
hash = "sha256-659ONkHU45Z2789ay0yLero9j5nFWhslpJad++4oNN8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
scfbuild-with-fontforge-20201107
|
||||
nodejs
|
||||
node-glob
|
||||
nodePackages.lodash
|
||||
patches = [
|
||||
# fix paths and variables for nix build and skip generating font demos
|
||||
./build.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# this is API change in glob >9
|
||||
substituteInPlace helpers/generate-font-glyphs.js \
|
||||
--replace "require('glob').sync" "require('glob').globSync"
|
||||
nativeBuildInputs = [
|
||||
nanoemoji
|
||||
python3Packages.fonttools
|
||||
woff2
|
||||
xmlstarlet
|
||||
];
|
||||
|
||||
methods_black = builtins.filter (m: builtins.elem m fontFormats) methods.black;
|
||||
methods_color = builtins.filter (m: builtins.elem m fontFormats) methods.color;
|
||||
saturations = lib.optional (methods_black != [ ]) "black" ++ lib.optional (methods_color != [ ]) "color";
|
||||
maximumColorVersions = lib.optionals (buildMaximumColorFonts != "none") (
|
||||
lib.optional (builtins.elem "glyf_colr_0" fontFormats) "0"
|
||||
++ lib.optional (builtins.elem "glyf_colr_1" fontFormats) "1"
|
||||
);
|
||||
|
||||
postPatch = lib.optionalString (buildMaximumColorFonts == "bitmap") ''
|
||||
substituteInPlace helpers/generate-fonts-runner.sh \
|
||||
--replace 'maximum_color' 'maximum_color --bitmaps'
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
node helpers/generate-font-glyphs.js
|
||||
|
||||
cd font
|
||||
scfbuild -c scfbuild-${variant}.yml
|
||||
bash helpers/generate-fonts-runner.sh "$(pwd)/build" "${version}"
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -Dm644 ${filename} $out/share/fonts/truetype/${filename}
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share/fonts/truetype $out/share/fonts/woff2
|
||||
cp build/fonts/*/*.ttf $out/share/fonts/truetype/
|
||||
cp build/fonts/*/*.woff2 $out/share/fonts/woff2/
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
license = licenses.cc-by-sa-40;
|
||||
maintainers = with maintainers; [ fgaz ];
|
||||
maintainers = with maintainers; [ _999eagle fgaz ];
|
||||
platforms = platforms.all;
|
||||
homepage = "https://openmoji.org/";
|
||||
downloadPage = "https://github.com/hfg-gmuend/openmoji/releases";
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ lib
|
||||
, buildGo120Module
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, substituteAll
|
||||
, v2ray-domain-list-community
|
||||
@ -11,18 +11,18 @@ let
|
||||
geosite_data = "${v2ray-domain-list-community}/share/v2ray/geosite.dat";
|
||||
};
|
||||
in
|
||||
buildGo120Module {
|
||||
buildGoModule {
|
||||
pname = "sing-geosite";
|
||||
inherit (v2ray-domain-list-community) version;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "SagerNet";
|
||||
repo = "sing-geosite";
|
||||
rev = "4a32d56c1705f77668beb5828df0b0a051efdeb9";
|
||||
hash = "sha256-P/EBcwJI2G9327BNi84R+q6BABx9DEKpN6ETTp8Q4NU=";
|
||||
rev = "bbd9f11bb9245463bf9d5614b74014fe5803b989";
|
||||
hash = "sha256-UQChYKgN5JZk+KZ2c5Ffh/rQi6/TVeFQkbH6mpLx4x8=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-uQOmUXT2wd40DwwTCMnFFKd47eu+BPBDjiCGtUNFoKY=";
|
||||
vendorHash = "sha256-C6idJDUp6AFe50tQ+4mmZsxuOKH8JSeC1p7XVRZ224E=";
|
||||
|
||||
patchPhase = ''
|
||||
sed -i -e '/func main()/,/^}/d' -e '/"io"/a "io/ioutil"' main.go
|
||||
|
@ -1,5 +1,6 @@
|
||||
{ lib
|
||||
, stdenvNoCC
|
||||
, fetchpatch
|
||||
, fetchFromGitHub
|
||||
, pkgsBuildBuild
|
||||
, jq
|
||||
@ -8,18 +9,18 @@
|
||||
}:
|
||||
|
||||
let
|
||||
generator = pkgsBuildBuild.buildGo120Module {
|
||||
generator = pkgsBuildBuild.buildGoModule rec {
|
||||
pname = "v2ray-geoip";
|
||||
version = "unstable-2023-10-11";
|
||||
version = "202403140037";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "v2fly";
|
||||
repo = "geoip";
|
||||
rev = "3182dda7b38c900f28505b91a44b09ec486e6f36";
|
||||
hash = "sha256-KSRgof78jScwnUeMtryj34J0mBsM/x9hFE4H9WtZUuM=";
|
||||
rev = version;
|
||||
hash = "sha256-nqobjgeDvD5RYvCVVd14XC/tb/+SVfvdQUFZ3gfeDrI=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-rlRazevKnWy/Ig143s8TZgV3JlQMlHID9rnncLYhQDc=";
|
||||
vendorHash = "sha256-cuKcrYAzjIt6Z4wYg5R6JeL413NDwTub2fZndXEKdTo=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "GeoIP for V2Ray";
|
||||
|
@ -26,12 +26,12 @@ stdenv.mkDerivation rec {
|
||||
extensionPortalSlug = "valent";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "GNOME Shell integration for Valent";
|
||||
homepage = "https://valent.andyholmes.ca/";
|
||||
changelog = "https://github.com/andyholmes/gnome-shell-extension-valent/blob/${src.rev}/CHANGELOG.md";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = [ ];
|
||||
platforms = platforms.linux;
|
||||
license = lib.licenses.gpl3Plus;
|
||||
maintainers = with lib.maintainers; [ federicoschonborn ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -13,6 +13,6 @@ mkXfceDerivation {
|
||||
meta = {
|
||||
description = "Windowing concept abstraction library for X11 and Wayland";
|
||||
license = lib.licenses.lgpl21Plus;
|
||||
maintainers = lib.teams.xfce.members;
|
||||
maintainers = lib.teams.xfce.members ++ [ lib.maintainers.federicoschonborn ];
|
||||
};
|
||||
}
|
||||
|
@ -1,189 +0,0 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, tzdata
|
||||
, substituteAll
|
||||
, iana-etc
|
||||
, Security
|
||||
, Foundation
|
||||
, xcbuild
|
||||
, mailcap
|
||||
, buildPackages
|
||||
, pkgsBuildTarget
|
||||
, threadsCross
|
||||
, testers
|
||||
, skopeo
|
||||
, buildGo120Module
|
||||
}:
|
||||
|
||||
let
|
||||
useGccGoBootstrap = stdenv.buildPlatform.isMusl || stdenv.buildPlatform.isRiscV;
|
||||
goBootstrap = if useGccGoBootstrap then buildPackages.gccgo12 else buildPackages.callPackage ./bootstrap117.nix { };
|
||||
|
||||
skopeoTest = skopeo.override { buildGoModule = buildGo120Module; };
|
||||
|
||||
goarch = platform: {
|
||||
"aarch64" = "arm64";
|
||||
"arm" = "arm";
|
||||
"armv5tel" = "arm";
|
||||
"armv6l" = "arm";
|
||||
"armv7l" = "arm";
|
||||
"i686" = "386";
|
||||
"mips" = "mips";
|
||||
"mips64el" = "mips64le";
|
||||
"mipsel" = "mipsle";
|
||||
"powerpc64le" = "ppc64le";
|
||||
"riscv64" = "riscv64";
|
||||
"s390x" = "s390x";
|
||||
"x86_64" = "amd64";
|
||||
}.${platform.parsed.cpu.name} or (throw "Unsupported system: ${platform.parsed.cpu.name}");
|
||||
|
||||
# We need a target compiler which is still runnable at build time,
|
||||
# to handle the cross-building case where build != host == target
|
||||
targetCC = pkgsBuildTarget.targetPackages.stdenv.cc;
|
||||
|
||||
isCross = stdenv.buildPlatform != stdenv.targetPlatform;
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "go";
|
||||
version = "1.20.14";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://go.dev/dl/go${finalAttrs.version}.src.tar.gz";
|
||||
hash = "sha256-Gu8yGg4+OLfpHS1+tkBAZmyr3Md9OD3jyVItDWm2f04=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
buildInputs = [ ]
|
||||
++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ]
|
||||
++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
|
||||
|
||||
depsTargetTargetPropagated = lib.optionals stdenv.targetPlatform.isDarwin [ Foundation Security xcbuild ];
|
||||
|
||||
depsBuildTarget = lib.optional isCross targetCC;
|
||||
|
||||
depsTargetTarget = lib.optional stdenv.targetPlatform.isWindows threadsCross.package;
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs .
|
||||
'';
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./iana-etc-1.17.patch;
|
||||
iana = iana-etc;
|
||||
})
|
||||
# Patch the mimetype database location which is missing on NixOS.
|
||||
# but also allow static binaries built with NixOS to run outside nix
|
||||
(substituteAll {
|
||||
src = ./mailcap-1.17.patch;
|
||||
inherit mailcap;
|
||||
})
|
||||
# prepend the nix path to the zoneinfo files but also leave the original value for static binaries
|
||||
# that run outside a nix server
|
||||
(substituteAll {
|
||||
src = ./tzdata-1.19.patch;
|
||||
inherit tzdata;
|
||||
})
|
||||
./remove-tools-1.11.patch
|
||||
./go_no_vendor_checks-1.16.patch
|
||||
];
|
||||
|
||||
GOOS = stdenv.targetPlatform.parsed.kernel.name;
|
||||
GOARCH = goarch stdenv.targetPlatform;
|
||||
# GOHOSTOS/GOHOSTARCH must match the building system, not the host system.
|
||||
# Go will nevertheless build a for host system that we will copy over in
|
||||
# the install phase.
|
||||
GOHOSTOS = stdenv.buildPlatform.parsed.kernel.name;
|
||||
GOHOSTARCH = goarch stdenv.buildPlatform;
|
||||
|
||||
# {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those
|
||||
# to be different from CC/CXX
|
||||
CC_FOR_TARGET =
|
||||
if isCross then
|
||||
"${targetCC}/bin/${targetCC.targetPrefix}cc"
|
||||
else
|
||||
null;
|
||||
CXX_FOR_TARGET =
|
||||
if isCross then
|
||||
"${targetCC}/bin/${targetCC.targetPrefix}c++"
|
||||
else
|
||||
null;
|
||||
|
||||
GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]);
|
||||
GO386 = "softfloat"; # from Arch: don't assume sse2 on i686
|
||||
CGO_ENABLED = 1;
|
||||
|
||||
GOROOT_BOOTSTRAP = if useGccGoBootstrap then goBootstrap else "${goBootstrap}/share/go";
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
export GOCACHE=$TMPDIR/go-cache
|
||||
# this is compiled into the binary
|
||||
export GOROOT_FINAL=$out/share/go
|
||||
|
||||
export PATH=$(pwd)/bin:$PATH
|
||||
|
||||
${lib.optionalString isCross ''
|
||||
# Independent from host/target, CC should produce code for the building system.
|
||||
# We only set it when cross-compiling.
|
||||
export CC=${buildPackages.stdenv.cc}/bin/cc
|
||||
''}
|
||||
ulimit -a
|
||||
|
||||
pushd src
|
||||
./make.bash
|
||||
popd
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
# Contains the wrong perl shebang when cross compiling,
|
||||
# since it is not used for anything we can deleted as well.
|
||||
rm src/regexp/syntax/make_perl_groups.pl
|
||||
'' + (if (stdenv.buildPlatform.system != stdenv.hostPlatform.system) then ''
|
||||
mv bin/*_*/* bin
|
||||
rmdir bin/*_*
|
||||
${lib.optionalString (!(finalAttrs.GOHOSTARCH == finalAttrs.GOARCH && finalAttrs.GOOS == finalAttrs.GOHOSTOS)) ''
|
||||
rm -rf pkg/${finalAttrs.GOHOSTOS}_${finalAttrs.GOHOSTARCH} pkg/tool/${finalAttrs.GOHOSTOS}_${finalAttrs.GOHOSTARCH}
|
||||
''}
|
||||
'' else lib.optionalString (stdenv.hostPlatform.system != stdenv.targetPlatform.system) ''
|
||||
rm -rf bin/*_*
|
||||
${lib.optionalString (!(finalAttrs.GOHOSTARCH == finalAttrs.GOARCH && finalAttrs.GOOS == finalAttrs.GOHOSTOS)) ''
|
||||
rm -rf pkg/${finalAttrs.GOOS}_${finalAttrs.GOARCH} pkg/tool/${finalAttrs.GOOS}_${finalAttrs.GOARCH}
|
||||
''}
|
||||
'');
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $GOROOT_FINAL
|
||||
cp -a bin pkg src lib misc api doc $GOROOT_FINAL
|
||||
mkdir -p $out/bin
|
||||
ln -s $GOROOT_FINAL/bin/* $out/bin
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
disallowedReferences = [ goBootstrap ];
|
||||
|
||||
passthru = {
|
||||
inherit goBootstrap skopeoTest;
|
||||
tests = {
|
||||
skopeo = testers.testVersion { package = skopeoTest; };
|
||||
version = testers.testVersion {
|
||||
package = finalAttrs.finalPackage;
|
||||
command = "go version";
|
||||
version = "go${finalAttrs.version}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
changelog = "https://go.dev/doc/devel/release#go${lib.versions.majorMinor finalAttrs.version}";
|
||||
description = "The Go Programming language";
|
||||
homepage = "https://go.dev/";
|
||||
license = licenses.bsd3;
|
||||
maintainers = teams.golang.members;
|
||||
platforms = platforms.darwin ++ platforms.linux;
|
||||
mainProgram = "go";
|
||||
};
|
||||
})
|
@ -1,138 +0,0 @@
|
||||
{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
|
||||
, buildLlvmTools
|
||||
, fixDarwinDylibNames
|
||||
, enableManpages ? false
|
||||
, enablePolly ? false
|
||||
}:
|
||||
|
||||
let
|
||||
self = stdenv.mkDerivation ({
|
||||
pname = "clang";
|
||||
inherit version;
|
||||
|
||||
src = fetch "clang" "12sm91qx2m79cvj75a9aazf2x8xybjbd593dv6v7rxficpq8i0ha";
|
||||
inherit clang-tools-extra_src;
|
||||
|
||||
unpackPhase = ''
|
||||
unpackFile $src
|
||||
mv clang-* clang
|
||||
sourceRoot=$PWD/clang
|
||||
unpackFile ${clang-tools-extra_src}
|
||||
mv clang-tools-extra-* $sourceRoot/tools/extra
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake python3 ]
|
||||
++ lib.optional enableManpages python3.pkgs.sphinx
|
||||
++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
|
||||
|
||||
buildInputs = [ libxml2 libllvm ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCLANGD_BUILD_XPC=OFF"
|
||||
"-DLLVM_ENABLE_RTTI=ON"
|
||||
] ++ lib.optionals enableManpages [
|
||||
"-DCLANG_INCLUDE_DOCS=ON"
|
||||
"-DLLVM_ENABLE_SPHINX=ON"
|
||||
"-DSPHINX_OUTPUT_MAN=ON"
|
||||
"-DSPHINX_OUTPUT_HTML=OFF"
|
||||
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
|
||||
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
"-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
|
||||
"-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
|
||||
] ++ lib.optionals enablePolly [
|
||||
"-DWITH_POLLY=ON"
|
||||
"-DLINK_POLLY_INTO_TOOLS=ON"
|
||||
];
|
||||
|
||||
|
||||
patches = [
|
||||
./purity.patch
|
||||
# https://reviews.llvm.org/D51899
|
||||
./gnu-install-dirs.patch
|
||||
(substituteAll {
|
||||
src = ../../common/clang/clang-11-15-LLVMgold-path.patch;
|
||||
libllvmLibdir = "${libllvm.lib}/lib";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \
|
||||
-e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \
|
||||
lib/Driver/ToolChains/*.cpp
|
||||
'' + lib.optionalString stdenv.hostPlatform.isMusl ''
|
||||
sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
|
||||
'' + lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
substituteInPlace tools/extra/clangd/CMakeLists.txt \
|
||||
--replace "NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB" FALSE
|
||||
'';
|
||||
|
||||
outputs = [ "out" "lib" "dev" "python" ];
|
||||
|
||||
postInstall = ''
|
||||
ln -sv $out/bin/clang $out/bin/cpp
|
||||
|
||||
# Move libclang to 'lib' output
|
||||
moveToOutput "lib/libclang.*" "$lib"
|
||||
moveToOutput "lib/libclang-cpp.*" "$lib"
|
||||
substituteInPlace $out/lib/cmake/clang/ClangTargets-release.cmake \
|
||||
--replace "\''${_IMPORT_PREFIX}/lib/libclang." "$lib/lib/libclang." \
|
||||
--replace "\''${_IMPORT_PREFIX}/lib/libclang-cpp." "$lib/lib/libclang-cpp."
|
||||
|
||||
mkdir -p $python/bin $python/share/{clang,scan-view}
|
||||
mv $out/bin/{git-clang-format,scan-view} $python/bin
|
||||
if [ -e $out/bin/set-xcode-analyzer ]; then
|
||||
mv $out/bin/set-xcode-analyzer $python/bin
|
||||
fi
|
||||
mv $out/share/clang/*.py $python/share/clang
|
||||
mv $out/share/scan-view/*.py $python/share/scan-view
|
||||
rm $out/bin/c-index-test
|
||||
patchShebangs $python/bin
|
||||
|
||||
mkdir -p $dev/bin
|
||||
cp bin/clang-tblgen $dev/bin
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
inherit libllvm;
|
||||
isClang = true;
|
||||
hardeningUnsupportedFlags = [ "fortify3" "zerocallusedregs" ];
|
||||
};
|
||||
|
||||
meta = llvm_meta // {
|
||||
homepage = "https://clang.llvm.org/";
|
||||
description = "A C language family frontend for LLVM";
|
||||
longDescription = ''
|
||||
The Clang project provides a language front-end and tooling
|
||||
infrastructure for languages in the C language family (C, C++, Objective
|
||||
C/C++, OpenCL, CUDA, and RenderScript) for the LLVM project.
|
||||
It aims to deliver amazingly fast compiles, extremely useful error and
|
||||
warning messages and to provide a platform for building great source
|
||||
level tools. The Clang Static Analyzer and clang-tidy are tools that
|
||||
automatically find bugs in your code, and are great examples of the sort
|
||||
of tools that can be built using the Clang frontend as a library to
|
||||
parse C/C++ code.
|
||||
'';
|
||||
mainProgram = "clang";
|
||||
};
|
||||
} // lib.optionalAttrs enableManpages {
|
||||
pname = "clang-manpages";
|
||||
|
||||
buildPhase = ''
|
||||
make docs-clang-man
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/man/man1
|
||||
# Manually install clang manpage
|
||||
cp docs/man/*.1 $out/share/man/man1/
|
||||
'';
|
||||
|
||||
outputs = [ "out" ];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = llvm_meta // {
|
||||
description = "man page for Clang ${version}";
|
||||
};
|
||||
});
|
||||
in self
|
@ -1,235 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index bb4b801f01c8..77a8b43b22c8 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -9,6 +9,8 @@ endif()
|
||||
if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
|
||||
project(Clang)
|
||||
|
||||
+ include(GNUInstallDirs)
|
||||
+
|
||||
set(CMAKE_CXX_STANDARD 14 CACHE STRING "C++ standard to conform to")
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED YES)
|
||||
set(CMAKE_CXX_EXTENSIONS NO)
|
||||
@@ -447,7 +449,7 @@ include_directories(BEFORE
|
||||
|
||||
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
install(DIRECTORY include/clang include/clang-c
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
COMPONENT clang-headers
|
||||
FILES_MATCHING
|
||||
PATTERN "*.def"
|
||||
@@ -457,7 +459,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
)
|
||||
|
||||
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
COMPONENT clang-headers
|
||||
FILES_MATCHING
|
||||
PATTERN "CMakeFiles" EXCLUDE
|
||||
@@ -477,7 +479,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
|
||||
add_custom_target(bash-autocomplete DEPENDS utils/bash-autocomplete.sh)
|
||||
install(PROGRAMS utils/bash-autocomplete.sh
|
||||
- DESTINATION share/clang
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
|
||||
COMPONENT bash-autocomplete)
|
||||
if(NOT LLVM_ENABLE_IDE)
|
||||
add_llvm_install_targets(install-bash-autocomplete
|
||||
diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake
|
||||
index 704278a0e93b..d25c8d325c71 100644
|
||||
--- a/cmake/modules/AddClang.cmake
|
||||
+++ b/cmake/modules/AddClang.cmake
|
||||
@@ -123,9 +123,9 @@ macro(add_clang_library name)
|
||||
install(TARGETS ${lib}
|
||||
COMPONENT ${lib}
|
||||
${export_to_clangtargets}
|
||||
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
||||
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
||||
- RUNTIME DESTINATION bin)
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
|
||||
if (NOT LLVM_ENABLE_IDE)
|
||||
add_llvm_install_targets(install-${lib}
|
||||
@@ -170,7 +170,7 @@ macro(add_clang_tool name)
|
||||
|
||||
install(TARGETS ${name}
|
||||
${export_to_clangtargets}
|
||||
- RUNTIME DESTINATION bin
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
COMPONENT ${name})
|
||||
|
||||
if(NOT LLVM_ENABLE_IDE)
|
||||
@@ -185,7 +185,7 @@ endmacro()
|
||||
macro(add_clang_symlink name dest)
|
||||
add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
|
||||
# Always generate install targets
|
||||
- llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
|
||||
+ llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
|
||||
endmacro()
|
||||
|
||||
function(clang_target_link_libraries target type)
|
||||
diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt
|
||||
index 0692fe75a441..6f201e7207d0 100644
|
||||
--- a/lib/Headers/CMakeLists.txt
|
||||
+++ b/lib/Headers/CMakeLists.txt
|
||||
@@ -208,7 +208,7 @@ set_target_properties(clang-resource-headers PROPERTIES
|
||||
FOLDER "Misc"
|
||||
RUNTIME_OUTPUT_DIRECTORY "${output_dir}")
|
||||
|
||||
-set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
|
||||
+set(header_install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
|
||||
|
||||
install(
|
||||
FILES ${files} ${generated_files}
|
||||
diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt
|
||||
index ceef4b08637c..8efad5520ca4 100644
|
||||
--- a/tools/c-index-test/CMakeLists.txt
|
||||
+++ b/tools/c-index-test/CMakeLists.txt
|
||||
@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
|
||||
"@executable_path/../../lib")
|
||||
else()
|
||||
- set(INSTALL_DESTINATION bin)
|
||||
+ set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
endif()
|
||||
|
||||
install(TARGETS c-index-test
|
||||
diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt
|
||||
index 35ecdb11253c..d77d75de0094 100644
|
||||
--- a/tools/clang-format/CMakeLists.txt
|
||||
+++ b/tools/clang-format/CMakeLists.txt
|
||||
@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE )
|
||||
endif()
|
||||
|
||||
install(PROGRAMS clang-format-bbedit.applescript
|
||||
- DESTINATION share/clang
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
|
||||
COMPONENT clang-format)
|
||||
install(PROGRAMS clang-format-diff.py
|
||||
- DESTINATION share/clang
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
|
||||
COMPONENT clang-format)
|
||||
install(PROGRAMS clang-format-sublime.py
|
||||
- DESTINATION share/clang
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
|
||||
COMPONENT clang-format)
|
||||
install(PROGRAMS clang-format.el
|
||||
- DESTINATION share/clang
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
|
||||
COMPONENT clang-format)
|
||||
install(PROGRAMS clang-format.py
|
||||
- DESTINATION share/clang
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
|
||||
COMPONENT clang-format)
|
||||
install(PROGRAMS git-clang-format
|
||||
- DESTINATION bin
|
||||
+ DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
COMPONENT clang-format)
|
||||
diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt
|
||||
index cda8e29ec5b1..0134d8ccd70b 100644
|
||||
--- a/tools/clang-rename/CMakeLists.txt
|
||||
+++ b/tools/clang-rename/CMakeLists.txt
|
||||
@@ -19,8 +19,8 @@ clang_target_link_libraries(clang-rename
|
||||
)
|
||||
|
||||
install(PROGRAMS clang-rename.py
|
||||
- DESTINATION share/clang
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
|
||||
COMPONENT clang-rename)
|
||||
install(PROGRAMS clang-rename.el
|
||||
- DESTINATION share/clang
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang
|
||||
COMPONENT clang-rename)
|
||||
diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt
|
||||
index 5cd9ac5cddc1..a197676fedbd 100644
|
||||
--- a/tools/libclang/CMakeLists.txt
|
||||
+++ b/tools/libclang/CMakeLists.txt
|
||||
@@ -165,7 +165,7 @@ endif()
|
||||
if(INTERNAL_INSTALL_PREFIX)
|
||||
set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include")
|
||||
else()
|
||||
- set(LIBCLANG_HEADERS_INSTALL_DESTINATION include)
|
||||
+ set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
endif()
|
||||
|
||||
install(DIRECTORY ../../include/clang-c
|
||||
@@ -196,7 +196,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS})
|
||||
COMPONENT
|
||||
libclang-python-bindings
|
||||
DESTINATION
|
||||
- "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
|
||||
+ "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages")
|
||||
endforeach()
|
||||
if(NOT LLVM_ENABLE_IDE)
|
||||
add_custom_target(libclang-python-bindings)
|
||||
diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt
|
||||
index ec0702d76f18..d25d982f51da 100644
|
||||
--- a/tools/scan-build/CMakeLists.txt
|
||||
+++ b/tools/scan-build/CMakeLists.txt
|
||||
@@ -47,7 +47,7 @@ if(CLANG_INSTALL_SCANBUILD)
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
|
||||
list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
|
||||
install(PROGRAMS bin/${BinFile}
|
||||
- DESTINATION bin
|
||||
+ DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
COMPONENT scan-build)
|
||||
endforeach()
|
||||
|
||||
@@ -61,7 +61,7 @@ if(CLANG_INSTALL_SCANBUILD)
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile})
|
||||
list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile})
|
||||
install(PROGRAMS libexec/${LibexecFile}
|
||||
- DESTINATION libexec
|
||||
+ DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}
|
||||
COMPONENT scan-build)
|
||||
endforeach()
|
||||
|
||||
@@ -89,7 +89,7 @@ if(CLANG_INSTALL_SCANBUILD)
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile})
|
||||
list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile})
|
||||
install(FILES share/scan-build/${ShareFile}
|
||||
- DESTINATION share/scan-build
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build
|
||||
COMPONENT scan-build)
|
||||
endforeach()
|
||||
|
||||
diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt
|
||||
index 22edb974bac7..9f140a9a4538 100644
|
||||
--- a/tools/scan-view/CMakeLists.txt
|
||||
+++ b/tools/scan-view/CMakeLists.txt
|
||||
@@ -22,7 +22,7 @@ if(CLANG_INSTALL_SCANVIEW)
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
|
||||
list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
|
||||
install(PROGRAMS bin/${BinFile}
|
||||
- DESTINATION bin
|
||||
+ DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
COMPONENT scan-view)
|
||||
endforeach()
|
||||
|
||||
@@ -36,7 +36,7 @@ if(CLANG_INSTALL_SCANVIEW)
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile})
|
||||
list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile})
|
||||
install(FILES share/${ShareFile}
|
||||
- DESTINATION share/scan-view
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view
|
||||
COMPONENT scan-view)
|
||||
endforeach()
|
||||
|
||||
diff --git a/utils/hmaptool/CMakeLists.txt b/utils/hmaptool/CMakeLists.txt
|
||||
index 62f2de0cb15c..6aa66825b6ec 100644
|
||||
--- a/utils/hmaptool/CMakeLists.txt
|
||||
+++ b/utils/hmaptool/CMakeLists.txt
|
||||
@@ -10,7 +10,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM
|
||||
|
||||
list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL})
|
||||
install(PROGRAMS ${CLANG_HMAPTOOL}
|
||||
- DESTINATION bin
|
||||
+ DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
COMPONENT hmaptool)
|
||||
|
||||
add_custom_target(hmaptool ALL DEPENDS ${Depends})
|
@ -1,28 +0,0 @@
|
||||
From 4add81bba40dcec62c4ea4481be8e35ac53e89d8 Mon Sep 17 00:00:00 2001
|
||||
From: Will Dietz <w@wdtz.org>
|
||||
Date: Thu, 18 May 2017 11:56:12 -0500
|
||||
Subject: [PATCH] "purity" patch for 5.0
|
||||
|
||||
---
|
||||
lib/Driver/ToolChains/Gnu.cpp | 7 -------
|
||||
1 file changed, 7 deletions(-)
|
||||
|
||||
diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp
|
||||
index fe3c0191bb..c6a482bece 100644
|
||||
--- a/lib/Driver/ToolChains/Gnu.cpp
|
||||
+++ b/lib/Driver/ToolChains/Gnu.cpp
|
||||
@@ -487,12 +487,6 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
|
||||
if (!IsStatic) {
|
||||
if (Args.hasArg(options::OPT_rdynamic))
|
||||
CmdArgs.push_back("-export-dynamic");
|
||||
-
|
||||
- if (!Args.hasArg(options::OPT_shared) && !IsStaticPIE) {
|
||||
- CmdArgs.push_back("-dynamic-linker");
|
||||
- CmdArgs.push_back(Args.MakeArgString(Twine(D.DyldPrefix) +
|
||||
- ToolChain.getDynamicLinker(Args)));
|
||||
- }
|
||||
}
|
||||
|
||||
CmdArgs.push_back("-o");
|
||||
--
|
||||
2.11.0
|
@ -1,23 +0,0 @@
|
||||
diff --git a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt
|
||||
index 3a66dd9c3fb..7efc85d9f9f 100644
|
||||
--- a/lib/builtins/CMakeLists.txt
|
||||
+++ b/lib/builtins/CMakeLists.txt
|
||||
@@ -301,6 +301,10 @@ if (NOT MSVC)
|
||||
i386/umoddi3.S
|
||||
)
|
||||
|
||||
+ set(i486_SOURCES ${i386_SOURCES})
|
||||
+ set(i586_SOURCES ${i386_SOURCES})
|
||||
+ set(i686_SOURCES ${i386_SOURCES})
|
||||
+
|
||||
if (WIN32)
|
||||
set(i386_SOURCES
|
||||
${i386_SOURCES}
|
||||
@@ -608,6 +612,7 @@ else ()
|
||||
endif()
|
||||
|
||||
foreach (arch ${BUILTIN_SUPPORTED_ARCH})
|
||||
+ message("arch: ${arch}")
|
||||
if (CAN_TARGET_${arch})
|
||||
# For ARM archs, exclude any VFP builtins if VFP is not supported
|
||||
if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
|
@ -1,32 +0,0 @@
|
||||
diff -ur compiler-rt-10.0.0.src/cmake/builtin-config-ix.cmake compiler-rt-10.0.0.src-patched/cmake/builtin-config-ix.cmake
|
||||
--- compiler-rt-10.0.0.src/cmake/builtin-config-ix.cmake 2020-03-24 00:01:02.000000000 +0900
|
||||
+++ compiler-rt-10.0.0.src-patched/cmake/builtin-config-ix.cmake 2020-05-10 03:42:00.883450706 +0900
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
|
||||
set(ARM64 aarch64)
|
||||
-set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k)
|
||||
+set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k armv7l)
|
||||
set(HEXAGON hexagon)
|
||||
set(X86 i386)
|
||||
set(X86_64 x86_64)
|
||||
diff -ur compiler-rt-10.0.0.src/lib/builtins/CMakeLists.txt compiler-rt-10.0.0.src-patched/lib/builtins/CMakeLists.txt
|
||||
--- compiler-rt-10.0.0.src/lib/builtins/CMakeLists.txt 2020-03-24 00:01:02.000000000 +0900
|
||||
+++ compiler-rt-10.0.0.src-patched/lib/builtins/CMakeLists.txt 2020-05-10 03:44:49.468579650 +0900
|
||||
@@ -474,6 +474,7 @@
|
||||
set(armv7_SOURCES ${arm_SOURCES})
|
||||
set(armv7s_SOURCES ${arm_SOURCES})
|
||||
set(armv7k_SOURCES ${arm_SOURCES})
|
||||
+set(armv7l_SOURCES ${arm_SOURCES})
|
||||
set(arm64_SOURCES ${aarch64_SOURCES})
|
||||
|
||||
# macho_embedded archs
|
||||
@@ -595,7 +596,7 @@
|
||||
foreach (arch ${BUILTIN_SUPPORTED_ARCH})
|
||||
if (CAN_TARGET_${arch})
|
||||
# For ARM archs, exclude any VFP builtins if VFP is not supported
|
||||
- if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
|
||||
+ if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7l|armv7m|armv7em)$")
|
||||
string(REPLACE ";" " " _TARGET_${arch}_CFLAGS "${TARGET_${arch}_CFLAGS}")
|
||||
check_compile_definition(__VFP_FP__ "${CMAKE_C_FLAGS} ${_TARGET_${arch}_CFLAGS}" COMPILER_RT_HAS_${arch}_VFP)
|
||||
if(NOT COMPILER_RT_HAS_${arch}_VFP)
|
@ -1,141 +0,0 @@
|
||||
{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, xcbuild, libllvm, libcxxabi, libxcrypt
|
||||
, doFakeLibgcc ? stdenv.hostPlatform.isFreeBSD
|
||||
}:
|
||||
|
||||
let
|
||||
|
||||
useLLVM = stdenv.hostPlatform.useLLVM or false;
|
||||
isNewDarwinBootstrap = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
|
||||
bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none";
|
||||
haveLibc = stdenv.cc.libc != null;
|
||||
inherit (stdenv.hostPlatform) isMusl;
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "compiler-rt" + lib.optionalString (haveLibc) "-libc";
|
||||
inherit version;
|
||||
src = fetch "compiler-rt" "0x1j8ngf1zj63wlnns9vlibafq48qcm72p4jpaxkmkb4qw0grwfy";
|
||||
|
||||
nativeBuildInputs = [ cmake python3 libllvm.dev ]
|
||||
++ lib.optional stdenv.isDarwin xcbuild.xcrun;
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = toString [
|
||||
"-DSCUDO_DEFAULT_OPTIONS=DeleteSizeMismatch=0:DeallocationTypeMismatch=0"
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
|
||||
"-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
|
||||
"-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
|
||||
] ++ lib.optionals (haveLibc && stdenv.hostPlatform.isGnu) [
|
||||
"-DSANITIZER_COMMON_CFLAGS=-I${libxcrypt}/include"
|
||||
] ++ lib.optionals (useLLVM || bareMetal || isMusl || isNewDarwinBootstrap) [
|
||||
"-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
|
||||
"-DCOMPILER_RT_BUILD_XRAY=OFF"
|
||||
"-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
|
||||
] ++ lib.optionals (useLLVM || bareMetal) [
|
||||
"-DCOMPILER_RT_BUILD_PROFILE=OFF"
|
||||
] ++ lib.optionals (!haveLibc || bareMetal) [
|
||||
"-DCMAKE_C_COMPILER_WORKS=ON"
|
||||
"-DCMAKE_CXX_COMPILER_WORKS=ON"
|
||||
"-DCOMPILER_RT_BAREMETAL_BUILD=ON"
|
||||
"-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}"
|
||||
] ++ lib.optionals (useLLVM || isNewDarwinBootstrap) [
|
||||
"-DCOMPILER_RT_BUILD_BUILTINS=ON"
|
||||
#https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program
|
||||
"-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
|
||||
] ++ lib.optionals (bareMetal) [
|
||||
"-DCOMPILER_RT_OS_DIR=baremetal"
|
||||
] ++ lib.optionals (stdenv.hostPlatform.isDarwin) [
|
||||
"-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON"
|
||||
"-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}"
|
||||
"-DDARWIN_osx_BUILTIN_ARCHS=${stdenv.hostPlatform.darwinArch}"
|
||||
];
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
patches = [
|
||||
../../common/compiler-rt/7-12-codesign.patch # Revert compiler-rt commit that makes codesign mandatory
|
||||
./X86-support-extension.patch # Add support for i486 i586 i686 by reusing i386 config
|
||||
./gnu-install-dirs.patch
|
||||
# ld-wrapper dislikes `-rpath-link //nix/store`, so we normalize away the
|
||||
# extra `/`.
|
||||
./normalize-var.patch
|
||||
../../common/compiler-rt/libsanitizer-no-cyclades-11.patch
|
||||
../../common/compiler-rt/darwin-plistbuddy-workaround.patch
|
||||
./armv7l.patch
|
||||
# Fix build on armv6l
|
||||
../../common/compiler-rt/armv6-mcr-dmb.patch
|
||||
../../common/compiler-rt/armv6-sync-ops-no-thumb.patch
|
||||
../../common/compiler-rt/armv6-no-ldrexd-strexd.patch
|
||||
];
|
||||
|
||||
preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
cmakeFlagsArray+=("-DCMAKE_LIPO=$(command -v ${stdenv.cc.targetPrefix}lipo)")
|
||||
'' + lib.optionalString (!haveLibc) ''
|
||||
cmakeFlagsArray+=("-DCMAKE_C_FLAGS=-nodefaultlibs -ffreestanding")
|
||||
'';
|
||||
|
||||
# TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks
|
||||
# to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra
|
||||
# can build this. If we didn't do it, basically the entire nixpkgs on Darwin would have an unfree dependency and we'd
|
||||
# get no binary cache for the entire platform. If you really find yourself wanting the TSAN, make this controllable by
|
||||
# a flag and turn the flag off during the stdenv build.
|
||||
postPatch = lib.optionalString (!stdenv.isDarwin) ''
|
||||
substituteInPlace cmake/builtin-config-ix.cmake \
|
||||
--replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)'
|
||||
substituteInPlace cmake/config-ix.cmake \
|
||||
--replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)'
|
||||
'' + lib.optionalString stdenv.isDarwin ''
|
||||
substituteInPlace cmake/config-ix.cmake \
|
||||
--replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)'
|
||||
'' + lib.optionalString (useLLVM) ''
|
||||
substituteInPlace lib/builtins/int_util.c \
|
||||
--replace "#include <stdlib.h>" ""
|
||||
substituteInPlace lib/builtins/clear_cache.c \
|
||||
--replace "#include <assert.h>" ""
|
||||
substituteInPlace lib/builtins/cpu_model.c \
|
||||
--replace "#include <assert.h>" ""
|
||||
'';
|
||||
|
||||
# Hack around weird upsream RPATH bug
|
||||
postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) ''
|
||||
ln -s "$out/lib"/*/* "$out/lib"
|
||||
'' + lib.optionalString (useLLVM) ''
|
||||
ln -s $out/lib/*/clang_rt.crtbegin-*.o $out/lib/crtbegin.o
|
||||
ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/crtend.o
|
||||
ln -s $out/lib/*/clang_rt.crtbegin-*.o $out/lib/crtbeginS.o
|
||||
ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/crtendS.o
|
||||
ln -s $out/lib/*/clang_rt.crtbegin_shared-*.o $out/lib/crtbeginS.o
|
||||
ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o
|
||||
''
|
||||
# See https://reviews.llvm.org/D37278 for why android exception
|
||||
+ lib.optionalString (stdenv.hostPlatform.isx86_32 && !stdenv.hostPlatform.isAndroid) ''
|
||||
for f in $out/lib/*/*builtins-i?86*; do
|
||||
ln -s "$f" $(echo "$f" | sed -e 's/builtins-i.86/builtins-i386/')
|
||||
done
|
||||
'' + lib.optionalString doFakeLibgcc ''
|
||||
ln -s $out/lib/freebsd/libclang_rt.builtins-*.a $out/lib/libgcc.a
|
||||
'';
|
||||
|
||||
meta = llvm_meta // {
|
||||
homepage = "https://compiler-rt.llvm.org/";
|
||||
description = "Compiler runtime libraries";
|
||||
mainProgram = "hwasan_symbolize";
|
||||
longDescription = ''
|
||||
The compiler-rt project provides highly tuned implementations of the
|
||||
low-level code generator support routines like "__fixunsdfdi" and other
|
||||
calls generated when a target doesn't have a short sequence of native
|
||||
instructions to implement a core IR operation. It also provides
|
||||
implementations of run-time libraries for dynamic testing tools such as
|
||||
AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
|
||||
'';
|
||||
# "All of the code in the compiler-rt project is dual licensed under the MIT
|
||||
# license and the UIUC License (a BSD-like license)":
|
||||
license = with lib.licenses; [ mit ncsa ];
|
||||
# compiler-rt requires a Clang stdenv on 32-bit RISC-V:
|
||||
# https://reviews.llvm.org/D43106#1019077
|
||||
broken = stdenv.hostPlatform.isRiscV32 && !stdenv.cc.isClang;
|
||||
};
|
||||
}
|
@ -1,129 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index fa62814b635d..6328614d829e 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -12,6 +12,7 @@ endif()
|
||||
# Check if compiler-rt is built as a standalone project.
|
||||
if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE_BUILD)
|
||||
project(CompilerRT C CXX ASM)
|
||||
+ include(GNUInstallDirs)
|
||||
set(COMPILER_RT_STANDALONE_BUILD TRUE)
|
||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
endif()
|
||||
diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
|
||||
index 7c127a93dfa7..6a95a65b70a7 100644
|
||||
--- a/cmake/Modules/AddCompilerRT.cmake
|
||||
+++ b/cmake/Modules/AddCompilerRT.cmake
|
||||
@@ -524,7 +524,7 @@ macro(add_compiler_rt_resource_file target_name file_name component)
|
||||
add_custom_target(${target_name} DEPENDS ${dst_file})
|
||||
# Install in Clang resource directory.
|
||||
install(FILES ${file_name}
|
||||
- DESTINATION ${COMPILER_RT_INSTALL_PATH}/share
|
||||
+ DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR}
|
||||
COMPONENT ${component})
|
||||
add_dependencies(${component} ${target_name})
|
||||
|
||||
@@ -541,7 +541,7 @@ macro(add_compiler_rt_script name)
|
||||
add_custom_target(${name} DEPENDS ${dst})
|
||||
install(FILES ${dst}
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
- DESTINATION ${COMPILER_RT_INSTALL_PATH}/bin)
|
||||
+ DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_BINDIR})
|
||||
endmacro(add_compiler_rt_script src name)
|
||||
|
||||
# Builds custom version of libc++ and installs it in <prefix>.
|
||||
diff --git a/cmake/Modules/CompilerRTDarwinUtils.cmake b/cmake/Modules/CompilerRTDarwinUtils.cmake
|
||||
index be8d7e733c7a..ab256bdff26c 100644
|
||||
--- a/cmake/Modules/CompilerRTDarwinUtils.cmake
|
||||
+++ b/cmake/Modules/CompilerRTDarwinUtils.cmake
|
||||
@@ -498,7 +498,7 @@ macro(darwin_add_embedded_builtin_libraries)
|
||||
set(DARWIN_macho_embedded_LIBRARY_OUTPUT_DIR
|
||||
${COMPILER_RT_OUTPUT_DIR}/lib/macho_embedded)
|
||||
set(DARWIN_macho_embedded_LIBRARY_INSTALL_DIR
|
||||
- ${COMPILER_RT_INSTALL_PATH}/lib/macho_embedded)
|
||||
+ ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/macho_embedded)
|
||||
|
||||
set(CFLAGS_armv7 "-target thumbv7-apple-darwin-eabi")
|
||||
set(CFLAGS_i386 "-march=pentium")
|
||||
diff --git a/cmake/Modules/CompilerRTUtils.cmake b/cmake/Modules/CompilerRTUtils.cmake
|
||||
index 99b9f0e4af44..c5183ffa746e 100644
|
||||
--- a/cmake/Modules/CompilerRTUtils.cmake
|
||||
+++ b/cmake/Modules/CompilerRTUtils.cmake
|
||||
@@ -375,7 +375,7 @@ endfunction()
|
||||
function(get_compiler_rt_install_dir arch install_dir)
|
||||
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
|
||||
get_compiler_rt_target(${arch} target)
|
||||
- set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/lib/${target} PARENT_SCOPE)
|
||||
+ set(${install_dir} ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${target} PARENT_SCOPE)
|
||||
else()
|
||||
set(${install_dir} ${COMPILER_RT_LIBRARY_INSTALL_DIR} PARENT_SCOPE)
|
||||
endif()
|
||||
diff --git a/cmake/base-config-ix.cmake b/cmake/base-config-ix.cmake
|
||||
index 964dd598f102..2acaab87d349 100644
|
||||
--- a/cmake/base-config-ix.cmake
|
||||
+++ b/cmake/base-config-ix.cmake
|
||||
@@ -66,11 +66,11 @@ if (LLVM_TREE_AVAILABLE)
|
||||
else()
|
||||
# Take output dir and install path from the user.
|
||||
set(COMPILER_RT_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH
|
||||
- "Path where built compiler-rt libraries should be stored.")
|
||||
+ "Path where built compiler-rt build artifacts should be stored.")
|
||||
set(COMPILER_RT_EXEC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin CACHE PATH
|
||||
"Path where built compiler-rt executables should be stored.")
|
||||
- set(COMPILER_RT_INSTALL_PATH ${CMAKE_INSTALL_PREFIX} CACHE PATH
|
||||
- "Path where built compiler-rt libraries should be installed.")
|
||||
+ set(COMPILER_RT_INSTALL_PATH "" CACHE PATH
|
||||
+ "Prefix where built compiler-rt artifacts should be installed, comes before CMAKE_INSTALL_PREFIX.")
|
||||
option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests." OFF)
|
||||
option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered" OFF)
|
||||
# Use a host compiler to compile/link tests.
|
||||
@@ -98,7 +98,7 @@ else(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR)
|
||||
set(COMPILER_RT_LIBRARY_OUTPUT_DIR
|
||||
${COMPILER_RT_OUTPUT_DIR}/lib/${COMPILER_RT_OS_DIR})
|
||||
set(COMPILER_RT_LIBRARY_INSTALL_DIR
|
||||
- ${COMPILER_RT_INSTALL_PATH}/lib/${COMPILER_RT_OS_DIR})
|
||||
+ ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_LIBDIR}/${COMPILER_RT_OS_DIR})
|
||||
endif()
|
||||
|
||||
if(APPLE)
|
||||
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
|
||||
index d47d7baeb118..507c8e5c713e 100644
|
||||
--- a/include/CMakeLists.txt
|
||||
+++ b/include/CMakeLists.txt
|
||||
@@ -62,22 +62,22 @@ set_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
|
||||
install(FILES ${SANITIZER_HEADERS}
|
||||
COMPONENT compiler-rt-headers
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
|
||||
- DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
|
||||
+ DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/sanitizer)
|
||||
# Install fuzzer headers.
|
||||
install(FILES ${FUZZER_HEADERS}
|
||||
COMPONENT compiler-rt-headers
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
|
||||
- DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/fuzzer)
|
||||
+ DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/fuzzer)
|
||||
# Install xray headers.
|
||||
install(FILES ${XRAY_HEADERS}
|
||||
COMPONENT compiler-rt-headers
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
|
||||
- DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/xray)
|
||||
+ DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/xray)
|
||||
# Install profile headers.
|
||||
install(FILES ${PROFILE_HEADERS}
|
||||
COMPONENT compiler-rt-headers
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
|
||||
- DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/profile)
|
||||
+ DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_INCLUDEDIR}/profile)
|
||||
|
||||
if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDEs.
|
||||
add_custom_target(install-compiler-rt-headers
|
||||
diff --git a/lib/dfsan/CMakeLists.txt b/lib/dfsan/CMakeLists.txt
|
||||
index 051215edbeb7..ecce1f52efb0 100644
|
||||
--- a/lib/dfsan/CMakeLists.txt
|
||||
+++ b/lib/dfsan/CMakeLists.txt
|
||||
@@ -56,4 +56,4 @@ add_custom_command(OUTPUT ${dfsan_abilist_filename}
|
||||
DEPENDS done_abilist.txt libc_ubuntu1404_abilist.txt)
|
||||
add_dependencies(dfsan dfsan_abilist)
|
||||
install(FILES ${dfsan_abilist_filename}
|
||||
- DESTINATION ${COMPILER_RT_INSTALL_PATH}/share)
|
||||
+ DESTINATION ${COMPILER_RT_INSTALL_PATH}/${CMAKE_INSTALL_FULL_DATADIR})
|
@ -1,16 +0,0 @@
|
||||
diff --git a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake
|
||||
index c5183ffa746e..e4e4a007335d 100644
|
||||
--- a/cmake/Modules/CompilerRTUtils.cmake
|
||||
+++ b/cmake/Modules/CompilerRTUtils.cmake
|
||||
@@ -299,8 +299,9 @@ macro(load_llvm_config)
|
||||
# Get some LLVM variables from LLVMConfig.
|
||||
include("${LLVM_CMAKE_PATH}/LLVMConfig.cmake")
|
||||
|
||||
- set(LLVM_LIBRARY_OUTPUT_INTDIR
|
||||
- ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
|
||||
+ get_filename_component(LLVM_LIBRARY_OUTPUT_INTDIR
|
||||
+ ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX}
|
||||
+ REALPATH)
|
||||
endif()
|
||||
endmacro()
|
||||
|
@ -1,285 +0,0 @@
|
||||
{ lowPrio, newScope, pkgs, lib, stdenv, cmake
|
||||
, preLibcCrossHeaders
|
||||
, libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
|
||||
, buildLlvmTools # tools, but from the previous stage, for cross
|
||||
, targetLlvmLibraries # libraries, but from the next stage, for cross
|
||||
, targetLlvm
|
||||
# This is the default binutils, but with *this* version of LLD rather
|
||||
# than the default LLVM version's, if LLD is the choice. We use these for
|
||||
# the `useLLVM` bootstrapping below.
|
||||
, bootBintoolsNoLibc ?
|
||||
if stdenv.targetPlatform.linker == "lld"
|
||||
then null
|
||||
else pkgs.bintoolsNoLibc
|
||||
, bootBintools ?
|
||||
if stdenv.targetPlatform.linker == "lld"
|
||||
then null
|
||||
else pkgs.bintools
|
||||
}:
|
||||
|
||||
let
|
||||
release_version = "11.1.0";
|
||||
candidate = ""; # empty or "rcN"
|
||||
dash-candidate = lib.optionalString (candidate != "") "-${candidate}";
|
||||
version = "${release_version}${dash-candidate}"; # differentiating these (variables) is important for RCs
|
||||
|
||||
fetch = name: sha256: fetchurl {
|
||||
url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${version}/${name}-${release_version}${candidate}.src.tar.xz";
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
clang-tools-extra_src = fetch "clang-tools-extra" "18n1w1hkv931xzq02b34wglbv6zd6sd0r5kb8piwvag7klj7qw3n";
|
||||
|
||||
inherit (import ../common/common-let.nix { inherit lib release_version; }) llvm_meta;
|
||||
|
||||
tools = lib.makeExtensible (tools: let
|
||||
callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch buildLlvmTools; });
|
||||
mkExtraBuildCommands0 = cc: ''
|
||||
rsrc="$out/resource-root"
|
||||
mkdir "$rsrc"
|
||||
ln -s "${cc.lib}/lib/clang/${release_version}/include" "$rsrc"
|
||||
echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
|
||||
'';
|
||||
mkExtraBuildCommands = cc: mkExtraBuildCommands0 cc + ''
|
||||
ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
|
||||
ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
|
||||
'';
|
||||
|
||||
bintoolsNoLibc' =
|
||||
if bootBintoolsNoLibc == null
|
||||
then tools.bintoolsNoLibc
|
||||
else bootBintoolsNoLibc;
|
||||
bintools' =
|
||||
if bootBintools == null
|
||||
then tools.bintools
|
||||
else bootBintools;
|
||||
|
||||
in {
|
||||
|
||||
libllvm = callPackage ./llvm {
|
||||
inherit llvm_meta;
|
||||
};
|
||||
|
||||
# `llvm` historically had the binaries. When choosing an output explicitly,
|
||||
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
|
||||
llvm = tools.libllvm;
|
||||
|
||||
libllvm-polly = callPackage ./llvm {
|
||||
inherit llvm_meta;
|
||||
enablePolly = true;
|
||||
};
|
||||
|
||||
llvm-polly = tools.libllvm-polly.lib // { outputSpecified = false; };
|
||||
|
||||
libclang = callPackage ./clang {
|
||||
inherit clang-tools-extra_src llvm_meta;
|
||||
};
|
||||
|
||||
clang-unwrapped = tools.libclang;
|
||||
|
||||
clang-polly-unwrapped = callPackage ./clang {
|
||||
inherit llvm_meta;
|
||||
inherit clang-tools-extra_src;
|
||||
libllvm = tools.libllvm-polly;
|
||||
enablePolly = true;
|
||||
};
|
||||
|
||||
llvm-manpages = lowPrio (tools.libllvm.override {
|
||||
enableManpages = true;
|
||||
python3 = pkgs.python3; # don't use python-boot
|
||||
});
|
||||
|
||||
clang-manpages = lowPrio (tools.libclang.override {
|
||||
enableManpages = true;
|
||||
python3 = pkgs.python3; # don't use python-boot
|
||||
});
|
||||
|
||||
# disabled until recommonmark supports sphinx 3
|
||||
# lldb-manpages = lowPrio (tools.lldb.override {
|
||||
# enableManpages = true;
|
||||
# python3 = pkgs.python3; # don't use python-boot
|
||||
# });
|
||||
|
||||
# pick clang appropriate for package set we are targeting
|
||||
clang =
|
||||
/**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc
|
||||
else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM
|
||||
else if (pkgs.targetPackages.stdenv or stdenv).cc.isGNU then tools.libstdcxxClang
|
||||
else tools.libcxxClang;
|
||||
|
||||
libstdcxxClang = wrapCCWith rec {
|
||||
cc = tools.clang-unwrapped;
|
||||
# libstdcxx is taken from gcc in an ad-hoc way in cc-wrapper.
|
||||
libcxx = null;
|
||||
extraPackages = [
|
||||
targetLlvmLibraries.compiler-rt
|
||||
];
|
||||
extraBuildCommands = mkExtraBuildCommands cc;
|
||||
};
|
||||
|
||||
libcxxClang = wrapCCWith rec {
|
||||
cc = tools.clang-unwrapped;
|
||||
libcxx = targetLlvmLibraries.libcxx;
|
||||
extraPackages = [
|
||||
libcxx.cxxabi
|
||||
targetLlvmLibraries.compiler-rt
|
||||
];
|
||||
extraBuildCommands = mkExtraBuildCommands cc;
|
||||
};
|
||||
|
||||
lld = callPackage ./lld {
|
||||
inherit llvm_meta;
|
||||
};
|
||||
|
||||
lldb = callPackage ../common/lldb.nix {
|
||||
src = fetch "lldb" "1vlyg015dyng43xqb8cg2l6r9ix8klibxsajazbfnckdnh54hwxj";
|
||||
patches = [
|
||||
./lldb/procfs.patch
|
||||
./lldb/gnu-install-dirs.patch
|
||||
];
|
||||
inherit llvm_meta;
|
||||
};
|
||||
|
||||
# Below, is the LLVM bootstrapping logic. It handles building a
|
||||
# fully LLVM toolchain from scratch. No GCC toolchain should be
|
||||
# pulled in. As a consequence, it is very quick to build different
|
||||
# targets provided by LLVM and we can also build for what GCC
|
||||
# doesn’t support like LLVM. Probably we should move to some other
|
||||
# file.
|
||||
|
||||
bintools-unwrapped = callPackage ../common/bintools.nix { };
|
||||
|
||||
bintoolsNoLibc = wrapBintoolsWith {
|
||||
bintools = tools.bintools-unwrapped;
|
||||
libc = preLibcCrossHeaders;
|
||||
};
|
||||
|
||||
bintools = wrapBintoolsWith {
|
||||
bintools = tools.bintools-unwrapped;
|
||||
};
|
||||
|
||||
clangUseLLVM = wrapCCWith rec {
|
||||
cc = tools.clang-unwrapped;
|
||||
libcxx = targetLlvmLibraries.libcxx;
|
||||
bintools = bintools';
|
||||
extraPackages = [
|
||||
libcxx.cxxabi
|
||||
targetLlvmLibraries.compiler-rt
|
||||
] ++ lib.optionals (!stdenv.targetPlatform.isWasm) [
|
||||
targetLlvmLibraries.libunwind
|
||||
];
|
||||
extraBuildCommands = ''
|
||||
echo "-rtlib=compiler-rt -Wno-unused-command-line-argument" >> $out/nix-support/cc-cflags
|
||||
echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
|
||||
'' + lib.optionalString (!stdenv.targetPlatform.isWasm) ''
|
||||
echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags
|
||||
echo "-L${targetLlvmLibraries.libunwind}/lib" >> $out/nix-support/cc-ldflags
|
||||
'' + lib.optionalString (!stdenv.targetPlatform.isWasm && stdenv.targetPlatform.useLLVM or false) ''
|
||||
echo "-lunwind" >> $out/nix-support/cc-ldflags
|
||||
'' + lib.optionalString stdenv.targetPlatform.isWasm ''
|
||||
echo "-fno-exceptions" >> $out/nix-support/cc-cflags
|
||||
'' + mkExtraBuildCommands cc;
|
||||
};
|
||||
|
||||
clangNoLibcxx = wrapCCWith rec {
|
||||
cc = tools.clang-unwrapped;
|
||||
libcxx = null;
|
||||
bintools = bintools';
|
||||
extraPackages = [
|
||||
targetLlvmLibraries.compiler-rt
|
||||
];
|
||||
extraBuildCommands = ''
|
||||
echo "-rtlib=compiler-rt" >> $out/nix-support/cc-cflags
|
||||
echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
|
||||
echo "-nostdlib++" >> $out/nix-support/cc-cflags
|
||||
'' + mkExtraBuildCommands cc;
|
||||
};
|
||||
|
||||
clangNoLibc = wrapCCWith rec {
|
||||
cc = tools.clang-unwrapped;
|
||||
libcxx = null;
|
||||
bintools = bintoolsNoLibc';
|
||||
extraPackages = [
|
||||
targetLlvmLibraries.compiler-rt
|
||||
];
|
||||
extraBuildCommands = ''
|
||||
echo "-rtlib=compiler-rt" >> $out/nix-support/cc-cflags
|
||||
echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags
|
||||
'' + mkExtraBuildCommands cc;
|
||||
};
|
||||
|
||||
clangNoCompilerRt = wrapCCWith rec {
|
||||
cc = tools.clang-unwrapped;
|
||||
libcxx = null;
|
||||
bintools = bintoolsNoLibc';
|
||||
extraPackages = [ ];
|
||||
extraBuildCommands = ''
|
||||
echo "-nostartfiles" >> $out/nix-support/cc-cflags
|
||||
'' + mkExtraBuildCommands0 cc;
|
||||
};
|
||||
|
||||
clangNoCompilerRtWithLibc = wrapCCWith rec {
|
||||
cc = tools.clang-unwrapped;
|
||||
libcxx = null;
|
||||
bintools = bintools';
|
||||
extraPackages = [ ];
|
||||
extraBuildCommands = mkExtraBuildCommands0 cc;
|
||||
};
|
||||
|
||||
});
|
||||
|
||||
libraries = lib.makeExtensible (libraries: let
|
||||
callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
|
||||
in {
|
||||
|
||||
compiler-rt-libc = callPackage ./compiler-rt {
|
||||
inherit llvm_meta;
|
||||
stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) || (stdenv.hostPlatform.isRiscV && stdenv.hostPlatform.is32bit)
|
||||
then overrideCC stdenv buildLlvmTools.clangNoCompilerRtWithLibc
|
||||
else stdenv;
|
||||
};
|
||||
|
||||
compiler-rt-no-libc = callPackage ./compiler-rt {
|
||||
inherit llvm_meta;
|
||||
stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
|
||||
then overrideCC stdenv buildLlvmTools.clangNoCompilerRt
|
||||
else stdenv;
|
||||
};
|
||||
|
||||
# N.B. condition is safe because without useLLVM both are the same.
|
||||
compiler-rt = if stdenv.hostPlatform.isAndroid || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) || (stdenv.hostPlatform.libc == "newlib")
|
||||
then libraries.compiler-rt-libc
|
||||
else libraries.compiler-rt-no-libc;
|
||||
|
||||
stdenv = overrideCC stdenv buildLlvmTools.clang;
|
||||
|
||||
libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
|
||||
|
||||
libcxx = callPackage ./libcxx {
|
||||
inherit llvm_meta;
|
||||
stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
|
||||
then overrideCC stdenv buildLlvmTools.clangNoLibcxx
|
||||
else stdenv;
|
||||
};
|
||||
|
||||
libcxxabi = callPackage ./libcxxabi {
|
||||
inherit llvm_meta;
|
||||
stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
|
||||
then overrideCC stdenv buildLlvmTools.clangNoLibcxx
|
||||
else stdenv;
|
||||
};
|
||||
|
||||
libunwind = callPackage ./libunwind {
|
||||
inherit llvm_meta;
|
||||
stdenv = if (stdenv.hostPlatform.useLLVM or false) || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64)
|
||||
then overrideCC stdenv buildLlvmTools.clangNoLibcxx
|
||||
else stdenv;
|
||||
};
|
||||
|
||||
openmp = callPackage ./openmp {
|
||||
inherit llvm_meta targetLlvm;
|
||||
};
|
||||
});
|
||||
noExtend = extensible: lib.attrsets.removeAttrs extensible [ "extend" ];
|
||||
|
||||
in { inherit tools libraries release_version; } // (noExtend libraries) // (noExtend tools)
|
@ -1,104 +0,0 @@
|
||||
{ lib, stdenv, llvm_meta, fetch, fetchpatch, cmake, python3, llvm, fixDarwinDylibNames, version
|
||||
, cxxabi ? if stdenv.hostPlatform.isFreeBSD then libcxxrt else libcxxabi
|
||||
, libcxxabi, libcxxrt
|
||||
, enableShared ? !stdenv.hostPlatform.isStatic
|
||||
}:
|
||||
|
||||
assert stdenv.isDarwin -> cxxabi.pname == "libcxxabi";
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "libcxx";
|
||||
inherit version;
|
||||
|
||||
src = fetch "libcxx" "1rgqsqpgi0vkga5d7hy0iyfsqgzfz7q1xy7afdfa1snp1qjks8xv";
|
||||
|
||||
postUnpack = ''
|
||||
unpackFile ${libcxxabi.src}
|
||||
mv libcxxabi-* libcxxabi
|
||||
unpackFile ${llvm.src}
|
||||
mv llvm-* llvm
|
||||
'';
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
# Backported from LLVM 12, avoids clashes with commonly used "block.h" header.
|
||||
url = "https://github.com/llvm/llvm-project/commit/19bc9ea480b60b607a3e303f20c7a3a2ea553369.patch";
|
||||
sha256 = "sha256-aWa66ogmPkG0xHzSfcpD0qZyZQcNKwLV44js4eiun78=";
|
||||
stripLen = 1;
|
||||
})
|
||||
./gnu-install-dirs.patch
|
||||
] ++ lib.optionals stdenv.hostPlatform.isMusl [
|
||||
../../common/libcxx/libcxx-0001-musl-hacks.patch
|
||||
];
|
||||
|
||||
# Prevent errors like "error: 'foo' is unavailable: introduced in macOS yy.zz"
|
||||
postPatch = ''
|
||||
substituteInPlace include/__config \
|
||||
--replace "# define _LIBCPP_USE_AVAILABILITY_APPLE" ""
|
||||
'';
|
||||
|
||||
preConfigure = lib.optionalString stdenv.hostPlatform.isMusl ''
|
||||
patchShebangs utils/cat_files.py
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake python3 ]
|
||||
++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
|
||||
|
||||
buildInputs = [ cxxabi ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLIBCXX_CXX_ABI=${cxxabi.pname}"
|
||||
] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1"
|
||||
++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
|
||||
++ lib.optionals stdenv.hostPlatform.isWasm [
|
||||
"-DLIBCXX_ENABLE_THREADS=OFF"
|
||||
"-DLIBCXX_ENABLE_FILESYSTEM=OFF"
|
||||
"-DLIBCXX_ENABLE_EXCEPTIONS=OFF"
|
||||
] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF"
|
||||
|
||||
# TODO: this is a bit of a hack to cross compile to Apple Silicon. libcxx
|
||||
# starting with 11 enables CMAKE_BUILD_WITH_INSTALL_NAME_DIR which requires
|
||||
# platform setup for rpaths. In cmake, this is enabled when macos is newer
|
||||
# than 10.5. However CMAKE_SYSTEM_VERSION is set to empty (TODO: why?)
|
||||
# which prevents the conditional configuration, and configure fails. The
|
||||
# value here corresponds to `uname -r`. If stdenv.hostPlatform.release is
|
||||
# not null, then this property will be set via mkDerivation (TODO: how can
|
||||
# we set this?).
|
||||
++ lib.optional (
|
||||
stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 &&
|
||||
stdenv.hostPlatform != stdenv.buildPlatform
|
||||
) "-DCMAKE_SYSTEM_VERSION=20.1.0";
|
||||
|
||||
preInstall = lib.optionalString (stdenv.isDarwin) ''
|
||||
for file in lib/*.dylib; do
|
||||
if [ -L "$file" ]; then continue; fi
|
||||
|
||||
baseName=$(basename $(${stdenv.cc.targetPrefix}otool -D $file | tail -n 1))
|
||||
installName="$out/lib/$baseName"
|
||||
abiName=$(echo "$baseName" | sed -e 's/libc++/libc++abi/')
|
||||
|
||||
for other in $(${stdenv.cc.targetPrefix}otool -L $file | awk '$1 ~ "/libc\\+\\+abi" { print $1 }'); do
|
||||
${stdenv.cc.targetPrefix}install_name_tool -change $other ${cxxabi}/lib/$abiName $file
|
||||
done
|
||||
done
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
isLLVM = true;
|
||||
inherit cxxabi;
|
||||
};
|
||||
|
||||
meta = llvm_meta // {
|
||||
homepage = "https://libcxx.llvm.org/";
|
||||
description = "C++ standard library";
|
||||
longDescription = ''
|
||||
libc++ is an implementation of the C++ standard library, targeting C++11,
|
||||
C++14 and above.
|
||||
'';
|
||||
# "All of the code in libc++ is dual licensed under the MIT license and the
|
||||
# UIUC License (a BSD-like license)":
|
||||
license = with lib.licenses; [ mit ncsa ];
|
||||
};
|
||||
}
|
@ -1,100 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 910d04b54b6d..80ef692d83eb 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -31,6 +31,8 @@ set(CMAKE_MODULE_PATH
|
||||
if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXX_STANDALONE_BUILD)
|
||||
project(libcxx CXX C)
|
||||
|
||||
+ include(GNUInstallDirs)
|
||||
+
|
||||
set(PACKAGE_NAME libcxx)
|
||||
set(PACKAGE_VERSION 11.1.0)
|
||||
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
|
||||
@@ -418,7 +420,7 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
|
||||
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
|
||||
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
|
||||
set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
|
||||
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
|
||||
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
|
||||
if(LIBCXX_LIBDIR_SUBDIR)
|
||||
string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
|
||||
string(APPEND LIBCXX_INSTALL_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
|
||||
@@ -426,11 +428,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
|
||||
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
|
||||
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
|
||||
set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
|
||||
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
|
||||
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
|
||||
else()
|
||||
set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
|
||||
set(LIBCXX_HEADER_DIR ${CMAKE_BINARY_DIR})
|
||||
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
|
||||
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
|
||||
endif()
|
||||
|
||||
file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}")
|
||||
diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
|
||||
index c5aa26739e36..8841c4a5252d 100644
|
||||
--- a/cmake/Modules/HandleLibCXXABI.cmake
|
||||
+++ b/cmake/Modules/HandleLibCXXABI.cmake
|
||||
@@ -63,7 +63,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
|
||||
|
||||
if (LIBCXX_INSTALL_HEADERS)
|
||||
install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
|
||||
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
|
||||
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
|
||||
COMPONENT cxx-headers
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
|
||||
)
|
||||
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
|
||||
index be8141c98166..93847e5758cc 100644
|
||||
--- a/include/CMakeLists.txt
|
||||
+++ b/include/CMakeLists.txt
|
||||
@@ -257,7 +257,7 @@ if (LIBCXX_INSTALL_HEADERS)
|
||||
foreach(file ${files})
|
||||
get_filename_component(dir ${file} DIRECTORY)
|
||||
install(FILES ${file}
|
||||
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
|
||||
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
|
||||
COMPONENT ${CXX_HEADER_TARGET}
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
|
||||
)
|
||||
@@ -265,7 +265,7 @@ if (LIBCXX_INSTALL_HEADERS)
|
||||
|
||||
# Install the generated header as __config.
|
||||
install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
|
||||
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
|
||||
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
|
||||
RENAME __config
|
||||
COMPONENT ${CXX_HEADER_TARGET})
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 2001c09761d9..5bd11ea6b400 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -344,21 +344,21 @@ if (LIBCXX_INSTALL_LIBRARY)
|
||||
install(TARGETS cxx_shared
|
||||
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
|
||||
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
|
||||
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
|
||||
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
|
||||
endif()
|
||||
|
||||
if (LIBCXX_INSTALL_STATIC_LIBRARY)
|
||||
install(TARGETS cxx_static
|
||||
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
|
||||
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
|
||||
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
|
||||
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
|
||||
endif()
|
||||
|
||||
if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
|
||||
install(TARGETS cxx_experimental
|
||||
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
|
||||
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
|
||||
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
|
||||
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
|
||||
endif()
|
||||
|
||||
# NOTE: This install command must go after the cxx install command otherwise
|
@ -1,89 +0,0 @@
|
||||
{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version
|
||||
, enableShared ? !stdenv.hostPlatform.isStatic
|
||||
, standalone ? stdenv.hostPlatform.useLLVM or false
|
||||
, withLibunwind ? !stdenv.isDarwin && !stdenv.hostPlatform.isWasm
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "libcxxabi";
|
||||
inherit version;
|
||||
|
||||
src = fetch "libcxxabi" "1azcf31mxw59hb1x17xncnm3dyw90ylh8rqx462lvypqh3nr6c8l";
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
postUnpack = ''
|
||||
unpackFile ${libcxx.src}
|
||||
mv libcxx-* libcxx
|
||||
unpackFile ${llvm.src}
|
||||
mv llvm-* llvm
|
||||
'' + lib.optionalString stdenv.isDarwin ''
|
||||
export TRIPLE=x86_64-apple-darwin
|
||||
'' + lib.optionalString stdenv.hostPlatform.isMusl ''
|
||||
patch -p1 -d libcxx -i ${../../common/libcxx/libcxx-0001-musl-hacks.patch}
|
||||
'' + lib.optionalString stdenv.hostPlatform.isWasm ''
|
||||
patch -p1 -d llvm -i ${../../common/libcxxabi/wasm.patch}
|
||||
'';
|
||||
|
||||
patches = [
|
||||
../../common/libcxxabi/no-threads.patch
|
||||
./gnu-install-dirs.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = lib.optional withLibunwind libunwind;
|
||||
|
||||
cmakeFlags = lib.optionals standalone [
|
||||
"-DLLVM_ENABLE_LIBCXX=ON"
|
||||
] ++ lib.optionals (standalone && withLibunwind) [
|
||||
"-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
|
||||
] ++ lib.optionals stdenv.hostPlatform.isWasm [
|
||||
"-DLIBCXXABI_ENABLE_THREADS=OFF"
|
||||
"-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF"
|
||||
] ++ lib.optionals (!enableShared) [
|
||||
"-DLIBCXXABI_ENABLE_SHARED=OFF"
|
||||
];
|
||||
|
||||
preInstall = lib.optionalString stdenv.isDarwin ''
|
||||
for file in lib/*.dylib; do
|
||||
if [ -L "$file" ]; then continue; fi
|
||||
|
||||
# Fix up the install name. Preserve the basename, just replace the path.
|
||||
installName="$out/lib/$(basename $(${stdenv.cc.targetPrefix}otool -D $file | tail -n 1))"
|
||||
|
||||
# this should be done in CMake, but having trouble figuring out
|
||||
# the magic combination of necessary CMake variables
|
||||
# if you fancy a try, take a look at
|
||||
# https://gitlab.kitware.com/cmake/community/-/wikis/doc/cmake/RPATH-handling
|
||||
${stdenv.cc.targetPrefix}install_name_tool -id $installName $file
|
||||
|
||||
# cc-wrapper passes '-lc++abi' to all c++ link steps, but that causes
|
||||
# libcxxabi to sometimes link against a different version of itself.
|
||||
# Here we simply make that second reference point to ourselves.
|
||||
for other in $(${stdenv.cc.targetPrefix}otool -L $file | awk '$1 ~ "/libc\\+\\+abi" { print $1 }'); do
|
||||
${stdenv.cc.targetPrefix}install_name_tool -change $other $installName $file
|
||||
done
|
||||
done
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p "$dev/include"
|
||||
install -m 644 ../include/${if stdenv.isDarwin then "*" else "cxxabi.h"} "$dev/include"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
libName = "c++abi";
|
||||
};
|
||||
|
||||
meta = llvm_meta // {
|
||||
homepage = "https://libcxxabi.llvm.org/";
|
||||
description = "Provides C++ standard library support";
|
||||
longDescription = ''
|
||||
libc++abi is a new implementation of low level support for a standard C++ library.
|
||||
'';
|
||||
# "All of the code in libc++abi is dual licensed under the MIT license and
|
||||
# the UIUC License (a BSD-like license)":
|
||||
license = with lib.licenses; [ mit ncsa ];
|
||||
maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
|
||||
};
|
||||
}
|
@ -1,34 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 36c6b2249e2b..a93c13ccaed9 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -24,6 +24,8 @@ set(CMAKE_MODULE_PATH
|
||||
if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXXABI_STANDALONE_BUILD)
|
||||
project(libcxxabi CXX C)
|
||||
|
||||
+ include(GNUInstallDirs)
|
||||
+
|
||||
set(PACKAGE_NAME libcxxabi)
|
||||
set(PACKAGE_VERSION 11.1.0)
|
||||
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
|
||||
@@ -160,17 +162,17 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
|
||||
|
||||
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
|
||||
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
|
||||
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
|
||||
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
|
||||
if(LIBCXX_LIBDIR_SUBDIR)
|
||||
string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
|
||||
string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
|
||||
endif()
|
||||
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
|
||||
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
|
||||
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
|
||||
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
|
||||
else()
|
||||
set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
|
||||
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
|
||||
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
|
||||
endif()
|
||||
|
||||
set(LIBCXXABI_INSTALL_PREFIX "" CACHE STRING "Define libc++abi destination prefix.")
|
@ -1,31 +0,0 @@
|
||||
{ lib, stdenv, llvm_meta, version, fetch, cmake, enableShared ? !stdenv.hostPlatform.isStatic
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libunwind";
|
||||
inherit version;
|
||||
|
||||
src = fetch pname "1vpqs2c358v8fbr1r8jmzkfqk12jllimjcfmgxga127ksq9b37nj";
|
||||
|
||||
patches = [
|
||||
./gnu-install-dirs.patch
|
||||
];
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
|
||||
|
||||
meta = llvm_meta // {
|
||||
# Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst
|
||||
homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library";
|
||||
description = "LLVM's unwinder library";
|
||||
longDescription = ''
|
||||
The unwind library provides a family of _Unwind_* functions implementing
|
||||
the language-neutral stack unwinding portion of the Itanium C++ ABI (Level
|
||||
I). It is a dependency of the C++ ABI library, and sometimes is a
|
||||
dependency of other runtimes.
|
||||
'';
|
||||
};
|
||||
}
|
@ -1,34 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index e44a103648f9..aaf1f9555d7f 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -18,6 +18,8 @@ set(CMAKE_MODULE_PATH
|
||||
if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBUNWIND_STANDALONE_BUILD)
|
||||
project(libunwind LANGUAGES C CXX ASM)
|
||||
|
||||
+ include(GNUInstallDirs)
|
||||
+
|
||||
# Rely on llvm-config.
|
||||
set(CONFIG_OUTPUT)
|
||||
if(NOT LLVM_CONFIG_PATH)
|
||||
@@ -192,17 +194,17 @@ string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
|
||||
|
||||
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
|
||||
set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
|
||||
- set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
|
||||
+ set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
|
||||
if(LIBCXX_LIBDIR_SUBDIR)
|
||||
string(APPEND LIBUNWIND_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
|
||||
string(APPEND LIBUNWIND_INSTALL_LIBRARY_DIR /${LIBUNWIND_LIBDIR_SUBDIR})
|
||||
endif()
|
||||
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
|
||||
set(LIBUNWIND_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
|
||||
- set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
|
||||
+ set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
|
||||
else()
|
||||
set(LIBUNWIND_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBUNWIND_LIBDIR_SUFFIX})
|
||||
- set(LIBUNWIND_INSTALL_LIBRARY_DIR lib${LIBUNWIND_LIBDIR_SUFFIX})
|
||||
+ set(LIBUNWIND_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBUNWIND_LIBDIR_SUFFIX})
|
||||
endif()
|
||||
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBUNWIND_LIBRARY_DIR})
|
@ -1,46 +0,0 @@
|
||||
{ lib, stdenv, llvm_meta
|
||||
, buildLlvmTools
|
||||
, fetch
|
||||
, cmake
|
||||
, libxml2
|
||||
, libllvm
|
||||
, version
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lld";
|
||||
inherit version;
|
||||
|
||||
src = fetch pname "1kk61i7z5bi9i11rzsd2b388d42if1c7a45zkaa4mk0yps67hyh1";
|
||||
|
||||
patches = [
|
||||
./gnu-install-dirs.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ libllvm libxml2 ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLLVM_CONFIG_PATH=${libllvm.dev}/bin/llvm-config${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-native"}"
|
||||
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
"-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
|
||||
];
|
||||
|
||||
# Musl's default stack size is too small for lld to be able to link Firefox.
|
||||
LDFLAGS = lib.optionalString stdenv.hostPlatform.isMusl "-Wl,-z,stack-size=2097152";
|
||||
|
||||
outputs = [ "out" "lib" "dev" ];
|
||||
|
||||
meta = llvm_meta // {
|
||||
homepage = "https://lld.llvm.org/";
|
||||
description = "The LLVM linker (unwrapped)";
|
||||
longDescription = ''
|
||||
LLD is a linker from the LLVM project that is a drop-in replacement for
|
||||
system linkers and runs much faster than them. It also provides features
|
||||
that are useful for toolchain developers.
|
||||
The linker supports ELF (Unix), PE/COFF (Windows), Mach-O (macOS), and
|
||||
WebAssembly in descending order of completeness. Internally, LLD consists
|
||||
of several different linkers.
|
||||
'';
|
||||
};
|
||||
}
|
@ -1,68 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 040bb2c8f6d7..f765f0096d97 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -6,6 +6,8 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
set(LLD_BUILT_STANDALONE TRUE)
|
||||
|
||||
+ include(GNUInstallDirs)
|
||||
+
|
||||
find_program(LLVM_CONFIG_PATH "llvm-config" DOC "Path to llvm-config binary")
|
||||
if(NOT LLVM_CONFIG_PATH)
|
||||
message(FATAL_ERROR "llvm-config not found: specify LLVM_CONFIG_PATH")
|
||||
@@ -205,7 +207,7 @@ include_directories(BEFORE
|
||||
|
||||
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
install(DIRECTORY include/
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
FILES_MATCHING
|
||||
PATTERN "*.h"
|
||||
PATTERN ".svn" EXCLUDE
|
||||
diff --git a/cmake/modules/AddLLD.cmake b/cmake/modules/AddLLD.cmake
|
||||
index 23df41312403..d62372c88de7 100644
|
||||
--- a/cmake/modules/AddLLD.cmake
|
||||
+++ b/cmake/modules/AddLLD.cmake
|
||||
@@ -20,9 +20,9 @@ macro(add_lld_library name)
|
||||
install(TARGETS ${name}
|
||||
COMPONENT ${name}
|
||||
${export_to_lldtargets}
|
||||
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
||||
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
||||
- RUNTIME DESTINATION bin)
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
|
||||
if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
|
||||
add_llvm_install_targets(install-${name}
|
||||
@@ -54,7 +54,7 @@ macro(add_lld_tool name)
|
||||
|
||||
install(TARGETS ${name}
|
||||
${export_to_lldtargets}
|
||||
- RUNTIME DESTINATION bin
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
COMPONENT ${name})
|
||||
|
||||
if(NOT CMAKE_CONFIGURATION_TYPES)
|
||||
@@ -69,5 +69,5 @@ endmacro()
|
||||
macro(add_lld_symlink name dest)
|
||||
add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE)
|
||||
# Always generate install targets
|
||||
- llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE)
|
||||
+ llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE)
|
||||
endmacro()
|
||||
diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt
|
||||
index e6f72fcd3488..d903609e6e4f 100644
|
||||
--- a/tools/lld/CMakeLists.txt
|
||||
+++ b/tools/lld/CMakeLists.txt
|
||||
@@ -21,7 +21,7 @@ target_link_libraries(lld
|
||||
)
|
||||
|
||||
install(TARGETS lld
|
||||
- RUNTIME DESTINATION bin)
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
|
||||
if(NOT LLD_SYMLINKS_TO_CREATE)
|
||||
set(LLD_SYMLINKS_TO_CREATE lld-link ld.lld ld64.lld wasm-ld)
|
@ -1,91 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index bf748020ea40..34103d2b5e1a 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -17,6 +17,8 @@ set(CMAKE_MODULE_PATH
|
||||
# If we are not building as part of LLVM, build LLDB as a standalone project,
|
||||
# using LLVM as an external library.
|
||||
if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||
+ include(GNUInstallDirs)
|
||||
+
|
||||
project(lldb)
|
||||
include(LLDBStandalone)
|
||||
|
||||
diff --git a/cmake/modules/AddLLDB.cmake b/cmake/modules/AddLLDB.cmake
|
||||
index 4ed5c647c5d2..89f96e710d55 100644
|
||||
--- a/cmake/modules/AddLLDB.cmake
|
||||
+++ b/cmake/modules/AddLLDB.cmake
|
||||
@@ -107,13 +107,13 @@ function(add_lldb_library name)
|
||||
endif()
|
||||
|
||||
if(PARAM_SHARED)
|
||||
- set(install_dest lib${LLVM_LIBDIR_SUFFIX})
|
||||
+ set(install_dest ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
|
||||
if(PARAM_INSTALL_PREFIX)
|
||||
set(install_dest ${PARAM_INSTALL_PREFIX})
|
||||
endif()
|
||||
# RUNTIME is relevant for DLL platforms, FRAMEWORK for macOS
|
||||
install(TARGETS ${name} COMPONENT ${name}
|
||||
- RUNTIME DESTINATION bin
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
LIBRARY DESTINATION ${install_dest}
|
||||
ARCHIVE DESTINATION ${install_dest}
|
||||
FRAMEWORK DESTINATION ${install_dest})
|
||||
diff --git a/cmake/modules/LLDBConfig.cmake b/cmake/modules/LLDBConfig.cmake
|
||||
index 8465cfe3b7b7..01b7eae136e2 100644
|
||||
--- a/cmake/modules/LLDBConfig.cmake
|
||||
+++ b/cmake/modules/LLDBConfig.cmake
|
||||
@@ -245,7 +245,7 @@ include_directories(BEFORE
|
||||
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
install(DIRECTORY include/
|
||||
COMPONENT lldb-headers
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
FILES_MATCHING
|
||||
PATTERN "*.h"
|
||||
PATTERN ".svn" EXCLUDE
|
||||
@@ -254,7 +254,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
|
||||
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
|
||||
COMPONENT lldb-headers
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
FILES_MATCHING
|
||||
PATTERN "*.h"
|
||||
PATTERN ".svn" EXCLUDE
|
||||
diff --git a/tools/intel-features/CMakeLists.txt b/tools/intel-features/CMakeLists.txt
|
||||
index efba2f74904f..e08413b1dbb1 100644
|
||||
--- a/tools/intel-features/CMakeLists.txt
|
||||
+++ b/tools/intel-features/CMakeLists.txt
|
||||
@@ -65,4 +65,4 @@ if (LLDB_ENABLE_PYTHON AND LLDB_BUILD_INTEL_PT)
|
||||
endif()
|
||||
|
||||
install(TARGETS lldbIntelFeatures
|
||||
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
|
||||
diff --git a/cmake/modules/LLDBStandalone.cmake b/cmake/modules/LLDBStandalone.cmake
|
||||
index 752113b..010f187 100644
|
||||
--- a/cmake/modules/LLDBStandalone.cmake
|
||||
+++ b/cmake/modules/LLDBStandalone.cmake
|
||||
@@ -62,7 +62,7 @@ endif()
|
||||
|
||||
# They are used as destination of target generators.
|
||||
set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
|
||||
-set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
|
||||
+set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
|
||||
if(WIN32 OR CYGWIN)
|
||||
# DLL platform -- put DLLs into bin.
|
||||
set(LLVM_SHLIB_OUTPUT_INTDIR ${LLVM_RUNTIME_OUTPUT_INTDIR})
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index bf74802..1c98cae 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -222,7 +222,7 @@ if (LLDB_ENABLE_PYTHON)
|
||||
if(LLDB_BUILD_FRAMEWORK)
|
||||
set(LLDB_PYTHON_INSTALL_PATH ${LLDB_FRAMEWORK_INSTALL_DIR}/LLDB.framework/Resources/Python)
|
||||
else()
|
||||
- set(LLDB_PYTHON_INSTALL_PATH ${LLDB_PYTHON_RELATIVE_PATH})
|
||||
+ set(LLDB_PYTHON_INSTALL_PATH ${CMAKE_INSTALL_LIBDIR}/../${LLDB_PYTHON_RELATIVE_PATH})
|
||||
endif()
|
||||
if (NOT CMAKE_CFG_INTDIR STREQUAL ".")
|
||||
string(REPLACE ${CMAKE_CFG_INTDIR} "\$\{CMAKE_INSTALL_CONFIG_NAME\}" LLDB_PYTHON_INSTALL_PATH ${LLDB_PYTHON_INSTALL_PATH})
|
@ -1,31 +0,0 @@
|
||||
--- a/source/Plugins/Process/Linux/Procfs.h
|
||||
+++ b/source/Plugins/Process/Linux/Procfs.h
|
||||
@@ -11,21 +11,12 @@
|
||||
// sys/procfs.h on Android/Linux for all supported architectures.
|
||||
|
||||
#include <sys/ptrace.h>
|
||||
+#include <asm/ptrace.h>
|
||||
|
||||
-#ifdef __ANDROID__
|
||||
-#if defined(__arm64__) || defined(__aarch64__)
|
||||
-typedef unsigned long elf_greg_t;
|
||||
-typedef elf_greg_t
|
||||
- elf_gregset_t[(sizeof(struct user_pt_regs) / sizeof(elf_greg_t))];
|
||||
-typedef struct user_fpsimd_state elf_fpregset_t;
|
||||
-#ifndef NT_FPREGSET
|
||||
-#define NT_FPREGSET NT_PRFPREG
|
||||
-#endif // NT_FPREGSET
|
||||
-#elif defined(__mips__)
|
||||
-#ifndef NT_FPREGSET
|
||||
-#define NT_FPREGSET NT_PRFPREG
|
||||
-#endif // NT_FPREGSET
|
||||
-#endif
|
||||
-#else // __ANDROID__
|
||||
+#if !defined(__GLIBC__) && defined(__powerpc__)
|
||||
+#define pt_regs musl_pt_regs
|
||||
+#include <sys/procfs.h>
|
||||
+#undef pt_regs
|
||||
+#else
|
||||
#include <sys/procfs.h>
|
||||
-#endif // __ANDROID__
|
||||
+#endif
|
@ -1,365 +0,0 @@
|
||||
{ lib, stdenv, llvm_meta
|
||||
, pkgsBuildBuild
|
||||
, fetch
|
||||
, fetchpatch
|
||||
, cmake
|
||||
, python3
|
||||
, libffi
|
||||
, enableGoldPlugin ? libbfd.hasPluginAPI
|
||||
, libbfd
|
||||
, libpfm
|
||||
, libxml2
|
||||
, ncurses
|
||||
, version
|
||||
, release_version
|
||||
, zlib
|
||||
, buildLlvmTools
|
||||
, debugVersion ? false
|
||||
, doCheck ? stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl) && (!stdenv.hostPlatform.isRiscV)
|
||||
&& (stdenv.hostPlatform == stdenv.buildPlatform)
|
||||
, enableManpages ? false
|
||||
, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
|
||||
# broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
|
||||
# broken for the armv7l builder
|
||||
, enablePFM ? stdenv.isLinux && !stdenv.hostPlatform.isAarch
|
||||
, enablePolly ? false # TODO should be on by default
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (lib) optional optionals optionalString;
|
||||
|
||||
# Used when creating a version-suffixed symlink of libLLVM.dylib
|
||||
shortVersion = with lib;
|
||||
concatStringsSep "." (take 1 (splitString "." release_version));
|
||||
|
||||
# Ordinarily we would just the `doCheck` and `checkDeps` functionality
|
||||
# `mkDerivation` gives us to manage our test dependencies (instead of breaking
|
||||
# out `doCheck` as a package level attribute).
|
||||
#
|
||||
# Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
|
||||
# particular the children it uses to do feature detection.
|
||||
#
|
||||
# This means that python deps we add to `checkDeps` (which the python
|
||||
# interpreter is made aware of via `$PYTHONPATH` – populated by the python
|
||||
# setup hook) are not picked up by `lit` which causes it to skip tests.
|
||||
#
|
||||
# Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
|
||||
# because this package is shadowed in `$PATH` by the regular `python3`
|
||||
# package.
|
||||
#
|
||||
# So, we "manually" assemble one python derivation for the package to depend
|
||||
# on, taking into account whether checks are enabled or not:
|
||||
python = if doCheck then
|
||||
let
|
||||
checkDeps = ps: with ps; [ psutil ];
|
||||
in python3.withPackages checkDeps
|
||||
else python3;
|
||||
|
||||
in stdenv.mkDerivation (rec {
|
||||
pname = "llvm";
|
||||
inherit version;
|
||||
|
||||
src = fetch pname "199yq3a214avcbi4kk2q0ajriifkvsr0l2dkx3a666m033ihi1ff";
|
||||
polly_src = fetch "polly" "031r23ijhx7v93a5n33m2nc0x9xyqmx0d8xg80z7q971p6qd63sq";
|
||||
|
||||
unpackPhase = ''
|
||||
unpackFile $src
|
||||
mv llvm-${release_version}* llvm
|
||||
sourceRoot=$PWD/llvm
|
||||
'' + optionalString enablePolly ''
|
||||
unpackFile $polly_src
|
||||
mv polly-* $sourceRoot/tools/polly
|
||||
'';
|
||||
|
||||
outputs = [ "out" "lib" "dev" "python" ];
|
||||
|
||||
nativeBuildInputs = [ cmake python ]
|
||||
++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
|
||||
|
||||
buildInputs = [ libxml2 libffi ]
|
||||
++ optional enablePFM libpfm; # exegesis
|
||||
|
||||
propagatedBuildInputs = [ ncurses zlib ];
|
||||
|
||||
patches = [
|
||||
# When cross-compiling we configure llvm-config-native with an approximation
|
||||
# of the flags used for the normal LLVM build. To avoid the need for building
|
||||
# a native libLLVM.so (which would fail) we force llvm-config to be linked
|
||||
# statically against the necessary LLVM components always.
|
||||
../../common/llvm/llvm-config-link-static.patch
|
||||
|
||||
./gnu-install-dirs.patch
|
||||
# On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test.
|
||||
(fetchpatch {
|
||||
name = "uops-CMOV16rm-noreg.diff";
|
||||
url = "https://github.com/llvm/llvm-project/commit/9e9f991ac033.diff";
|
||||
sha256 = "sha256:12s8vr6ibri8b48h2z38f3afhwam10arfiqfy4yg37bmc054p5hi";
|
||||
stripLen = 1;
|
||||
})
|
||||
# gcc-11 compat upstream patch
|
||||
(fetchpatch {
|
||||
url = "https://github.com/llvm/llvm-project/commit/b498303066a63a203d24f739b2d2e0e56dca70d1.patch";
|
||||
sha256 = "sha256:0nh123kld0dgz2h941lng331dkj3wbm5lfxm375k1f569gv83hlk";
|
||||
stripLen = 1;
|
||||
})
|
||||
|
||||
# Fix invalid std::string(nullptr) for GCC 12
|
||||
(fetchpatch {
|
||||
name = "nvptx-gcc-12.patch";
|
||||
url = "https://github.com/llvm/llvm-project/commit/99e64623ec9b31def9375753491cc6093c831809.patch";
|
||||
sha256 = "0zjfjgavqzi2ypqwqnlvy6flyvdz8hi1anwv0ybwnm2zqixg7za3";
|
||||
stripLen = 1;
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "dfaemitter-gcc-12.patch";
|
||||
url = "https://github.com/llvm/llvm-project/commit/0841916e87a39e3c223c986e8da31e4a9a1432e3.patch";
|
||||
sha256 = "1kckghvsngs51mqm82asy0s9vr19h8aqbw43a0w44mccqw6bzrwf";
|
||||
stripLen = 1;
|
||||
})
|
||||
|
||||
# Fix musl build.
|
||||
(fetchpatch {
|
||||
url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
|
||||
relative = "llvm";
|
||||
hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
|
||||
})
|
||||
|
||||
# Backport gcc-13 fixes with missing includes.
|
||||
(fetchpatch {
|
||||
name = "signals-gcc-13.patch";
|
||||
url = "https://github.com/llvm/llvm-project/commit/ff1681ddb303223973653f7f5f3f3435b48a1983.patch";
|
||||
hash = "sha256-CXwYxQezTq5vdmc8Yn88BUAEly6YZ5VEIA6X3y5NNOs=";
|
||||
stripLen = 1;
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "base64-gcc-13.patch";
|
||||
url = "https://github.com/llvm/llvm-project/commit/5e9be93566f39ee6cecd579401e453eccfbe81e5.patch";
|
||||
hash = "sha256-PAwrVrvffPd7tphpwCkYiz+67szPRzRB2TXBvKfzQ7U=";
|
||||
stripLen = 1;
|
||||
})
|
||||
] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
|
||||
|
||||
postPatch = optionalString stdenv.isDarwin ''
|
||||
substituteInPlace cmake/modules/AddLLVM.cmake \
|
||||
--replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
|
||||
--replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
|
||||
'' + ''
|
||||
# FileSystem permissions tests fail with various special bits
|
||||
substituteInPlace unittests/Support/CMakeLists.txt \
|
||||
--replace "Path.cpp" ""
|
||||
rm unittests/Support/Path.cpp
|
||||
'' + optionalString stdenv.hostPlatform.isMusl ''
|
||||
patch -p1 -i ${../../common/llvm/TLI-musl.patch}
|
||||
substituteInPlace unittests/Support/CMakeLists.txt \
|
||||
--replace "add_subdirectory(DynamicLibrary)" ""
|
||||
rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
|
||||
# valgrind unhappy with musl or glibc, but fails w/musl only
|
||||
rm test/CodeGen/AArch64/wineh4.mir
|
||||
'' + optionalString stdenv.hostPlatform.isAarch32 ''
|
||||
# skip failing X86 test cases on 32-bit ARM
|
||||
rm test/DebugInfo/X86/convert-debugloc.ll
|
||||
rm test/DebugInfo/X86/convert-inlined.ll
|
||||
rm test/DebugInfo/X86/convert-linked.ll
|
||||
rm test/tools/dsymutil/X86/op-convert.test
|
||||
rm test/tools/gold/X86/split-dwarf.ll
|
||||
rm test/tools/llvm-readobj/ELF/dependent-libraries.test
|
||||
'' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
|
||||
# Seems to require certain floating point hardware (NEON?)
|
||||
rm test/ExecutionEngine/frem.ll
|
||||
'' + ''
|
||||
patchShebangs test/BugPoint/compile-custom.ll.py
|
||||
'' + ''
|
||||
# Tweak tests to ignore namespace part of type to support
|
||||
# gcc-12: https://gcc.gnu.org/PR103598.
|
||||
# The change below mangles strings like:
|
||||
# CHECK-NEXT: Starting llvm::Function pass manager run.
|
||||
# to:
|
||||
# CHECK-NEXT: Starting {{.*}}Function pass manager run.
|
||||
for f in \
|
||||
test/Other/new-pass-manager.ll \
|
||||
test/Other/new-pm-defaults.ll \
|
||||
test/Other/new-pm-lto-defaults.ll \
|
||||
test/Other/new-pm-thinlto-defaults.ll \
|
||||
test/Other/pass-pipeline-parsing.ll \
|
||||
test/Transforms/Inline/cgscc-incremental-invalidate.ll \
|
||||
test/Transforms/Inline/clear-analyses.ll \
|
||||
test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \
|
||||
test/Transforms/SCCP/ipsccp-preserve-analysis.ll \
|
||||
test/Transforms/SCCP/preserve-analysis.ll \
|
||||
test/Transforms/SROA/dead-inst.ll \
|
||||
test/tools/gold/X86/new-pm.ll \
|
||||
; do
|
||||
echo "PATCH: $f"
|
||||
substituteInPlace $f \
|
||||
--replace 'Starting llvm::' 'Starting {{.*}}' \
|
||||
--replace 'Finished llvm::' 'Finished {{.*}}'
|
||||
done
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
# Workaround for configure flags that need to have spaces
|
||||
cmakeFlagsArray+=(
|
||||
-DLLVM_LIT_ARGS='-svj''${NIX_BUILD_CORES} --no-progress-bar'
|
||||
)
|
||||
'';
|
||||
|
||||
# hacky fix: created binaries need to be run before installation
|
||||
preBuild = ''
|
||||
mkdir -p $out/
|
||||
ln -sv $PWD/lib $out
|
||||
'';
|
||||
|
||||
# E.g. mesa.drivers use the build-id as a cache key (see #93946):
|
||||
LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
|
||||
|
||||
hardeningDisable = [ "trivialautovarinit" ];
|
||||
|
||||
cmakeBuildType = if debugVersion then "Debug" else "Release";
|
||||
|
||||
cmakeFlags = with stdenv; let
|
||||
# These flags influence llvm-config's BuildVariables.inc in addition to the
|
||||
# general build. We need to make sure these are also passed via
|
||||
# CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
|
||||
# will return different results from the cross llvm-config.
|
||||
#
|
||||
# Some flags don't need to be repassed because LLVM already does so (like
|
||||
# CMAKE_BUILD_TYPE), others are irrelevant to the result.
|
||||
flagsForLlvmConfig = [
|
||||
"-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
|
||||
"-DLLVM_ENABLE_RTTI=ON"
|
||||
] ++ optionals enableSharedLibraries [
|
||||
"-DLLVM_LINK_LLVM_DYLIB=ON"
|
||||
];
|
||||
in flagsForLlvmConfig ++ [
|
||||
"-DLLVM_INSTALL_UTILS=ON" # Needed by rustc
|
||||
"-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
|
||||
"-DLLVM_ENABLE_FFI=ON"
|
||||
"-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
|
||||
"-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
|
||||
"-DLLVM_ENABLE_DUMP=ON"
|
||||
] ++ optionals stdenv.hostPlatform.isStatic [
|
||||
# Disables building of shared libs, -fPIC is still injected by cc-wrapper
|
||||
"-DLLVM_ENABLE_PIC=OFF"
|
||||
"-DLLVM_BUILD_STATIC=ON"
|
||||
# libxml2 needs to be disabled because the LLVM build system ignores its .la
|
||||
# file and doesn't link zlib as well.
|
||||
# https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812
|
||||
"-DLLVM_ENABLE_LIBXML2=OFF"
|
||||
# This is a Shared Library not tied to LLVM_ENABLE_PIC
|
||||
"-DLLVM_TOOL_REMARKS_SHLIB_BUILD=OFF"
|
||||
] ++ optionals enableManpages [
|
||||
"-DLLVM_BUILD_DOCS=ON"
|
||||
"-DLLVM_ENABLE_SPHINX=ON"
|
||||
"-DSPHINX_OUTPUT_MAN=ON"
|
||||
"-DSPHINX_OUTPUT_HTML=OFF"
|
||||
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
|
||||
] ++ optionals (enableGoldPlugin) [
|
||||
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
|
||||
] ++ optionals isDarwin [
|
||||
"-DLLVM_ENABLE_LIBCXX=ON"
|
||||
"-DCAN_TARGET_i386=false"
|
||||
] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
|
||||
"-DCMAKE_CROSSCOMPILING=True"
|
||||
"-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
|
||||
(
|
||||
let
|
||||
nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
|
||||
nativeBintools = nativeCC.bintools.bintools;
|
||||
nativeToolchainFlags = [
|
||||
"-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
|
||||
"-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
|
||||
"-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
|
||||
"-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
|
||||
"-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
|
||||
];
|
||||
# We need to repass the custom GNUInstallDirs values, otherwise CMake
|
||||
# will choose them for us, leading to wrong results in llvm-config-native
|
||||
nativeInstallFlags = [
|
||||
"-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
|
||||
"-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
|
||||
"-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
|
||||
"-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
|
||||
"-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
|
||||
];
|
||||
in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
|
||||
+ lib.concatStringsSep ";" (lib.concatLists [
|
||||
flagsForLlvmConfig
|
||||
nativeToolchainFlags
|
||||
nativeInstallFlags
|
||||
])
|
||||
)
|
||||
];
|
||||
|
||||
postBuild = ''
|
||||
rm -fR $out
|
||||
'';
|
||||
|
||||
preCheck = ''
|
||||
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $python/share
|
||||
mv $out/share/opt-viewer $python/share/opt-viewer
|
||||
moveToOutput "bin/llvm-config*" "$dev"
|
||||
substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
|
||||
--replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
|
||||
--replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
|
||||
substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
|
||||
--replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
|
||||
''
|
||||
+ optionalString (stdenv.isDarwin && enableSharedLibraries) ''
|
||||
ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
|
||||
ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
|
||||
''
|
||||
+ optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
|
||||
cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
|
||||
'';
|
||||
|
||||
inherit doCheck;
|
||||
|
||||
checkTarget = "check-all";
|
||||
|
||||
requiredSystemFeatures = [ "big-parallel" ];
|
||||
meta = llvm_meta // {
|
||||
homepage = "https://llvm.org/";
|
||||
description = "A collection of modular and reusable compiler and toolchain technologies";
|
||||
longDescription = ''
|
||||
The LLVM Project is a collection of modular and reusable compiler and
|
||||
toolchain technologies. Despite its name, LLVM has little to do with
|
||||
traditional virtual machines. The name "LLVM" itself is not an acronym; it
|
||||
is the full name of the project.
|
||||
LLVM began as a research project at the University of Illinois, with the
|
||||
goal of providing a modern, SSA-based compilation strategy capable of
|
||||
supporting both static and dynamic compilation of arbitrary programming
|
||||
languages. Since then, LLVM has grown to be an umbrella project consisting
|
||||
of a number of subprojects, many of which are being used in production by
|
||||
a wide variety of commercial and open source projects as well as being
|
||||
widely used in academic research. Code in the LLVM project is licensed
|
||||
under the "Apache 2.0 License with LLVM exceptions".
|
||||
'';
|
||||
};
|
||||
} // lib.optionalAttrs enableManpages {
|
||||
pname = "llvm-manpages";
|
||||
|
||||
buildPhase = ''
|
||||
make docs-llvm-man
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [];
|
||||
|
||||
installPhase = ''
|
||||
make -C docs install
|
||||
'';
|
||||
|
||||
postPatch = null;
|
||||
postInstall = null;
|
||||
|
||||
outputs = [ "out" ];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = llvm_meta // {
|
||||
description = "man pages for LLVM ${version}";
|
||||
};
|
||||
})
|
@ -1,106 +0,0 @@
|
||||
diff --git a/tools/polly/CMakeLists.txt b/tools/polly/CMakeLists.txt
|
||||
index 9939097f743e..8cc538da912a 100644
|
||||
--- a/tools/polly/CMakeLists.txt
|
||||
+++ b/tools/polly/CMakeLists.txt
|
||||
@@ -2,7 +2,11 @@
|
||||
if (NOT DEFINED LLVM_MAIN_SRC_DIR)
|
||||
project(Polly)
|
||||
cmake_minimum_required(VERSION 3.4.3)
|
||||
+endif()
|
||||
+
|
||||
+include(GNUInstallDirs)
|
||||
|
||||
+if (NOT DEFINED LLVM_MAIN_SRC_DIR)
|
||||
# Where is LLVM installed?
|
||||
find_package(LLVM CONFIG REQUIRED)
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
|
||||
@@ -145,14 +149,14 @@ include_directories(
|
||||
|
||||
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
install(DIRECTORY include/
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
FILES_MATCHING
|
||||
PATTERN "*.h"
|
||||
PATTERN ".svn" EXCLUDE
|
||||
)
|
||||
|
||||
install(DIRECTORY ${POLLY_BINARY_DIR}/include/
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
FILES_MATCHING
|
||||
PATTERN "*.h"
|
||||
PATTERN "CMakeFiles" EXCLUDE
|
||||
diff --git a/tools/polly/cmake/CMakeLists.txt b/tools/polly/cmake/CMakeLists.txt
|
||||
index 211f95512717..f9e04a4844b6 100644
|
||||
--- a/tools/polly/cmake/CMakeLists.txt
|
||||
+++ b/tools/polly/cmake/CMakeLists.txt
|
||||
@@ -79,18 +79,18 @@ file(GENERATE
|
||||
|
||||
# Generate PollyConfig.cmake for the install tree.
|
||||
unset(POLLY_EXPORTS)
|
||||
-set(POLLY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
|
||||
+set(POLLY_INSTALL_PREFIX "")
|
||||
set(POLLY_CONFIG_LLVM_CMAKE_DIR "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
|
||||
-set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
|
||||
-set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
|
||||
+set(POLLY_CONFIG_CMAKE_DIR "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${POLLY_INSTALL_PACKAGE_DIR}")
|
||||
+set(POLLY_CONFIG_LIBRARY_DIRS "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
|
||||
if (POLLY_BUNDLED_ISL)
|
||||
set(POLLY_CONFIG_INCLUDE_DIRS
|
||||
- "${POLLY_INSTALL_PREFIX}/include"
|
||||
- "${POLLY_INSTALL_PREFIX}/include/polly"
|
||||
+ "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}"
|
||||
+ "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_LIBDIR}/polly"
|
||||
)
|
||||
else()
|
||||
set(POLLY_CONFIG_INCLUDE_DIRS
|
||||
- "${POLLY_INSTALL_PREFIX}/include"
|
||||
+ "${POLLY_INSTALL_PREFIX}${CMAKE_INSTALL_FULL_INCLUDEDIR}"
|
||||
${ISL_INCLUDE_DIRS}
|
||||
)
|
||||
endif()
|
||||
@@ -100,12 +100,12 @@ endif()
|
||||
foreach(tgt IN LISTS POLLY_CONFIG_EXPORTED_TARGETS)
|
||||
get_target_property(tgt_type ${tgt} TYPE)
|
||||
if (tgt_type STREQUAL "EXECUTABLE")
|
||||
- set(tgt_prefix "bin/")
|
||||
+ set(tgt_prefix "${CMAKE_INSTALL_BINDIR}/")
|
||||
else()
|
||||
- set(tgt_prefix "lib/")
|
||||
+ set(tgt_prefix "${CMAKE_INSTALL_LIBDIR}/")
|
||||
endif()
|
||||
|
||||
- set(tgt_path "${CMAKE_INSTALL_PREFIX}/${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
|
||||
+ set(tgt_path "${tgt_prefix}$<TARGET_FILE_NAME:${tgt}>")
|
||||
file(RELATIVE_PATH tgt_path ${POLLY_CONFIG_CMAKE_DIR} ${tgt_path})
|
||||
|
||||
if (NOT tgt_type STREQUAL "INTERFACE_LIBRARY")
|
||||
diff --git a/tools/polly/cmake/polly_macros.cmake b/tools/polly/cmake/polly_macros.cmake
|
||||
index 86de6f10686e..91f30891ccbe 100644
|
||||
--- a/tools/polly/cmake/polly_macros.cmake
|
||||
+++ b/tools/polly/cmake/polly_macros.cmake
|
||||
@@ -44,8 +44,8 @@ macro(add_polly_library name)
|
||||
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
|
||||
install(TARGETS ${name}
|
||||
EXPORT LLVMExports
|
||||
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
||||
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
|
||||
endif()
|
||||
set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
|
||||
endmacro(add_polly_library)
|
||||
diff --git a/tools/polly/lib/External/CMakeLists.txt b/tools/polly/lib/External/CMakeLists.txt
|
||||
index 1039079cb49c..28b499ae1e9e 100644
|
||||
--- a/tools/polly/lib/External/CMakeLists.txt
|
||||
+++ b/tools/polly/lib/External/CMakeLists.txt
|
||||
@@ -275,7 +275,7 @@ if (POLLY_BUNDLED_ISL)
|
||||
install(DIRECTORY
|
||||
${ISL_SOURCE_DIR}/include/
|
||||
${ISL_BINARY_DIR}/include/
|
||||
- DESTINATION include/polly
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/polly
|
||||
FILES_MATCHING
|
||||
PATTERN "*.h"
|
||||
PATTERN "CMakeFiles" EXCLUDE
|
@ -1,417 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 247ad36d3845..815e2c4ba955 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -269,15 +269,21 @@ if (CMAKE_BUILD_TYPE AND
|
||||
message(FATAL_ERROR "Invalid value for CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
|
||||
endif()
|
||||
|
||||
+include(GNUInstallDirs)
|
||||
+
|
||||
set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" )
|
||||
|
||||
-set(LLVM_TOOLS_INSTALL_DIR "bin" CACHE STRING "Path for binary subdirectory (defaults to 'bin')")
|
||||
+set(LLVM_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE STRING
|
||||
+ "Path for binary subdirectory (defaults to 'bin')")
|
||||
mark_as_advanced(LLVM_TOOLS_INSTALL_DIR)
|
||||
|
||||
set(LLVM_UTILS_INSTALL_DIR "${LLVM_TOOLS_INSTALL_DIR}" CACHE STRING
|
||||
"Path to install LLVM utilities (enabled by LLVM_INSTALL_UTILS=ON) (defaults to LLVM_TOOLS_INSTALL_DIR)")
|
||||
mark_as_advanced(LLVM_UTILS_INSTALL_DIR)
|
||||
|
||||
+set(LLVM_INSTALL_CMAKE_DIR "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/cmake/llvm" CACHE STRING
|
||||
+ "Path for CMake subdirectory (defaults to lib/cmake/llvm)" )
|
||||
+
|
||||
# They are used as destination of target generators.
|
||||
set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
|
||||
set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
|
||||
@@ -559,9 +565,9 @@ option (LLVM_ENABLE_SPHINX "Use Sphinx to generate llvm documentation." OFF)
|
||||
option (LLVM_ENABLE_OCAMLDOC "Build OCaml bindings documentation." ON)
|
||||
option (LLVM_ENABLE_BINDINGS "Build bindings." ON)
|
||||
|
||||
-set(LLVM_INSTALL_DOXYGEN_HTML_DIR "share/doc/llvm/doxygen-html"
|
||||
+set(LLVM_INSTALL_DOXYGEN_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html"
|
||||
CACHE STRING "Doxygen-generated HTML documentation install directory")
|
||||
-set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "share/doc/llvm/ocaml-html"
|
||||
+set(LLVM_INSTALL_OCAMLDOC_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html"
|
||||
CACHE STRING "OCamldoc-generated HTML documentation install directory")
|
||||
|
||||
option (LLVM_BUILD_EXTERNAL_COMPILER_RT
|
||||
@@ -1107,7 +1113,7 @@ endif()
|
||||
|
||||
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
install(DIRECTORY include/llvm include/llvm-c
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
COMPONENT llvm-headers
|
||||
FILES_MATCHING
|
||||
PATTERN "*.def"
|
||||
@@ -1119,7 +1125,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
)
|
||||
|
||||
install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
COMPONENT llvm-headers
|
||||
FILES_MATCHING
|
||||
PATTERN "*.def"
|
||||
@@ -1134,13 +1140,13 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
|
||||
if (LLVM_INSTALL_MODULEMAPS)
|
||||
install(DIRECTORY include/llvm include/llvm-c
|
||||
- DESTINATION include
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
COMPONENT llvm-headers
|
||||
FILES_MATCHING
|
||||
PATTERN "module.modulemap"
|
||||
)
|
||||
install(FILES include/llvm/module.install.modulemap
|
||||
- DESTINATION include/llvm
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm
|
||||
COMPONENT llvm-headers
|
||||
RENAME "module.extern.modulemap"
|
||||
)
|
||||
diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
|
||||
index b74adc11ade9..a5aa258cde30 100644
|
||||
--- a/cmake/modules/AddLLVM.cmake
|
||||
+++ b/cmake/modules/AddLLVM.cmake
|
||||
@@ -766,9 +766,9 @@ macro(add_llvm_library name)
|
||||
|
||||
install(TARGETS ${name}
|
||||
${export_to_llvmexports}
|
||||
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
|
||||
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
|
||||
- RUNTIME DESTINATION bin COMPONENT ${name})
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${name})
|
||||
|
||||
if (NOT LLVM_ENABLE_IDE)
|
||||
add_llvm_install_targets(install-${name}
|
||||
@@ -981,7 +981,7 @@ function(process_llvm_pass_plugins)
|
||||
"set(LLVM_STATIC_EXTENSIONS ${LLVM_STATIC_EXTENSIONS})")
|
||||
install(FILES
|
||||
${llvm_cmake_builddir}/LLVMConfigExtensions.cmake
|
||||
- DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
|
||||
+ DESTINATION ${LLVM_INSTALL_CMAKE_DIR}
|
||||
COMPONENT cmake-exports)
|
||||
|
||||
set(ExtensionDef "${LLVM_BINARY_DIR}/include/llvm/Support/Extension.def")
|
||||
@@ -1201,7 +1201,7 @@ macro(add_llvm_example name)
|
||||
endif()
|
||||
add_llvm_executable(${name} ${ARGN})
|
||||
if( LLVM_BUILD_EXAMPLES )
|
||||
- install(TARGETS ${name} RUNTIME DESTINATION examples)
|
||||
+ install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
|
||||
endif()
|
||||
set_target_properties(${name} PROPERTIES FOLDER "Examples")
|
||||
endmacro(add_llvm_example name)
|
||||
@@ -1819,7 +1819,7 @@ function(llvm_install_library_symlink name dest type)
|
||||
set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
|
||||
set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
|
||||
|
||||
- set(output_dir lib${LLVM_LIBDIR_SUFFIX})
|
||||
+ set(output_dir ${CMAKE_INSTALL_FULL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
|
||||
if(WIN32 AND "${type}" STREQUAL "SHARED")
|
||||
set(output_dir bin)
|
||||
endif()
|
||||
@@ -1836,7 +1836,7 @@ function(llvm_install_library_symlink name dest type)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
-function(llvm_install_symlink name dest)
|
||||
+function(llvm_install_symlink name dest output_dir)
|
||||
cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
|
||||
foreach(path ${CMAKE_MODULE_PATH})
|
||||
if(EXISTS ${path}/LLVMInstallSymlink.cmake)
|
||||
@@ -1859,7 +1859,7 @@ function(llvm_install_symlink name dest)
|
||||
set(full_dest ${dest}${CMAKE_EXECUTABLE_SUFFIX})
|
||||
|
||||
install(SCRIPT ${INSTALL_SYMLINK}
|
||||
- CODE "install_symlink(${full_name} ${full_dest} ${LLVM_TOOLS_INSTALL_DIR})"
|
||||
+ CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
|
||||
COMPONENT ${component})
|
||||
|
||||
if (NOT LLVM_ENABLE_IDE AND NOT ARG_ALWAYS_GENERATE)
|
||||
@@ -1942,7 +1942,8 @@ function(add_llvm_tool_symlink link_name target)
|
||||
endif()
|
||||
|
||||
if ((TOOL_IS_TOOLCHAIN OR NOT LLVM_INSTALL_TOOLCHAIN_ONLY) AND LLVM_BUILD_TOOLS)
|
||||
- llvm_install_symlink(${link_name} ${target})
|
||||
+ GNUInstallDirs_get_absolute_install_dir(output_dir LLVM_TOOLS_INSTALL_DIR)
|
||||
+ llvm_install_symlink(${link_name} ${target} ${output_dir})
|
||||
endif()
|
||||
endif()
|
||||
endfunction()
|
||||
@@ -2064,9 +2065,9 @@ function(llvm_setup_rpath name)
|
||||
|
||||
if (APPLE)
|
||||
set(_install_name_dir INSTALL_NAME_DIR "@rpath")
|
||||
- set(_install_rpath "@loader_path/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
|
||||
+ set(_install_rpath "@loader_path/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
|
||||
elseif(UNIX)
|
||||
- set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
|
||||
+ set(_install_rpath "\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
|
||||
set_property(TARGET ${name} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS " -Wl,-z,origin ")
|
||||
diff --git a/cmake/modules/AddOCaml.cmake b/cmake/modules/AddOCaml.cmake
|
||||
index 554046b20edf..4d1ad980641e 100644
|
||||
--- a/cmake/modules/AddOCaml.cmake
|
||||
+++ b/cmake/modules/AddOCaml.cmake
|
||||
@@ -144,9 +144,9 @@ function(add_ocaml_library name)
|
||||
endforeach()
|
||||
|
||||
if( APPLE )
|
||||
- set(ocaml_rpath "@executable_path/../../../lib${LLVM_LIBDIR_SUFFIX}")
|
||||
+ set(ocaml_rpath "@executable_path/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
|
||||
elseif( UNIX )
|
||||
- set(ocaml_rpath "\\$ORIGIN/../../../lib${LLVM_LIBDIR_SUFFIX}")
|
||||
+ set(ocaml_rpath "\\$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}")
|
||||
endif()
|
||||
list(APPEND ocaml_flags "-ldopt" "-Wl,-rpath,${ocaml_rpath}")
|
||||
|
||||
diff --git a/cmake/modules/AddSphinxTarget.cmake b/cmake/modules/AddSphinxTarget.cmake
|
||||
index b5babb30abcf..190b1222a9f9 100644
|
||||
--- a/cmake/modules/AddSphinxTarget.cmake
|
||||
+++ b/cmake/modules/AddSphinxTarget.cmake
|
||||
@@ -84,7 +84,7 @@ function (add_sphinx_target builder project)
|
||||
endif()
|
||||
elseif (builder STREQUAL html)
|
||||
string(TOUPPER "${project}" project_upper)
|
||||
- set(${project_upper}_INSTALL_SPHINX_HTML_DIR "share/doc/${project}/html"
|
||||
+ set(${project_upper}_INSTALL_SPHINX_HTML_DIR "${CMAKE_INSTALL_DOCDIR}/${project}/html"
|
||||
CACHE STRING "HTML documentation install directory for ${project}")
|
||||
|
||||
# '/.' indicates: copy the contents of the directory directly into
|
||||
diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
|
||||
index 4b8879f65fe4..f01920bcc60f 100644
|
||||
--- a/cmake/modules/CMakeLists.txt
|
||||
+++ b/cmake/modules/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)
|
||||
+set(LLVM_INSTALL_PACKAGE_DIR ${LLVM_INSTALL_CMAKE_DIR} CACHE STRING "Path for CMake subdirectory (defaults to 'cmake/llvm')")
|
||||
set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
|
||||
|
||||
# First for users who use an installed LLVM, create the LLVMExports.cmake file.
|
||||
@@ -108,13 +108,13 @@ foreach(p ${_count})
|
||||
set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
|
||||
get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
|
||||
endforeach(p)
|
||||
-set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
|
||||
+set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}")
|
||||
set(LLVM_CONFIG_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
|
||||
set(LLVM_CONFIG_MAIN_INCLUDE_DIR "${LLVM_CONFIG_INCLUDE_DIRS}")
|
||||
-set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
|
||||
+set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\${LLVM_LIBDIR_SUFFIX}")
|
||||
set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
|
||||
set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
|
||||
-set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
|
||||
+set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}")
|
||||
|
||||
# Generate a default location for lit
|
||||
if (LLVM_INSTALL_UTILS AND LLVM_BUILD_UTILS)
|
||||
diff --git a/cmake/modules/LLVMInstallSymlink.cmake b/cmake/modules/LLVMInstallSymlink.cmake
|
||||
index 09fed8085c23..aa79f192abf0 100644
|
||||
--- a/cmake/modules/LLVMInstallSymlink.cmake
|
||||
+++ b/cmake/modules/LLVMInstallSymlink.cmake
|
||||
@@ -10,7 +10,7 @@ function(install_symlink name target outdir)
|
||||
set(LINK_OR_COPY copy)
|
||||
endif()
|
||||
|
||||
- set(bindir "${DESTDIR}${CMAKE_INSTALL_PREFIX}/${outdir}/")
|
||||
+ set(bindir "${DESTDIR}${outdir}/")
|
||||
|
||||
message(STATUS "Creating ${name}")
|
||||
|
||||
diff --git a/docs/CMake.rst b/docs/CMake.rst
|
||||
index 1f908d3e95b1..1315e0aa40e1 100644
|
||||
--- a/docs/CMake.rst
|
||||
+++ b/docs/CMake.rst
|
||||
@@ -196,7 +196,7 @@ CMake manual, or execute ``cmake --help-variable VARIABLE_NAME``.
|
||||
**LLVM_LIBDIR_SUFFIX**:STRING
|
||||
Extra suffix to append to the directory where libraries are to be
|
||||
installed. On a 64-bit architecture, one could use ``-DLLVM_LIBDIR_SUFFIX=64``
|
||||
- to install libraries to ``/usr/lib64``.
|
||||
+ to install libraries to ``/usr/lib64``. See also ``CMAKE_INSTALL_LIBDIR``.
|
||||
|
||||
**CMAKE_C_FLAGS**:STRING
|
||||
Extra flags to use when compiling C source files.
|
||||
@@ -516,8 +516,8 @@ LLVM-specific variables
|
||||
|
||||
**LLVM_INSTALL_DOXYGEN_HTML_DIR**:STRING
|
||||
The path to install Doxygen-generated HTML documentation to. This path can
|
||||
- either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
|
||||
- `share/doc/llvm/doxygen-html`.
|
||||
+ either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
|
||||
+ `${CMAKE_INSTALL_DOCDIR}/${project}/doxygen-html`.
|
||||
|
||||
**LLVM_ENABLE_SPHINX**:BOOL
|
||||
If specified, CMake will search for the ``sphinx-build`` executable and will make
|
||||
@@ -548,13 +548,33 @@ LLVM-specific variables
|
||||
|
||||
**LLVM_INSTALL_SPHINX_HTML_DIR**:STRING
|
||||
The path to install Sphinx-generated HTML documentation to. This path can
|
||||
- either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
|
||||
- `share/doc/llvm/html`.
|
||||
+ either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
|
||||
+ `${CMAKE_INSTALL_DOCDIR}/${project}/html`.
|
||||
|
||||
**LLVM_INSTALL_OCAMLDOC_HTML_DIR**:STRING
|
||||
The path to install OCamldoc-generated HTML documentation to. This path can
|
||||
- either be absolute or relative to the CMAKE_INSTALL_PREFIX. Defaults to
|
||||
- `share/doc/llvm/ocaml-html`.
|
||||
+ either be absolute or relative to the ``CMAKE_INSTALL_PREFIX``. Defaults to
|
||||
+ `${CMAKE_INSTALL_DOCDIR}/${project}/ocaml-html`.
|
||||
+
|
||||
+**CMAKE_INSTALL_BINDIR**:STRING
|
||||
+ The path to install binary tools, relative to the ``CMAKE_INSTALL_PREFIX``.
|
||||
+ Defaults to `bin`.
|
||||
+
|
||||
+**CMAKE_INSTALL_LIBDIR**:STRING
|
||||
+ The path to install libraries, relative to the ``CMAKE_INSTALL_PREFIX``.
|
||||
+ Defaults to `lib`.
|
||||
+
|
||||
+**CMAKE_INSTALL_INCLUDEDIR**:STRING
|
||||
+ The path to install header files, relative to the ``CMAKE_INSTALL_PREFIX``.
|
||||
+ Defaults to `include`.
|
||||
+
|
||||
+**CMAKE_INSTALL_DOCDIR**:STRING
|
||||
+ The path to install documentation, relative to the ``CMAKE_INSTALL_PREFIX``.
|
||||
+ Defaults to `share/doc`.
|
||||
+
|
||||
+**CMAKE_INSTALL_MANDIR**:STRING
|
||||
+ The path to install manpage files, relative to the ``CMAKE_INSTALL_PREFIX``.
|
||||
+ Defaults to `share/man`.
|
||||
|
||||
**LLVM_CREATE_XCODE_TOOLCHAIN**:BOOL
|
||||
macOS Only: If enabled CMake will generate a target named
|
||||
@@ -752,9 +772,11 @@ the ``cmake`` command or by setting it directly in ``ccmake`` or ``cmake-gui``).
|
||||
|
||||
This file is available in two different locations.
|
||||
|
||||
-* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where
|
||||
- ``<INSTALL_PREFIX>`` is the install prefix of an installed version of LLVM.
|
||||
- On Linux typically this is ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
|
||||
+* ``<LLVM_INSTALL_PACKAGE_DIR>LLVMConfig.cmake`` where
|
||||
+ ``<LLVM_INSTALL_PACKAGE_DIR>`` is the location where LLVM CMake modules are
|
||||
+ installed as part of an installed version of LLVM. This is typically
|
||||
+ ``cmake/llvm/`` within the lib directory. On Linux, this is typically
|
||||
+ ``/usr/lib/cmake/llvm/LLVMConfig.cmake``.
|
||||
|
||||
* ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where
|
||||
``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this is only
|
||||
diff --git a/examples/Bye/CMakeLists.txt b/examples/Bye/CMakeLists.txt
|
||||
index bb96edb4b4bf..678c22fb43c8 100644
|
||||
--- a/examples/Bye/CMakeLists.txt
|
||||
+++ b/examples/Bye/CMakeLists.txt
|
||||
@@ -14,6 +14,6 @@ if (NOT WIN32)
|
||||
BUILDTREE_ONLY
|
||||
)
|
||||
|
||||
- install(TARGETS ${name} RUNTIME DESTINATION examples)
|
||||
+ install(TARGETS ${name} RUNTIME DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples)
|
||||
set_target_properties(${name} PROPERTIES FOLDER "Examples")
|
||||
endif()
|
||||
diff --git a/include/llvm/CMakeLists.txt b/include/llvm/CMakeLists.txt
|
||||
index b46319f24fc8..2feabd1954e4 100644
|
||||
--- a/include/llvm/CMakeLists.txt
|
||||
+++ b/include/llvm/CMakeLists.txt
|
||||
@@ -5,5 +5,5 @@ add_subdirectory(Frontend)
|
||||
# If we're doing an out-of-tree build, copy a module map for generated
|
||||
# header files into the build area.
|
||||
if (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
|
||||
- configure_file(module.modulemap.build module.modulemap COPYONLY)
|
||||
+ configure_file(module.modulemap.build ${LLVM_INCLUDE_DIR}/module.modulemap COPYONLY)
|
||||
endif (NOT "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
|
||||
diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
|
||||
index 63cef75368b7..6295478b1f3d 100644
|
||||
--- a/tools/llvm-config/BuildVariables.inc.in
|
||||
+++ b/tools/llvm-config/BuildVariables.inc.in
|
||||
@@ -23,6 +23,10 @@
|
||||
#define LLVM_CXXFLAGS "@LLVM_CXXFLAGS@"
|
||||
#define LLVM_BUILDMODE "@LLVM_BUILDMODE@"
|
||||
#define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
|
||||
+#define LLVM_INSTALL_BINDIR "@CMAKE_INSTALL_BINDIR@"
|
||||
+#define LLVM_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@"
|
||||
+#define LLVM_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@"
|
||||
+#define LLVM_INSTALL_CMAKEDIR "@LLVM_INSTALL_CMAKE_DIR@"
|
||||
#define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
|
||||
#define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
|
||||
#define LLVM_BUILD_SYSTEM "@LLVM_BUILD_SYSTEM@"
|
||||
diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
|
||||
index 7e74b7c90816..f185e9283f83 100644
|
||||
--- a/tools/llvm-config/llvm-config.cpp
|
||||
+++ b/tools/llvm-config/llvm-config.cpp
|
||||
@@ -358,12 +358,26 @@ int main(int argc, char **argv) {
|
||||
("-I" + ActiveIncludeDir + " " + "-I" + ActiveObjRoot + "/include");
|
||||
} else {
|
||||
ActivePrefix = CurrentExecPrefix;
|
||||
- ActiveIncludeDir = ActivePrefix + "/include";
|
||||
- SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
|
||||
- sys::fs::make_absolute(ActivePrefix, path);
|
||||
- ActiveBinDir = std::string(path.str());
|
||||
- ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
|
||||
- ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
|
||||
+ {
|
||||
+ SmallString<256> path(StringRef(LLVM_INSTALL_INCLUDEDIR));
|
||||
+ sys::fs::make_absolute(ActivePrefix, path);
|
||||
+ ActiveIncludeDir = std::string(path.str());
|
||||
+ }
|
||||
+ {
|
||||
+ SmallString<256> path(StringRef(LLVM_INSTALL_BINDIR));
|
||||
+ sys::fs::make_absolute(ActivePrefix, path);
|
||||
+ ActiveBinDir = std::string(path.str());
|
||||
+ }
|
||||
+ {
|
||||
+ SmallString<256> path(StringRef(LLVM_INSTALL_LIBDIR LLVM_LIBDIR_SUFFIX));
|
||||
+ sys::fs::make_absolute(ActivePrefix, path);
|
||||
+ ActiveLibDir = std::string(path.str());
|
||||
+ }
|
||||
+ {
|
||||
+ SmallString<256> path(StringRef(LLVM_INSTALL_CMAKEDIR));
|
||||
+ sys::fs::make_absolute(ActivePrefix, path);
|
||||
+ ActiveCMakeDir = std::string(path.str());
|
||||
+ }
|
||||
ActiveIncludeOption = "-I" + ActiveIncludeDir;
|
||||
}
|
||||
|
||||
diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
|
||||
index 2963f97cad88..69d66c9c9ca1 100644
|
||||
--- a/tools/lto/CMakeLists.txt
|
||||
+++ b/tools/lto/CMakeLists.txt
|
||||
@@ -25,7 +25,7 @@ add_llvm_library(LTO SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES} DEPENDS
|
||||
intrinsics_gen)
|
||||
|
||||
install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
|
||||
- DESTINATION include/llvm-c
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
|
||||
COMPONENT LTO)
|
||||
|
||||
if (APPLE)
|
||||
diff --git a/tools/opt-viewer/CMakeLists.txt b/tools/opt-viewer/CMakeLists.txt
|
||||
index ead73ec13a8f..250362021f17 100644
|
||||
--- a/tools/opt-viewer/CMakeLists.txt
|
||||
+++ b/tools/opt-viewer/CMakeLists.txt
|
||||
@@ -8,7 +8,7 @@ set (files
|
||||
|
||||
foreach (file ${files})
|
||||
install(PROGRAMS ${file}
|
||||
- DESTINATION share/opt-viewer
|
||||
+ DESTINATION ${CMAKE_INSTALL_DATADIR}/opt-viewer
|
||||
COMPONENT opt-viewer)
|
||||
endforeach (file)
|
||||
|
||||
diff --git a/tools/remarks-shlib/CMakeLists.txt b/tools/remarks-shlib/CMakeLists.txt
|
||||
index e948496c603a..1f4df8a98b10 100644
|
||||
--- a/tools/remarks-shlib/CMakeLists.txt
|
||||
+++ b/tools/remarks-shlib/CMakeLists.txt
|
||||
@@ -11,7 +11,7 @@ set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/Remarks.exports)
|
||||
add_llvm_library(Remarks SHARED INSTALL_WITH_TOOLCHAIN ${SOURCES})
|
||||
|
||||
install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/Remarks.h
|
||||
- DESTINATION include/llvm-c
|
||||
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/llvm-c
|
||||
COMPONENT Remarks)
|
||||
|
||||
if (APPLE)
|
@ -1,47 +0,0 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, llvm_meta
|
||||
, fetch
|
||||
, fetchpatch
|
||||
, cmake
|
||||
, llvm
|
||||
, targetLlvm
|
||||
, perl
|
||||
, version
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "openmp";
|
||||
inherit version;
|
||||
|
||||
src = fetch pname "0bh5cswgpc79awlq8j5i7hp355adaac7s6zaz0zwp6mkflxli1yi";
|
||||
|
||||
patches = [
|
||||
# Fix compilation on aarch64-darwin, remove after the next release.
|
||||
(fetchpatch {
|
||||
url = "https://github.com/llvm/llvm-project/commit/7b5254223acbf2ef9cd278070c5a84ab278d7e5f.patch";
|
||||
sha256 = "sha256-A+9/IVIoazu68FK5H5CiXcOEYe1Hpp4xTx2mIw7m8Es=";
|
||||
stripLen = 1;
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake perl ];
|
||||
buildInputs = [
|
||||
(if stdenv.buildPlatform == stdenv.hostPlatform then llvm else targetLlvm)
|
||||
];
|
||||
|
||||
meta = llvm_meta // {
|
||||
homepage = "https://openmp.llvm.org/";
|
||||
description = "Support for the OpenMP language";
|
||||
longDescription = ''
|
||||
The OpenMP subproject of LLVM contains the components required to build an
|
||||
executable OpenMP program that are outside the compiler itself.
|
||||
Contains the code for the runtime library against which code compiled by
|
||||
"clang -fopenmp" must be linked before it can run and the library that
|
||||
supports offload to target devices.
|
||||
'';
|
||||
# "All of the code is dual licensed under the MIT license and the UIUC
|
||||
# License (a BSD-like license)":
|
||||
license = with lib.licenses; [ mit ncsa ];
|
||||
};
|
||||
}
|
@ -15,32 +15,22 @@
|
||||
|
||||
let
|
||||
enableFeature = yes: if yes then "ON" else "OFF";
|
||||
versions = lib.importJSON ./versions.json;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "duckdb";
|
||||
version = "0.10.0";
|
||||
inherit (versions) rev version;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-qGUq0iYTaLNHKqbXNLRmvqHMqunvIlP991IKb4qdSt4=";
|
||||
# to update run:
|
||||
# nix-shell maintainers/scripts/update.nix --argstr path duckdb
|
||||
inherit (versions) hash;
|
||||
owner = "duckdb";
|
||||
repo = "duckdb";
|
||||
rev = "refs/tags/v${finalAttrs.version}";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# remove calls to git and set DUCKDB_VERSION to version
|
||||
(substituteAll {
|
||||
src = ./version.patch;
|
||||
version = "v${version}";
|
||||
})
|
||||
# add missing file needed for httpfs compile
|
||||
# remove on next update
|
||||
(fetchpatch {
|
||||
name = "missing-httpfs-file.patch";
|
||||
url = "https://github.com/duckdb/duckdb/commit/3d7aa3ed46ecf5f18122559e385b75f1f5e9aba8.patch";
|
||||
hash = "sha256-Q4IHCpMpxn86OquUZdEF7P0nHEPOcWS0TQijTkvBYbQ=";
|
||||
})
|
||||
];
|
||||
outputs = [ "out" "lib" "dev" ];
|
||||
|
||||
nativeBuildInputs = [ cmake ninja python3 ];
|
||||
buildInputs = [ openssl ]
|
||||
@ -48,22 +38,22 @@ stdenv.mkDerivation rec {
|
||||
++ lib.optionals withOdbc [ unixODBC ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DDUCKDB_EXTENSION_CONFIGS=${src}/.github/config/in_tree_extensions.cmake"
|
||||
"-DDUCKDB_EXTENSION_CONFIGS=${finalAttrs.src}/.github/config/in_tree_extensions.cmake"
|
||||
"-DBUILD_ODBC_DRIVER=${enableFeature withOdbc}"
|
||||
"-DJDBC_DRIVER=${enableFeature withJdbc}"
|
||||
] ++ lib.optionals doInstallCheck [
|
||||
"-DOVERRIDE_GIT_DESCRIBE=v${finalAttrs.version}-0-g${finalAttrs.rev}"
|
||||
] ++ lib.optionals finalAttrs.doInstallCheck [
|
||||
# development settings
|
||||
"-DBUILD_UNITTESTS=ON"
|
||||
];
|
||||
|
||||
doInstallCheck = true;
|
||||
|
||||
preInstallCheck = ''
|
||||
export HOME="$(mktemp -d)"
|
||||
'' + lib.optionalString stdenv.isDarwin ''
|
||||
export DYLD_LIBRARY_PATH="$out/lib''${DYLD_LIBRARY_PATH:+:}''${DYLD_LIBRARY_PATH}"
|
||||
postInstall = ''
|
||||
mkdir -p $lib
|
||||
mv $out/lib $lib
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
|
||||
installCheckPhase =
|
||||
let
|
||||
excludes = map (pattern: "exclude:'${pattern}'") ([
|
||||
@ -105,26 +95,29 @@ stdenv.mkDerivation rec {
|
||||
"test/sql/copy/csv/auto/test_csv_auto.test"
|
||||
# test expects installed file timestamp to be > 2024
|
||||
"test/sql/table_function/read_text_and_blob.test"
|
||||
# can re-enable next update (broken for 0.10.0)
|
||||
"test/sql/secrets/create_secret_non_writable_persistent_dir.test"
|
||||
# https://github.com/duckdb/duckdb/issues/10722
|
||||
"test/sql/types/nested/list/list_aggregate_dict.test"
|
||||
# fails with Out of Memory Error
|
||||
"test/sql/copy/parquet/batched_write/batch_memory_usage.test"
|
||||
# wants http connection
|
||||
"test/sql/copy/csv/test_mixed_lines.test"
|
||||
] ++ lib.optionals stdenv.isAarch64 [
|
||||
"test/sql/aggregate/aggregates/test_kurtosis.test"
|
||||
"test/sql/aggregate/aggregates/test_skewness.test"
|
||||
"test/sql/function/list/aggregates/skewness.test"
|
||||
]);
|
||||
LD_LIBRARY_PATH = lib.optionalString stdenv.isDarwin "DY" + "LD_LIBRARY_PATH";
|
||||
in
|
||||
''
|
||||
runHook preInstallCheck
|
||||
|
||||
./test/unittest ${toString excludes}
|
||||
HOME="$(mktemp -d)" ${LD_LIBRARY_PATH}="$lib/lib" ./test/unittest ${toString excludes}
|
||||
|
||||
runHook postInstallCheck
|
||||
'';
|
||||
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
meta = with lib; {
|
||||
changelog = "https://github.com/duckdb/duckdb/releases/tag/v${version}";
|
||||
changelog = "https://github.com/duckdb/duckdb/releases/tag/v${finalAttrs.version}";
|
||||
description = "Embeddable SQL OLAP Database Management System";
|
||||
homepage = "https://duckdb.org/";
|
||||
license = licenses.mit;
|
||||
@ -132,4 +125,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = with maintainers; [ costrouc cpcloud ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
45
pkgs/development/libraries/duckdb/update.sh
Executable file
45
pkgs/development/libraries/duckdb/update.sh
Executable file
@ -0,0 +1,45 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell --pure -i bash -p cacert curl jq moreutils nix-prefetch
|
||||
# shellcheck shell=bash
|
||||
|
||||
set -euo pipefail
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||
|
||||
nixpkgs=$(while [[ ! -e .git ]]; do [[ ${PWD} != / ]] || exit 1; cd ..; done; echo "${PWD}")
|
||||
|
||||
repo=duckdb
|
||||
owner=duckdb
|
||||
|
||||
msg() {
|
||||
echo "$*" >&2
|
||||
}
|
||||
|
||||
json_get() {
|
||||
jq -r "$1" < 'versions.json'
|
||||
}
|
||||
|
||||
json_set() {
|
||||
jq --arg x "$2" "$1 = \$x" < 'versions.json' | sponge 'versions.json'
|
||||
}
|
||||
|
||||
get_latest() {
|
||||
curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} -s \
|
||||
"https://api.github.com/repos/${owner}/${repo}/releases/latest" | jq -r .tag_name
|
||||
}
|
||||
|
||||
get_sha() {
|
||||
curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} -s \
|
||||
"https://api.github.com/repos/${owner}/${repo}/git/ref/tags/$1" | jq -r .object.sha
|
||||
}
|
||||
|
||||
tag=$(get_latest)
|
||||
version=${tag/v/}
|
||||
|
||||
[[ ${version} = $(json_get .version) ]] && { msg "${version} is up to date"; exit 0; }
|
||||
|
||||
sha=$(get_sha "${tag}")
|
||||
sri=$(nix-prefetch -I nixpkgs="${nixpkgs}" -E "duckdb.overrideAttrs { version = \"${version}\"; }")
|
||||
|
||||
json_set ".version" "${version}"
|
||||
json_set ".rev" "${sha}"
|
||||
json_set ".hash" "${sri}"
|
@ -1,58 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 2b49e11288..0a4a69b9a0 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -244,52 +244,7 @@ if(${CMAKE_SYSTEM_NAME} STREQUAL "SunOS")
|
||||
set(SUN TRUE)
|
||||
endif()
|
||||
|
||||
-find_package(Git)
|
||||
-if(Git_FOUND)
|
||||
- if (NOT DEFINED GIT_COMMIT_HASH)
|
||||
- execute_process(
|
||||
- COMMAND ${GIT_EXECUTABLE} log -1 --format=%h
|
||||
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
- RESULT_VARIABLE GIT_RESULT
|
||||
- OUTPUT_VARIABLE GIT_COMMIT_HASH
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
- endif()
|
||||
- execute_process(
|
||||
- COMMAND ${GIT_EXECUTABLE} describe --tags --abbrev=0
|
||||
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
- OUTPUT_VARIABLE GIT_LAST_TAG
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
- execute_process(
|
||||
- COMMAND ${GIT_EXECUTABLE} describe --tags --long
|
||||
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
- OUTPUT_VARIABLE GIT_ITERATION
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
-else()
|
||||
- message("Git NOT FOUND")
|
||||
-endif()
|
||||
-
|
||||
-if(GIT_RESULT EQUAL "0")
|
||||
- string(REGEX REPLACE "v([0-9]+).[0-9]+.[0-9]+" "\\1" DUCKDB_MAJOR_VERSION "${GIT_LAST_TAG}")
|
||||
- string(REGEX REPLACE "v[0-9]+.([0-9]+).[0-9]+" "\\1" DUCKDB_MINOR_VERSION "${GIT_LAST_TAG}")
|
||||
- string(REGEX REPLACE "v[0-9]+.[0-9]+.([0-9]+)" "\\1" DUCKDB_PATCH_VERSION "${GIT_LAST_TAG}")
|
||||
- string(REGEX REPLACE ".*-([0-9]+)-.*" "\\1" DUCKDB_DEV_ITERATION "${GIT_ITERATION}")
|
||||
-
|
||||
- if(DUCKDB_DEV_ITERATION EQUAL 0)
|
||||
- # on a tag; directly use the version
|
||||
- set(DUCKDB_VERSION "${GIT_LAST_TAG}")
|
||||
- else()
|
||||
- # not on a tag, increment the patch version by one and add a -devX suffix
|
||||
- math(EXPR DUCKDB_PATCH_VERSION "${DUCKDB_PATCH_VERSION}+1")
|
||||
- set(DUCKDB_VERSION "v${DUCKDB_MAJOR_VERSION}.${DUCKDB_MINOR_VERSION}.${DUCKDB_PATCH_VERSION}-dev${DUCKDB_DEV_ITERATION}")
|
||||
- endif()
|
||||
-else()
|
||||
- # fallback for when building from tarball
|
||||
- set(DUCKDB_MAJOR_VERSION 0)
|
||||
- set(DUCKDB_MINOR_VERSION 0)
|
||||
- set(DUCKDB_PATCH_VERSION 1)
|
||||
- set(DUCKDB_DEV_ITERATION 0)
|
||||
- set(DUCKDB_VERSION "v${DUCKDB_MAJOR_VERSION}.${DUCKDB_MINOR_VERSION}.${DUCKDB_PATCH_VERSION}-dev${DUCKDB_DEV_ITERATION}")
|
||||
-endif()
|
||||
+set(DUCKDB_VERSION "@version@")
|
||||
|
||||
message(STATUS "git hash ${GIT_COMMIT_HASH}, version ${DUCKDB_VERSION}")
|
||||
|
5
pkgs/development/libraries/duckdb/versions.json
Normal file
5
pkgs/development/libraries/duckdb/versions.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"version": "0.10.1",
|
||||
"rev": "4a89d97db8a5a23a15f3025c8d2d2885337c2637",
|
||||
"hash": "sha256-/j/DaUzsfACI5Izr4lblkYmIEmKsOXr760UTwC0l/qg="
|
||||
}
|
@ -19,11 +19,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
cmake
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "The fastest JSON library in C";
|
||||
homepage = "https://github.com/ibireme/yyjson";
|
||||
changelog = "https://github.com/ibireme/yyjson/blob/${finalAttrs.src.rev}/CHANGELOG.md";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ];
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ federicoschonborn ];
|
||||
};
|
||||
})
|
||||
|
@ -362,7 +362,7 @@ let
|
||||
|
||||
nyxt-gtk = build-asdf-system {
|
||||
pname = "nyxt";
|
||||
version = "3.11.4";
|
||||
version = "3.11.5";
|
||||
|
||||
lispLibs = (with super; [
|
||||
alexandria
|
||||
@ -445,6 +445,8 @@ let
|
||||
"slynk/profiler" "slynk/stickers" "slynk/indentation"
|
||||
"slynk/retro" ];
|
||||
}))
|
||||
iterate
|
||||
symbol-munger
|
||||
]) ++ (with self; [
|
||||
history-tree
|
||||
nhooks
|
||||
@ -457,7 +459,6 @@ let
|
||||
nfiles
|
||||
cl-containers
|
||||
# remove this override after quicklisp one is updated.
|
||||
# Because of building failure with new sbcl, the slime version is different from the nyxt pinned one
|
||||
(swank.overrideAttrs (final: prev: {
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "slime";
|
||||
@ -472,8 +473,8 @@ let
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "atlas-engineer";
|
||||
repo = "nyxt";
|
||||
rev = "3.11.4";
|
||||
hash = "sha256-5LhpcuQTioOXZtzwN9B1vWo/xsYXxn9fSKRCdhSPM7A=";
|
||||
rev = "3.11.5";
|
||||
hash = "sha256-l3igC4jfCvx7Q0WO2Zf2ByWLz7sCteYdW1rNvwrc97g=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgs.makeWrapper ];
|
||||
|
@ -11,16 +11,16 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aiocurrencylayer";
|
||||
version = "1.0.5";
|
||||
format = "pyproject";
|
||||
version = "1.0.6";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
disabled = pythonOlder "3.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "home-assistant-ecosystem";
|
||||
repo = pname;
|
||||
repo = "aiocurrencylayer";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-468OBQV7ISnPRUfi/CM3dCh1ez0jwSVnM6DduPvAgPI=";
|
||||
hash = "sha256-VOzgWN+dDPaGEcahFPSWjBR989b9eNkx4zcnI9o2Xiw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "app-model";
|
||||
version = "0.2.4";
|
||||
version = "0.2.5";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@ -23,7 +23,7 @@ buildPythonPackage rec {
|
||||
owner = "pyapp-kit";
|
||||
repo = "app-model";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-idie99ditHJG/6rv97LDaF71iTjjgJyhLiTrbkQmbts=";
|
||||
hash = "sha256-lnsaplJJk+c0hdHyQPH98ssppxBXqj/O0K6xlRfk+Oc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -39,7 +39,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "diffusers";
|
||||
version = "0.27.0";
|
||||
version = "0.27.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@ -48,7 +48,7 @@ buildPythonPackage rec {
|
||||
owner = "huggingface";
|
||||
repo = "diffusers";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-h7IdukvQr+B/Au70nK0Qc4FpkDiCMsIZuPAWsiCdnUo=";
|
||||
hash = "sha256-GwFibsxMhWqirFn5cG9GfDZAtVWRx+BCqDBiQV6wuYU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -14,7 +14,7 @@
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
inherit (duckdb) patches pname src version;
|
||||
inherit (duckdb) patches pname rev src version;
|
||||
pyproject = true;
|
||||
|
||||
postPatch = (duckdb.postPatch or "") + ''
|
||||
@ -31,8 +31,11 @@ buildPythonPackage rec {
|
||||
env = {
|
||||
BUILD_HTTPFS = 1;
|
||||
DUCKDB_BUILD_UNITY = 1;
|
||||
OVERRIDE_GIT_DESCRIBE="v${version}-0-g${rev}";
|
||||
};
|
||||
|
||||
dontPretendSetuptoolsSCMVersion = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pybind11
|
||||
setuptools-scm
|
||||
|
@ -1,11 +1,12 @@
|
||||
{ stdenv, lib, buildPythonPackage, fetchPypi }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "Durus";
|
||||
pname = "durus";
|
||||
version = "4.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit version pname;
|
||||
pname = "Durus";
|
||||
inherit version;
|
||||
sha256 = "sha256:1gzxg43zawwgqjrfixvcrilwpikb1ix9b7710rsl5ffk7q50yi3c";
|
||||
};
|
||||
|
||||
|
@ -3,7 +3,6 @@
|
||||
, fetchPypi
|
||||
, pythonOlder
|
||||
, setuptools
|
||||
, fetchpatch
|
||||
|
||||
# extras: babel
|
||||
, babel
|
||||
@ -43,13 +42,12 @@
|
||||
, peewee
|
||||
, pony
|
||||
, pytestCheckHook
|
||||
, python-dateutil
|
||||
, zxcvbn
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "flask-security-too";
|
||||
version = "5.4.1";
|
||||
version = "5.4.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -57,7 +55,7 @@ buildPythonPackage rec {
|
||||
src = fetchPypi {
|
||||
pname = "Flask-Security-Too";
|
||||
inherit version;
|
||||
hash = "sha256-Ay7+gk+zuUlXtw0LDdsnvSa22z+yE6VR1guu9QmiFvw=";
|
||||
hash = "sha256-dzVHHC5Lsh6rUC+cOyNEe/uHVTzkObhFffgSvFOfKoI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -106,8 +104,8 @@ buildPythonPackage rec {
|
||||
peewee
|
||||
pony
|
||||
pytestCheckHook
|
||||
python-dateutil
|
||||
zxcvbn
|
||||
freezegun
|
||||
]
|
||||
++ passthru.optional-dependencies.babel
|
||||
++ passthru.optional-dependencies.common
|
||||
|
32
pkgs/development/python-modules/frozenlist2/default.nix
Normal file
32
pkgs/development/python-modules/frozenlist2/default.nix
Normal file
@ -0,0 +1,32 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, buildPythonPackage
|
||||
, setuptools
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "frozenlist2";
|
||||
version = "1.0.0";
|
||||
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rohanpm";
|
||||
repo = "frozenlist2";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-fF0oFZ2q1wRH7IKBlCjm3Za4xtEMSHyEaGL09rHgtTY=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "frozenlist2" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "An immutable list for Python";
|
||||
homepage = "https://github.com/rohanpm/frozenlist2";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ t4ccer ];
|
||||
};
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, buildPythonPackage
|
||||
, setuptools
|
||||
, poetry-core
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "graphlib-backport";
|
||||
version = "1.1.0";
|
||||
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mariushelf";
|
||||
repo = "graphlib_backport";
|
||||
rev = version;
|
||||
hash = "sha256-ssJLtBQH8sSnccgcAKLKfYpPyw5U0RIm1F66/Er81lo=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace 'poetry>=1.0' 'poetry-core' \
|
||||
--replace 'poetry.masonry.api' 'poetry.core.masonry.api'
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
setuptools
|
||||
poetry-core
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "graphlib" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Backport of the Python 3.9 graphlib module for Python 3.6+";
|
||||
homepage = "https://github.com/mariushelf/graphlib_backport";
|
||||
license = licenses.psfl;
|
||||
maintainers = with maintainers; [ t4ccer ];
|
||||
};
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
{ lib, fetchFromGitHub, buildPythonPackage, isPy3k, future, pyusb, ipython, pygreat }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "GreatFET";
|
||||
pname = "greatfet";
|
||||
version = "2019.5.1.dev0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
@ -30,5 +30,3 @@ buildPythonPackage rec {
|
||||
maintainers = with lib.maintainers; [ mog ];
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "in-n-out";
|
||||
version = "0.1.9";
|
||||
version = "0.2.0";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@ -21,7 +21,7 @@ buildPythonPackage rec {
|
||||
src = fetchPypi {
|
||||
pname = "in_n_out";
|
||||
inherit version;
|
||||
hash = "sha256-if65ROQg+vQtPCVCFFaBtNVxRDVZMsK4WWlfzcT5oto=";
|
||||
hash = "sha256-hKJb2/DKl2Dd+rgndujNJWddriHKDpVuIKwOcwL8oZ8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -43,12 +43,12 @@ let
|
||||
else ceres-solver;
|
||||
in
|
||||
buildPythonPackage rec {
|
||||
pname = "OpenSfM";
|
||||
pname = "opensfm";
|
||||
version = "unstable-2023-12-09";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mapillary";
|
||||
repo = pname;
|
||||
repo = "OpenSfM";
|
||||
rev = "7f170d0dc352340295ff480378e3ac37d0179f8e";
|
||||
sha256 = "sha256-l/HTVenC+L+GpMNnDgnSGZ7+Qd2j8b8cuTs3SmORqrg=";
|
||||
};
|
||||
|
39
pkgs/development/python-modules/pluthon/default.nix
Normal file
39
pkgs/development/python-modules/pluthon/default.nix
Normal file
@ -0,0 +1,39 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, buildPythonPackage
|
||||
, setuptools
|
||||
, pythonOlder
|
||||
# Python deps
|
||||
, uplc
|
||||
, graphlib-backport
|
||||
, ordered-set
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pluthon";
|
||||
version = "0.4.6";
|
||||
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpShin";
|
||||
repo = "pluthon";
|
||||
rev = version;
|
||||
hash = "sha256-ZmBkbglSbBfVhA4yP0tJdwpJiFpJ7vX0A321ldQF0lA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
setuptools
|
||||
uplc
|
||||
ordered-set
|
||||
] ++ lib.optionals (pythonOlder "3.9") graphlib-backport;
|
||||
|
||||
pythonImportsCheck = [ "pluthon" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Pluto-like programming language for Cardano Smart Contracts in Python";
|
||||
homepage = "https://github.com/OpShin/pluthon";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ t4ccer ];
|
||||
};
|
||||
}
|
@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, pythonRelaxDepsHook
|
||||
# Python deps
|
||||
, blockfrost-python
|
||||
, cachetools
|
||||
@ -41,6 +42,10 @@ in buildPythonPackage rec {
|
||||
hash = "sha256-LP/W8IC2del476fGFq10VMWwMrbAoCCcZOngA8unBM0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pythonRelaxDepsHook
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
blockfrost-python
|
||||
cachetools
|
||||
@ -58,6 +63,8 @@ in buildPythonPackage rec {
|
||||
websocket-client
|
||||
];
|
||||
|
||||
pythonRelaxDeps = [ "typeguard" ];
|
||||
|
||||
pythonImportsCheck = [ "pycardano" ];
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -0,0 +1,41 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, python3
|
||||
, pkg-config
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonPackage {
|
||||
pname = "python-secp256k1-cardano";
|
||||
version = "0.2.3";
|
||||
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpShin";
|
||||
repo = "python-secp256k1";
|
||||
rev = "5a8f761a4b9a1594653cc4deebadc3398b07533c"; # No tags in repo
|
||||
hash = "sha256-6bE4/G2gW2F8h5FWtI3TZ6FtijsB/slvFT/SIVv7VIY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [ cffi secp256k1 ];
|
||||
|
||||
nativeCheckInputs = [ python3.pkgs.pytestCheckHook ];
|
||||
|
||||
# Tests expect .so files and are failing
|
||||
doCheck = false;
|
||||
|
||||
preConfigure = ''
|
||||
cp -r ${python3.pkgs.secp256k1.src} libsecp256k1
|
||||
export INCLUDE_DIR=${python3.pkgs.secp256k1}/include
|
||||
export LIB_DIR=${python3.pkgs.secp256k1}/lib
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/OpShin/python-secp256k1";
|
||||
description = "A fork of python-secp256k1, fixing the commit hash of libsecp256k1 to a Cardano compatible version";
|
||||
license = with lib.licenses; [ mit ];
|
||||
maintainers = with lib.maintainers; [ t4ccer ];
|
||||
};
|
||||
}
|
@ -3,26 +3,31 @@
|
||||
, fetchPypi
|
||||
, pytestCheckHook
|
||||
, pythonOlder
|
||||
, setuptools
|
||||
, zeep
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-stdnum";
|
||||
version = "1.19";
|
||||
format = "setuptools";
|
||||
version = "1.20";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-Ez7IL1Y5DqdMGQVp6Y8vsUuGmAix1UeFcI8i0P6tiz8=";
|
||||
hash = "sha256-rSos8usCXeQIIQI182tK4xJS3jGGJAzKqBJuEXy4JpA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.cfg \
|
||||
--replace " --cov=stdnum --cov-report=term-missing:skip-covered --cov-report=html" ""
|
||||
--replace-fail " --cov=stdnum --cov-report=term-missing:skip-covered --cov-report=html" ""
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
@ -7,12 +7,13 @@
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "Sanic-Auth";
|
||||
pname = "sanic-auth";
|
||||
version = "0.3.0";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
pname = "Sanic-Auth";
|
||||
inherit version;
|
||||
sha256 = "0dc24ynqjraqwgvyk0g9bj87zgpq4xnssl24hnsn7l5vlkmk8198";
|
||||
};
|
||||
|
||||
|
@ -4,11 +4,12 @@
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "SocksiPy-branch";
|
||||
pname = "socksipy-branch";
|
||||
version = "1.01";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
pname = "SocksiPy-branch";
|
||||
inherit version;
|
||||
sha256 = "01l41v4g7fy9fzvinmjxy6zcbhgqaif8dhdqm4w90fwcw9h51a8p";
|
||||
};
|
||||
|
||||
|
@ -20,7 +20,7 @@
|
||||
|
||||
let
|
||||
pname = "torchmetrics";
|
||||
version = "1.3.1";
|
||||
version = "1.3.2";
|
||||
in
|
||||
buildPythonPackage {
|
||||
inherit pname version;
|
||||
@ -32,7 +32,7 @@ buildPythonPackage {
|
||||
owner = "Lightning-AI";
|
||||
repo = "torchmetrics";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-ZFpLoF4t1ld2c3exX9H8AYG0XQM7MKmWe/I8XZmdrZw=";
|
||||
hash = "sha256-0lverGF8HVlnwWmnCjScWoSfWPLZlMF2cHDG+uxNCCQ=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -5,11 +5,12 @@
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ufoProcessor";
|
||||
pname = "ufoprocessor";
|
||||
version = "1.9.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
pname = "ufoProcessor";
|
||||
inherit version;
|
||||
sha256 = "0ns11aamgavgsfj8qf5kq7dvzmgl0mhr1cbych2f075ipfdvva5s";
|
||||
extension = "zip";
|
||||
};
|
||||
|
55
pkgs/development/python-modules/uplc/default.nix
Normal file
55
pkgs/development/python-modules/uplc/default.nix
Normal file
@ -0,0 +1,55 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, buildPythonPackage
|
||||
, pythonRelaxDepsHook
|
||||
# Python deps
|
||||
, frozenlist2
|
||||
, python-secp256k1-cardano
|
||||
, setuptools
|
||||
, poetry-core
|
||||
, frozendict
|
||||
, cbor2
|
||||
, rply
|
||||
, pycardano
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "uplc";
|
||||
version = "0.6.9";
|
||||
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpShin";
|
||||
repo = "uplc";
|
||||
rev = version;
|
||||
hash = "sha256-djJMNXijMVzMVzw8NZSe3YFRGyAPqdvr0P374Za5XkU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pythonRelaxDepsHook
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
setuptools
|
||||
poetry-core
|
||||
frozendict
|
||||
cbor2
|
||||
frozenlist2
|
||||
rply
|
||||
pycardano
|
||||
python-secp256k1-cardano
|
||||
];
|
||||
|
||||
pythonRelaxDeps = [ "pycardano" "rply" ];
|
||||
|
||||
pythonImportsCheck = [ "uplc" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python implementation of untyped plutus language core";
|
||||
homepage = "https://opshin.dev";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ t4ccer ];
|
||||
mainProgram = "opshin";
|
||||
};
|
||||
}
|
@ -312,8 +312,8 @@ in
|
||||
cp -R ext/fast_mmaped_file_rs $out
|
||||
'';
|
||||
};
|
||||
hash = if lib.versionAtLeast attrs.version "1.1.0"
|
||||
then "sha256-tSyoCEBtMMkFfPynaMx8oc9bO7I+Pf6Y/f3Ld8uwlEE="
|
||||
hash = if lib.versionAtLeast attrs.version "1.1.1"
|
||||
then "sha256-RsN5XWX7Mj2ORccM0eczY+44WXsbXNTnJVcCMvnOATk="
|
||||
else "sha256-XuQZPbFWqPHlrJvllkvLl1FjKeoAUbi8oKDrS2rY1KM=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user