pkgs: Use upstream mesonlsp

This commit is contained in:
traxys 2024-08-23 21:46:21 +02:00
parent 14e4e9d3f3
commit e969289479
3 changed files with 0 additions and 165 deletions

View file

@ -24,7 +24,6 @@
bonnie = pkgs.callPackage ./bonnie { };
perseus-cli = pkgs.callPackage ./perseus { inherit (self'.packages) bonnie; };
flex-launcher = pkgs.callPackage ./flex-launcher.nix { };
mesonlsp = pkgs.callPackage ./mesonlsp { };
push-to-talk = pkgs.callPackage ./push-to-talk.nix { };
pulse8-cec = pkgs.callPackage ./pulse8-cec.nix { };
weakauras-companion = pkgs.callPackage ./weakauras-companion.nix { };

View file

@ -1,37 +0,0 @@
diff --git a/meson.build b/meson.build
index ff0f0c3e..82c4fbe8 100644
--- a/meson.build
+++ b/meson.build
@@ -34,7 +34,11 @@ if buildtype != 'plain'
]
if cc.get_id() == 'gcc'
- extra_flags += [
+ extra_c_flags += [
+ '-Wshadow=local',
+ '-fstack-clash-protection',
+ ]
+ extra_cxx_flags += [
'-Wshadow=local',
'-fstack-clash-protection',
]
@@ -44,7 +48,8 @@ if buildtype != 'plain'
extra_flags += [
'-frecord-gcc-switches',
]
- extra_flags += cc.get_supported_arguments('-mshstk', '-fcf-protection=full')
+ extra_c_flags += cc.get_supported_arguments('-mshstk', '-fcf-protection=full')
+ extra_cxx_flags += cxx.get_supported_arguments('-mshstk', '-fcf-protection=full')
endif
global_link_args = host_machine.system() == 'windows' ? [] : ['-rdynamic']
@@ -54,7 +59,8 @@ if buildtype != 'plain'
global_link_args += ['-Wl,-ld_classic']
endif
- add_global_arguments(extra_flags, language: ['c', 'cpp'])
+ add_global_arguments(extra_flags + extra_c_flags, language: ['c'])
+ add_global_arguments(extra_flags + extra_cxx_flags, language: ['cpp'])
add_global_link_arguments(global_link_args, language: ['c', 'cpp'])
endif

View file

@ -1,127 +0,0 @@
{
lib,
stdenv,
fetchFromGitHub,
meson,
ninja,
pkg-config,
gtest,
curl,
nlohmann_json,
libarchive,
libuuid,
libpkgconf,
libunwind,
python3,
tomlplusplus,
}:
let
ada = fetchFromGitHub {
owner = "ada-url";
repo = "ada";
rev = "refs/tags/v2.7.4";
hash = "sha256-V5LwL03x7/a9Lvg1gPvgGipo7IICU7xyO2D3GqP6Lbw=";
};
tsVersion = "0.20.8";
tree-sitter = fetchFromGitHub {
owner = "tree-sitter";
repo = "tree-sitter";
rev = "refs/tags/v${tsVersion}";
hash = "sha256-278zU5CLNOwphGBUa4cGwjBqRJ87dhHMzFirZB09gYM=";
};
tree-sitter-meson = fetchFromGitHub {
owner = "JCWasmx86";
repo = "tree-sitter-meson";
rev = "09665fa";
hash = "sha256-ice2NdK1/U3NylIQDnNCN41rK/G6uqFOX+OeNf3zm18=";
};
tree-sitter-ini = fetchFromGitHub {
owner = "JCWasmx86";
repo = "tree-sitter-ini";
rev = "20aa563";
hash = "sha256-1hHjtghBIf7lOPpupT1pUCZQCnzUi4Qt/yHSCdjMhCU=";
};
sha256 = fetchFromGitHub {
owner = "amosnier";
repo = "sha-2";
rev = "49265c656f9b370da660531db8cc6bf0a2e110a6";
hash = "sha256-X9M/ZATYXUiE4oGorPBnsdaKnKaObarnMRh6QEfkBls=";
};
muon = fetchFromGitHub {
owner = "JCWasmx86";
repo = "muon";
rev = "62af239";
hash = "sha256-k883mKwuP35f0WtwX8ybl9uYbvA3y6Vxtv2EJMpZDEs=";
};
in
stdenv.mkDerivation rec {
pname = "mesonlsp";
version = "4.2.2";
src = fetchFromGitHub {
owner = "JCWasmx86";
repo = "mesonlsp";
rev = "refs/tags/v${version}";
hash = "sha256-pN8MCqrRfVpmM8KWa7HPTghoegplM4bP/HRVJVs05iE=";
};
postUnpack = ''
pushd "$sourceRoot/subprojects"
cp -R --no-preserve=mode,ownership ${tree-sitter} tree-sitter-${tsVersion}
cp -R --no-preserve=mode,ownership ${tree-sitter-meson} tree-sitter-meson
cp -R --no-preserve=mode,ownership ${tree-sitter-ini} tree-sitter-ini
cp -R --no-preserve=mode,ownership ${sha256} sha256
cp -R --no-preserve=mode,ownership ${ada} ada
cp -R --no-preserve=mode,ownership ${muon} muon
popd
'';
mesonFlags = [ "-Dbenchmarks=false" ];
patches = [ ./build_flags.patch ];
postPatch = ''
patchShebangs .
pushd subprojects
cp packagefiles/tree-sitter-${tsVersion}/* tree-sitter-${tsVersion}
cp packagefiles/tree-sitter-meson/* tree-sitter-meson
cp packagefiles/tree-sitter-ini/* tree-sitter-ini
cp packagefiles/sha256/* sha256
cp packagefiles/ada/* ada
popd
'';
nativeBuildInputs = [
meson
ninja
python3
pkg-config
];
buildInputs = [
tomlplusplus
nlohmann_json
curl
libarchive
libuuid
libpkgconf
libunwind
gtest
];
meta = with lib; {
description = "An unofficial, unendorsed language server for meson written in C";
homepage = "https://github.com/JCWasmx86/mesonlsp";
changelog = "https://github.com/JCWasmx86/mesonlsp/blob/${src.rev}/CHANGELOG.md";
license = licenses.gpl3Only;
maintainers = with maintainers; [ traxys ];
mainProgram = "mesonlsp";
platforms = platforms.all;
};
}