Compare commits
	
		
			1 Commits
		
	
	
		
			master
			...
			add-vivado
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 766b908923 | 
| @ -1,15 +0,0 @@ | |||||||
| name: CI |  | ||||||
| on: |  | ||||||
|   push: |  | ||||||
|     branches: |  | ||||||
|       - master |  | ||||||
|   pull_request: |  | ||||||
|     branches: |  | ||||||
|       - master |  | ||||||
| 
 |  | ||||||
| jobs: |  | ||||||
|   build:all: |  | ||||||
|     runs-on: native |  | ||||||
|     steps: |  | ||||||
|       - uses: https://gitea.com/ScMi1/checkout@v1.4 |  | ||||||
|       - run: nix build -L --no-link --print-out-paths .#bsc-ci.all |  | ||||||
							
								
								
									
										22
									
								
								default.nix
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								default.nix
									
									
									
									
									
								
							| @ -1,19 +1,11 @@ | |||||||
| let | let | ||||||
|   bscOverlay = import ./overlay.nix; |   bscOverlay = import ./overlay.nix; | ||||||
| 
 | 
 | ||||||
|   # read flake.lock and determine revision from there |   # Pin the nixpkgs | ||||||
|   lock = builtins.fromJSON (builtins.readFile ./flake.lock); |   nixpkgsPath = import ./nixpkgs.nix; | ||||||
|   inherit (lock.nodes.nixpkgs.locked) rev narHash; | 
 | ||||||
|   fetchedNixpkgs = builtins.fetchTarball { |   pkgs = import nixpkgsPath { | ||||||
|     url = "https://github.com/NixOS/nixpkgs/archive/${rev}.tar.gz"; |     overlays = [ bscOverlay ]; | ||||||
|     sha256 = narHash; |  | ||||||
|   }; |   }; | ||||||
| in | 
 | ||||||
| { overlays ? [ ] | in pkgs | ||||||
| , nixpkgs ? fetchedNixpkgs |  | ||||||
| , ... |  | ||||||
| }@attrs: |  | ||||||
| import nixpkgs ( |  | ||||||
|   (builtins.removeAttrs attrs [ "overlays" "nixpkgs" ]) // |  | ||||||
|   { overlays = [ bscOverlay ] ++ overlays; } |  | ||||||
| ) |  | ||||||
|  | |||||||
							
								
								
									
										8
									
								
								flake.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										8
									
								
								flake.lock
									
									
									
										generated
									
									
									
								
							| @ -2,10 +2,10 @@ | |||||||
|   "nodes": { |   "nodes": { | ||||||
|     "nixpkgs": { |     "nixpkgs": { | ||||||
|       "locked": { |       "locked": { | ||||||
|         "lastModified": 1752436162, |         "lastModified": 1736867362, | ||||||
|         "narHash": "sha256-Kt1UIPi7kZqkSc5HVj6UY5YLHHEzPBkgpNUByuyxtlw=", |         "narHash": "sha256-i/UJ5I7HoqmFMwZEH6vAvBxOrjjOJNU739lnZnhUln8=", | ||||||
|         "path": "/nix/store/zk8v61cpk1wprp9ld5ayc1g5fq4pdkwv-source", |         "path": "/nix/store/2csx2kkb2hxyxhhmg2xs9jfyypikwwk6-source", | ||||||
|         "rev": "dfcd5b901dbab46c9c6e80b265648481aafb01f8", |         "rev": "9c6b49aeac36e2ed73a8c472f1546f6d9cf1addc", | ||||||
|         "type": "path" |         "type": "path" | ||||||
|       }, |       }, | ||||||
|       "original": { |       "original": { | ||||||
|  | |||||||
							
								
								
									
										13
									
								
								flake.nix
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								flake.nix
									
									
									
									
									
								
							| @ -3,24 +3,15 @@ | |||||||
| 
 | 
 | ||||||
|   outputs = { self, nixpkgs, ...}: |   outputs = { self, nixpkgs, ...}: | ||||||
|   let |   let | ||||||
|  |     pkgs = import nixpkgs { | ||||||
|       # For now we only support x86 |       # For now we only support x86 | ||||||
|       system = "x86_64-linux"; |       system = "x86_64-linux"; | ||||||
|       pkgs = import nixpkgs { |  | ||||||
|         inherit system; |  | ||||||
|       overlays = [ self.overlays.default ]; |       overlays = [ self.overlays.default ]; | ||||||
|     }; |     }; | ||||||
|   in |   in | ||||||
|     { |     { | ||||||
|       bscOverlay = import ./overlay.nix; |       bscOverlay = import ./overlay.nix; | ||||||
|       overlays.default = self.bscOverlay; |       overlays.default = self.bscOverlay; | ||||||
|       # full nixpkgs with our overlay applied |       legacyPackages.x86_64-linux = pkgs; | ||||||
|       legacyPackages.${system} = pkgs; |  | ||||||
| 
 |  | ||||||
|       hydraJobs = { |  | ||||||
|         inherit (self.legacyPackages.${system}.bsc-ci) tests pkgs cross; |  | ||||||
|       }; |  | ||||||
| 
 |  | ||||||
|       # propagate nixpkgs lib, so we can do bscpkgs.lib |  | ||||||
|       inherit (nixpkgs) lib; |  | ||||||
|     }; |     }; | ||||||
| } | } | ||||||
|  | |||||||
							
								
								
									
										9
									
								
								nixpkgs.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								nixpkgs.nix
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,9 @@ | |||||||
|  | let | ||||||
|  |   commit = "e4ad989506ec7d71f7302cc3067abd82730a4beb"; | ||||||
|  | in builtins.fetchTarball { | ||||||
|  |     # Descriptive name to make the store path easier to identify | ||||||
|  |     name = "nixpkgs-${commit}"; | ||||||
|  |     url = "https://github.com/nixos/nixpkgs/archive/${commit}.tar.gz"; | ||||||
|  |     # Hash obtained using `nix-prefetch-url --unpack <url>` | ||||||
|  |     sha256 = "sha256-de9KYi8rSJpqvBfNwscWdalIJXPo8NjdIZcEJum1mH0="; | ||||||
|  | } | ||||||
							
								
								
									
										54
									
								
								overlay.nix
									
									
									
									
									
								
							
							
						
						
									
										54
									
								
								overlay.nix
									
									
									
									
									
								
							| @ -6,6 +6,9 @@ with final.lib; | |||||||
| let | let | ||||||
|   callPackage = final.callPackage; |   callPackage = final.callPackage; | ||||||
| 
 | 
 | ||||||
|  |   mkDeps = name: pkgs: final.runCommand name { } | ||||||
|  |     "printf '%s\n' ${toString (collect (x: x ? outPath) pkgs)} > $out"; | ||||||
|  | 
 | ||||||
|   bscPkgs = { |   bscPkgs = { | ||||||
|     bench6 = callPackage ./pkgs/bench6/default.nix { }; |     bench6 = callPackage ./pkgs/bench6/default.nix { }; | ||||||
|     bigotes = callPackage ./pkgs/bigotes/default.nix { }; |     bigotes = callPackage ./pkgs/bigotes/default.nix { }; | ||||||
| @ -18,7 +21,7 @@ let | |||||||
|     gpi-2 = callPackage ./pkgs/gpi-2/default.nix { }; |     gpi-2 = callPackage ./pkgs/gpi-2/default.nix { }; | ||||||
|     intelPackages_2023 = callPackage ./pkgs/intel-oneapi/2023.nix { }; |     intelPackages_2023 = callPackage ./pkgs/intel-oneapi/2023.nix { }; | ||||||
|     jemallocNanos6 = callPackage ./pkgs/nanos6/jemalloc.nix { }; |     jemallocNanos6 = callPackage ./pkgs/nanos6/jemalloc.nix { }; | ||||||
|     lmbench = callPackage ./pkgs/lmbench/default.nix { }; |     #lmbench = callPackage ./pkgs/lmbench/default.nix { }; # Broken | ||||||
|     mcxx = callPackage ./pkgs/mcxx/default.nix { }; |     mcxx = callPackage ./pkgs/mcxx/default.nix { }; | ||||||
|     nanos6 = callPackage ./pkgs/nanos6/default.nix { }; |     nanos6 = callPackage ./pkgs/nanos6/default.nix { }; | ||||||
|     nanos6Debug = final.nanos6.override { enableDebug = true; }; |     nanos6Debug = final.nanos6.override { enableDebug = true; }; | ||||||
| @ -43,10 +46,17 @@ let | |||||||
|     stdenvClangOmpss2NodesOmpv = final.stdenv.override { cc = final.clangOmpss2NodesOmpv; allowedRequisites = null; }; |     stdenvClangOmpss2NodesOmpv = final.stdenv.override { cc = final.clangOmpss2NodesOmpv; allowedRequisites = null; }; | ||||||
|     tagaspi = callPackage ./pkgs/tagaspi/default.nix { }; |     tagaspi = callPackage ./pkgs/tagaspi/default.nix { }; | ||||||
|     tampi = callPackage ./pkgs/tampi/default.nix { }; |     tampi = callPackage ./pkgs/tampi/default.nix { }; | ||||||
|  |     vivado = callPackage ./pkgs/vivado/default.nix { }; | ||||||
|     wxparaver = callPackage ./pkgs/paraver/default.nix { }; |     wxparaver = callPackage ./pkgs/paraver/default.nix { }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   tests = rec { | in bscPkgs // { | ||||||
|  |   # Prevent accidental usage of bsc attribute | ||||||
|  |   bsc = throw "the bsc attribute is deprecated, packages are now in the root"; | ||||||
|  | 
 | ||||||
|  |   # Internal for our CI tests | ||||||
|  |   bsc-ci = { | ||||||
|  |     test = rec { | ||||||
|       #hwloc = callPackage ./test/bugs/hwloc.nix { }; # Broken, no /sys |       #hwloc = callPackage ./test/bugs/hwloc.nix { }; # Broken, no /sys | ||||||
|       #sigsegv = callPackage ./test/reproducers/sigsegv.nix { }; |       #sigsegv = callPackage ./test/reproducers/sigsegv.nix { }; | ||||||
|       hello-c = callPackage ./test/compilers/hello-c.nix { }; |       hello-c = callPackage ./test/compilers/hello-c.nix { }; | ||||||
| @ -79,41 +89,17 @@ let | |||||||
|       }; |       }; | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|   pkgs = filterAttrs (_: isDerivation) bscPkgs; |     pkgs = final.runCommand "ci-pkgs" { } | ||||||
|  |       "printf '%s\n' ${toString (collect isDerivation bscPkgs)} > $out"; | ||||||
| 
 | 
 | ||||||
|   crossTargets = [ "riscv64" ]; |     tests = final.runCommand "ci-tests" { } | ||||||
|   cross = prev.lib.genAttrs crossTargets (target: |       "printf '%s\n' ${toString (collect isDerivation final.bsc-ci.test)} > $out"; | ||||||
|     final.pkgsCross.${target}.bsc-ci.pkgs |  | ||||||
|   ); |  | ||||||
| 
 | 
 | ||||||
|   buildList = name: paths: |     all = final.runCommand "ci-all" { } | ||||||
|     final.runCommandLocal name { } '' |     '' | ||||||
|       printf '%s\n' ${toString paths} | tee $out |       deps="${toString [ final.bsc-ci.pkgs final.bsc-ci.tests ]}" | ||||||
|     ''; |  | ||||||
| 
 |  | ||||||
|   buildList' = name: paths: |  | ||||||
|     final.runCommandLocal name { } '' |  | ||||||
|       deps="${toString paths}" |  | ||||||
|       cat $deps |       cat $deps | ||||||
|       printf '%s\n' $deps >$out |       printf '%s\n' $deps > $out | ||||||
|     ''; |     ''; | ||||||
| 
 |  | ||||||
|   crossList = builtins.mapAttrs (t: v: buildList t (builtins.attrValues v)) cross; |  | ||||||
| 
 |  | ||||||
|   pkgsList = buildList "ci-pkgs" (builtins.attrValues pkgs); |  | ||||||
|   testList = buildList "ci-tests" (collect isDerivation tests); |  | ||||||
| 
 |  | ||||||
|   all = buildList' "ci-all" [ pkgsList testList ]; |  | ||||||
| 
 |  | ||||||
| in bscPkgs // { |  | ||||||
|   # Prevent accidental usage of bsc attribute |  | ||||||
|   bsc = throw "the bsc attribute is deprecated, packages are now in the root"; |  | ||||||
| 
 |  | ||||||
|   # Internal for our CI tests |  | ||||||
|   bsc-ci = { |  | ||||||
|     inherit pkgs pkgsList; |  | ||||||
|     inherit tests testList; |  | ||||||
|     inherit cross crossList; |  | ||||||
|     inherit all; |  | ||||||
|   }; |   }; | ||||||
| } | } | ||||||
|  | |||||||
| @ -1,20 +1,14 @@ | |||||||
| { | { | ||||||
|   stdenv |   stdenv | ||||||
| , bigotes |  | ||||||
| , cmake | , cmake | ||||||
| , clangOmpss2 | , clangOmpss2 | ||||||
| , openmp |  | ||||||
| , openmpv |  | ||||||
| , nanos6 | , nanos6 | ||||||
| , nodes | , nodes | ||||||
| , nosv |  | ||||||
| , mpi | , mpi | ||||||
| , tampi | , tampi | ||||||
| , openblas |  | ||||||
| , ovni |  | ||||||
| , gitBranch ? "master" | , gitBranch ? "master" | ||||||
| , gitURL ? "ssh://git@bscpm04.bsc.es/rarias/bench6.git" | , gitURL ? "ssh://git@bscpm03.bsc.es/rarias/bench6.git" | ||||||
| , gitCommit ? "bf29a53113737c3aa74d2fe3d55f59868faea7b4" | , gitCommit ? "1e6ce2aa8ad7b4eef38df1581d7ec48a8815f85d" | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| stdenv.mkDerivation rec { | stdenv.mkDerivation rec { | ||||||
| @ -27,31 +21,9 @@ stdenv.mkDerivation rec { | |||||||
|     rev = gitCommit; |     rev = gitCommit; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   nativeBuildInputs = [ |   buildInputs = [ cmake clangOmpss2 nanos6 nodes mpi tampi ]; | ||||||
|     cmake |  | ||||||
|     clangOmpss2 |  | ||||||
|   ]; |  | ||||||
| 
 |  | ||||||
|   buildInputs = [ |  | ||||||
|     bigotes |  | ||||||
|     openmp |  | ||||||
|     openmpv |  | ||||||
|     nanos6 |  | ||||||
|     nodes |  | ||||||
|     nosv |  | ||||||
|     mpi |  | ||||||
|     tampi |  | ||||||
|     openblas |  | ||||||
|     openblas.dev |  | ||||||
|     ovni |  | ||||||
|   ]; |  | ||||||
| 
 |  | ||||||
|   env = { |  | ||||||
|     NANOS6_HOME = nanos6; |  | ||||||
|     NODES_HOME = nodes; |  | ||||||
|     NOSV_HOME = nosv; |  | ||||||
|   }; |  | ||||||
| 
 | 
 | ||||||
|  |   enableParallelBuilding = false; | ||||||
|   cmakeFlags = [ |   cmakeFlags = [ | ||||||
|     "-DCMAKE_C_COMPILER=clang" |     "-DCMAKE_C_COMPILER=clang" | ||||||
|     "-DCMAKE_CXX_COMPILER=clang++" |     "-DCMAKE_CXX_COMPILER=clang++" | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ | |||||||
| , cmake | , cmake | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| stdenv.mkDerivation { | stdenv.mkDerivation rec { | ||||||
|   pname = "bigotes"; |   pname = "bigotes"; | ||||||
|   version = "9dce13"; |   version = "9dce13"; | ||||||
|   src = fetchFromGitHub { |   src = fetchFromGitHub { | ||||||
| @ -13,5 +13,5 @@ stdenv.mkDerivation { | |||||||
|     rev = "9dce13446a8da30bea552d569d260d54e0188518"; |     rev = "9dce13446a8da30bea552d569d260d54e0188518"; | ||||||
|     sha256 = "sha256-ktxM3pXiL8YXSK+/IKWYadijhYXqGoLY6adLk36iigE="; |     sha256 = "sha256-ktxM3pXiL8YXSK+/IKWYadijhYXqGoLY6adLk36iigE="; | ||||||
|   }; |   }; | ||||||
|   nativeBuildInputs = [ cmake ]; |   buildInputs = [ cmake ]; | ||||||
| } | } | ||||||
|  | |||||||
| @ -28,7 +28,7 @@ stdenv.mkDerivation rec { | |||||||
|   ] ++ optionals (enableTest) [ mpi clangOmpss2 tampi ]; |   ] ++ optionals (enableTest) [ mpi clangOmpss2 tampi ]; | ||||||
| 
 | 
 | ||||||
|   src = builtins.fetchGit { |   src = builtins.fetchGit { | ||||||
|     url = "ssh://git@bscpm04.bsc.es/rarias/cn6.git"; |     url = "ssh://git@bscpm03.bsc.es/rarias/cn6.git"; | ||||||
|     ref = "master"; |     ref = "master"; | ||||||
|     rev = "c72c3b66b720c2a33950f536fc819051c8f20a69"; |     rev = "c72c3b66b720c2a33950f536fc819051c8f20a69"; | ||||||
|   }; |   }; | ||||||
|  | |||||||
| @ -34,8 +34,6 @@ stdenv.mkDerivation rec { | |||||||
| 
 | 
 | ||||||
|   enableParallelBuilding = true; |   enableParallelBuilding = true; | ||||||
| 
 | 
 | ||||||
|   patches = [ ./rdma-core.patch ./max-mem.patch ]; |  | ||||||
| 
 |  | ||||||
|   preConfigure = '' |   preConfigure = '' | ||||||
|     patchShebangs autogen.sh |     patchShebangs autogen.sh | ||||||
|     ./autogen.sh |     ./autogen.sh | ||||||
|  | |||||||
| @ -1,10 +0,0 @@ | |||||||
| --- a/tests/tests/segments/max_mem.c	2025-09-12 13:30:53.449353591 +0200
 |  | ||||||
| +++ b/tests/tests/segments/max_mem.c	2025-09-12 13:33:49.750352401 +0200
 |  | ||||||
| @@ -1,5 +1,7 @@
 |  | ||||||
|  #include <test_utils.h> |  | ||||||
|   |  | ||||||
| +gaspi_size_t gaspi_get_system_mem (void);
 |  | ||||||
| +
 |  | ||||||
|  /* Test allocates 45% of system memory and creates a segment that |  | ||||||
|     large or if several ranks per node exist, divided among that |  | ||||||
|     number */ |  | ||||||
| @ -1,12 +0,0 @@ | |||||||
| --- a/src/devices/ib/GPI2_IB.h	2025-09-12 13:25:31.564181121 +0200
 |  | ||||||
| +++ b/src/devices/ib/GPI2_IB.h	2025-09-12 13:24:49.105422150 +0200
 |  | ||||||
| @@ -26,6 +26,9 @@ along with GPI-2. If not, see <http://ww
 |  | ||||||
|   |  | ||||||
|  #include "GPI2_Dev.h" |  | ||||||
|   |  | ||||||
| +/* Missing prototype as driver.h is now private */
 |  | ||||||
| +int ibv_read_sysfs_file(const char *dir, const char *file, char *buf, size_t size);
 |  | ||||||
| +
 |  | ||||||
|  #define GASPI_GID_INDEX   (0) |  | ||||||
|  #define PORT_LINK_UP      (5) |  | ||||||
|  #define MAX_INLINE_BYTES  (128) |  | ||||||
| @ -1,5 +1,6 @@ | |||||||
| { stdenv | { stdenv | ||||||
| , fetchurl | , fetchurl | ||||||
|  | , ncurses | ||||||
| , lib | , lib | ||||||
| , dpkg | , dpkg | ||||||
| , rsync | , rsync | ||||||
| @ -9,9 +10,12 @@ | |||||||
| , hwloc | , hwloc | ||||||
| , zlib | , zlib | ||||||
| , autoPatchelfHook | , autoPatchelfHook | ||||||
|  | , symlinkJoin | ||||||
| , libfabric | , libfabric | ||||||
| , gcc13 | , gcc | ||||||
|  | , gcc7 | ||||||
| , wrapCCWith | , wrapCCWith | ||||||
|  | , linuxHeaders | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| # The distribution of intel packages is a mess. We are doing the installation | # The distribution of intel packages is a mess. We are doing the installation | ||||||
| @ -26,8 +30,6 @@ | |||||||
| 
 | 
 | ||||||
| let | let | ||||||
| 
 | 
 | ||||||
|   gcc = gcc13; |  | ||||||
| 
 |  | ||||||
|   v = { |   v = { | ||||||
|     hpckit   = "2023.1.0"; |     hpckit   = "2023.1.0"; | ||||||
|     compiler = "2023.1.0"; |     compiler = "2023.1.0"; | ||||||
| @ -78,7 +80,7 @@ let | |||||||
|   uncompressDebs = debs: name: stdenv.mkDerivation { |   uncompressDebs = debs: name: stdenv.mkDerivation { | ||||||
|     name = name; |     name = name; | ||||||
|     srcs = debs; |     srcs = debs; | ||||||
|     nativeBuildInputs = [ dpkg ]; |     buildInputs = [ dpkg ]; | ||||||
|     phases = [ "installPhase" ]; |     phases = [ "installPhase" ]; | ||||||
|     installPhase = '' |     installPhase = '' | ||||||
|       mkdir -p $out |       mkdir -p $out | ||||||
| @ -108,17 +110,14 @@ let | |||||||
|       "intel-oneapi-mpi-${version}" |       "intel-oneapi-mpi-${version}" | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|     nativeBuildInputs = [ |  | ||||||
|       autoPatchelfHook |  | ||||||
|       rsync |  | ||||||
|     ]; |  | ||||||
| 
 |  | ||||||
|     buildInputs = [ |     buildInputs = [ | ||||||
|  |       rsync | ||||||
|       libfabric |       libfabric | ||||||
|       zlib |       zlib | ||||||
|       stdenv.cc.cc.lib |       stdenv.cc.cc.lib | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|  |     nativeBuildInputs = [ autoPatchelfHook ]; | ||||||
|     phases = [ "installPhase" "fixupPhase" ]; |     phases = [ "installPhase" "fixupPhase" ]; | ||||||
|     dontStrip = true; |     dontStrip = true; | ||||||
|     installPhase = '' |     installPhase = '' | ||||||
| @ -157,6 +156,7 @@ let | |||||||
| 
 | 
 | ||||||
|     buildInputs = [ |     buildInputs = [ | ||||||
|       intel-mpi |       intel-mpi | ||||||
|  |       rsync | ||||||
|       libffi_3_3 |       libffi_3_3 | ||||||
|       libelf |       libelf | ||||||
|       libxml2 |       libxml2 | ||||||
| @ -164,10 +164,7 @@ let | |||||||
|       stdenv.cc.cc.lib |       stdenv.cc.cc.lib | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|     nativeBuildInputs = [ |     nativeBuildInputs = [ autoPatchelfHook ]; | ||||||
|       autoPatchelfHook |  | ||||||
|       rsync |  | ||||||
|     ]; |  | ||||||
|     phases = [ "installPhase" "fixupPhase" ]; |     phases = [ "installPhase" "fixupPhase" ]; | ||||||
|     dontStrip = true; |     dontStrip = true; | ||||||
| 
 | 
 | ||||||
| @ -197,6 +194,7 @@ let | |||||||
|     buildInputs = [ |     buildInputs = [ | ||||||
|       intel-mpi |       intel-mpi | ||||||
|       intel-tbb |       intel-tbb | ||||||
|  |       rsync | ||||||
|       libffi_3_3 |       libffi_3_3 | ||||||
|       libelf |       libelf | ||||||
|       libxml2 |       libxml2 | ||||||
| @ -205,10 +203,7 @@ let | |||||||
|       stdenv.cc.cc.lib |       stdenv.cc.cc.lib | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|     nativeBuildInputs = [ |     nativeBuildInputs = [ autoPatchelfHook ]; | ||||||
|       autoPatchelfHook |  | ||||||
|       rsync |  | ||||||
|     ]; |  | ||||||
|     phases = [ "installPhase" "fixupPhase" ]; |     phases = [ "installPhase" "fixupPhase" ]; | ||||||
|     dontStrip = true; |     dontStrip = true; | ||||||
| 
 | 
 | ||||||
| @ -261,6 +256,7 @@ let | |||||||
|     buildInputs = [ |     buildInputs = [ | ||||||
|       intel-mpi |       intel-mpi | ||||||
|       intel-compiler-shared |       intel-compiler-shared | ||||||
|  |       rsync | ||||||
|       libffi_3_3 |       libffi_3_3 | ||||||
|       libelf |       libelf | ||||||
|       libxml2 |       libxml2 | ||||||
| @ -268,10 +264,7 @@ let | |||||||
|       stdenv.cc.cc.lib |       stdenv.cc.cc.lib | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|     nativeBuildInputs = [ |     nativeBuildInputs = [ autoPatchelfHook ]; | ||||||
|       autoPatchelfHook |  | ||||||
|       rsync |  | ||||||
|     ]; |  | ||||||
| 
 | 
 | ||||||
|     phases = [ "installPhase" "fixupPhase" ]; |     phases = [ "installPhase" "fixupPhase" ]; | ||||||
| 
 | 
 | ||||||
| @ -321,7 +314,6 @@ let | |||||||
|       "intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic-runtime-${version}" |       "intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic-runtime-${version}" | ||||||
|       "intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-${version}" |       "intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-${version}" | ||||||
|     ]; |     ]; | ||||||
|     dontCheckForBrokenSymlinks = true; |  | ||||||
|     # From https://aur.archlinux.org/packages/intel-oneapi-compiler: |     # From https://aur.archlinux.org/packages/intel-oneapi-compiler: | ||||||
|     # - intel-oneapi-compiler-cpp-eclipse-cfg-2023.0.0-25370_all.deb |     # - intel-oneapi-compiler-cpp-eclipse-cfg-2023.0.0-25370_all.deb | ||||||
|     # + intel-oneapi-compiler-dpcpp-cpp-2023.0.0-2023.0.0-25370_amd64.deb |     # + intel-oneapi-compiler-dpcpp-cpp-2023.0.0-2023.0.0-25370_amd64.deb | ||||||
| @ -346,6 +338,7 @@ let | |||||||
| 
 | 
 | ||||||
|     buildInputs = [ |     buildInputs = [ | ||||||
|       intel-compiler-shared |       intel-compiler-shared | ||||||
|  |       rsync | ||||||
|       libffi_3_3 |       libffi_3_3 | ||||||
|       libelf |       libelf | ||||||
|       libxml2 |       libxml2 | ||||||
| @ -353,10 +346,7 @@ let | |||||||
|       stdenv.cc.cc.lib |       stdenv.cc.cc.lib | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|     nativeBuildInputs = [ |     nativeBuildInputs = [ autoPatchelfHook ]; | ||||||
|       autoPatchelfHook |  | ||||||
|       rsync |  | ||||||
|     ]; |  | ||||||
|     autoPatchelfIgnoreMissingDeps = [ "libtbb.so.12" "libtbbmalloc.so.2" "libze_loader.so.1" ]; |     autoPatchelfIgnoreMissingDeps = [ "libtbb.so.12" "libtbbmalloc.so.2" "libze_loader.so.1" ]; | ||||||
| 
 | 
 | ||||||
|     phases = [ "installPhase" "fixupPhase" ]; |     phases = [ "installPhase" "fixupPhase" ]; | ||||||
| @ -409,9 +399,7 @@ let | |||||||
|         echo "-L${cc}/lib" >> $out/nix-support/cc-ldflags |         echo "-L${cc}/lib" >> $out/nix-support/cc-ldflags | ||||||
| 
 | 
 | ||||||
|         # Need the gcc in the path |         # Need the gcc in the path | ||||||
|         # FIXME: We should find a better way to modify the PATH instead of using |         echo 'export "PATH=${mygcc}/bin:$PATH"' >> $out/nix-support/cc-wrapper-hook | ||||||
|         # this ugly hack. See https://jungle.bsc.es/git/rarias/bscpkgs/issues/9 |  | ||||||
|         echo 'path_backup="${mygcc}/bin:$path_backup"' >> $out/nix-support/cc-wrapper-hook |  | ||||||
| 
 | 
 | ||||||
|         # Disable hardening by default |         # Disable hardening by default | ||||||
|         echo "" > $out/nix-support/add-hardening.sh |         echo "" > $out/nix-support/add-hardening.sh | ||||||
|  | |||||||
| @ -14,21 +14,21 @@ | |||||||
| , gcc # needed to set the rpath of libstdc++ for clang-tblgen | , gcc # needed to set the rpath of libstdc++ for clang-tblgen | ||||||
| , enableDebug ? false | , enableDebug ? false | ||||||
| , useGit ? false | , useGit ? false | ||||||
| , gitUrl ? "ssh://git@bscpm04.bsc.es/llvm-ompss/llvm-mono.git" | , gitUrl ? "ssh://git@bscpm03.bsc.es/llvm-ompss/llvm-mono.git" | ||||||
| , gitBranch ? "master" | , gitBranch ? "master" | ||||||
| , gitCommit ? "880e2341c56bad1dc14e8c369fb3356bec19018e" | , gitCommit ? "8c0d267c04d7fc3fb923078f510fcd5f4719a6cc" | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| let | let | ||||||
|   stdenv = llvmPackages_latest.stdenv; |   stdenv = llvmPackages_latest.stdenv; | ||||||
| 
 | 
 | ||||||
|   release = rec { |   release = rec { | ||||||
|     version = "2025.06"; |     version = "2024.11"; | ||||||
|     src = fetchFromGitHub { |     src = fetchFromGitHub { | ||||||
|       owner = "bsc-pm"; |       owner = "bsc-pm"; | ||||||
|       repo = "llvm"; |       repo = "llvm"; | ||||||
|       rev = "refs/tags/github-release-${version}"; |       rev = "refs/tags/github-release-${version}"; | ||||||
|       hash = "sha256-ww9PpRmtz/M9IyLiZ8rAehx2UW4VpQt+svf4XfKBzKo="; |       hash = "sha256-pF0qa987nLkIJPUrXh1srzBkLPfb31skIegD0bl34Kg="; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
| @ -43,36 +43,32 @@ let | |||||||
| 
 | 
 | ||||||
|   source = if (useGit) then git else release; |   source = if (useGit) then git else release; | ||||||
| 
 | 
 | ||||||
| in stdenv.mkDerivation { | in stdenv.mkDerivation rec { | ||||||
|   pname = "clang-ompss2"; |   pname = "clang-ompss2"; | ||||||
|   inherit (source) src version; |   inherit (source) src version; | ||||||
| 
 | 
 | ||||||
|   enableParallelBuilding = true; |   enableParallelBuilding = true; | ||||||
|  |   isClang = true; | ||||||
| 
 | 
 | ||||||
|   passthru = { |   passthru = { | ||||||
|     CC = "clang"; |     CC = "clang"; | ||||||
|     CXX = "clang++"; |     CXX = "clang++"; | ||||||
| 
 |  | ||||||
|     isClang = true; |  | ||||||
|     isClangWithOmpss = true; |  | ||||||
| 
 |  | ||||||
|     inherit gcc zlib; |  | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   nativeBuildInputs = [ |   isClangWithOmpss = true; | ||||||
|     bash | 
 | ||||||
|     cmake |   nativeBuildInputs = [ zlib ]; | ||||||
|     elfutils |  | ||||||
|     llvmPackages_latest.lld |  | ||||||
|     pkg-config |  | ||||||
|     python3 |  | ||||||
|     perl |  | ||||||
|     which |  | ||||||
|     zlib |  | ||||||
|   ]; |  | ||||||
| 
 | 
 | ||||||
|   buildInputs = [ |   buildInputs = [ | ||||||
|  |     which | ||||||
|  |     bash | ||||||
|  |     python3 | ||||||
|  |     perl | ||||||
|  |     cmake | ||||||
|  |     llvmPackages_latest.lld | ||||||
|  |     elfutils | ||||||
|     libffi |     libffi | ||||||
|  |     pkg-config | ||||||
|     zlib |     zlib | ||||||
|     gcc.cc.lib # Required for libstdc++.so.6 |     gcc.cc.lib # Required for libstdc++.so.6 | ||||||
|   ]; |   ]; | ||||||
|  | |||||||
| @ -9,14 +9,12 @@ | |||||||
| , ompss2rt ? null | , ompss2rt ? null | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| with lib; |  | ||||||
| 
 |  | ||||||
| let | let | ||||||
|   usingNodesAndOmpv = (openmp.pname == "openmp-v" && ompss2rt.pname == "nodes"); |   usingNodesAndOmpv = (openmp.pname == "openmp-v" && ompss2rt.pname == "nodes"); | ||||||
|   sameNosv = openmp.nosv == ompss2rt.nosv; |   sameNosv = openmp.nosv == ompss2rt.nosv; | ||||||
| in | in | ||||||
| 
 | 
 | ||||||
| assert assertMsg (usingNodesAndOmpv -> sameNosv) "OpenMP-V and NODES must share the same nOS-V"; | assert lib.assertMsg (usingNodesAndOmpv -> sameNosv) "OpenMP-V and NODES must share the same nOS-V"; | ||||||
| 
 | 
 | ||||||
| let | let | ||||||
|   homevar = if ompss2rt.pname == "nanos6" then "NANOS6_HOME" else "NODES_HOME"; |   homevar = if ompss2rt.pname == "nanos6" then "NANOS6_HOME" else "NODES_HOME"; | ||||||
| @ -36,15 +34,14 @@ let | |||||||
|   targetConfig = stdenv.targetPlatform.config; |   targetConfig = stdenv.targetPlatform.config; | ||||||
|   inherit gcc; |   inherit gcc; | ||||||
|   cc = clangOmpss2Unwrapped; |   cc = clangOmpss2Unwrapped; | ||||||
|   gccVersion = with versions; let v = gcc.version; in concatStringsSep "." [(major v) (minor v) (patch v)]; |  | ||||||
| in wrapCCWith { | in wrapCCWith { | ||||||
|   inherit cc bintools; |   inherit cc bintools; | ||||||
|   # extraPackages adds packages to depsTargetTargetPropagated |   # extraPackages adds packages to depsTargetTargetPropagated | ||||||
|   extraPackages = optional (openmp != null) openmp; |   extraPackages = lib.optional (openmp != null) openmp; | ||||||
|   extraBuildCommands = '' |   extraBuildCommands = '' | ||||||
|     echo "-target ${targetConfig}" >> $out/nix-support/cc-cflags |     echo "-target ${targetConfig}" >> $out/nix-support/cc-cflags | ||||||
|     echo "-B${gcc.cc}/lib/gcc/${targetConfig}/${gccVersion}" >> $out/nix-support/cc-cflags |     echo "-B${gcc.cc}/lib/gcc/${targetConfig}/${gcc.version}" >> $out/nix-support/cc-cflags | ||||||
|     echo "-L${gcc.cc}/lib/gcc/${targetConfig}/${gccVersion}" >> $out/nix-support/cc-ldflags |     echo "-L${gcc.cc}/lib/gcc/${targetConfig}/${gcc.version}" >> $out/nix-support/cc-ldflags | ||||||
|     echo "-L${gcc.cc.lib}/lib" >> $out/nix-support/cc-ldflags |     echo "-L${gcc.cc.lib}/lib" >> $out/nix-support/cc-ldflags | ||||||
| 
 | 
 | ||||||
|     for dir in ${gcc.cc}/include/c++/*; do |     for dir in ${gcc.cc}/include/c++/*; do | ||||||
| @ -58,12 +55,12 @@ in wrapCCWith { | |||||||
| 
 | 
 | ||||||
|     wrap clang++  $wrapper $ccPath/clang++ |     wrap clang++  $wrapper $ccPath/clang++ | ||||||
| 
 | 
 | ||||||
|   '' + optionalString (openmp != null) '' |   '' + lib.optionalString (openmp != null) '' | ||||||
|     echo "export OPENMP_RUNTIME=${ompname}" >> $out/nix-support/cc-wrapper-hook |     echo "export OPENMP_RUNTIME=${ompname}" >> $out/nix-support/cc-wrapper-hook | ||||||
|   '' + optionalString (ompss2rt != null) '' |   '' + lib.optionalString (ompss2rt != null) '' | ||||||
|     echo "export OMPSS2_RUNTIME=${rtname}" >> $out/nix-support/cc-wrapper-hook |     echo "export OMPSS2_RUNTIME=${rtname}" >> $out/nix-support/cc-wrapper-hook | ||||||
|     echo "export ${homevar}=${ompss2rt}"   >> $out/nix-support/cc-wrapper-hook |     echo "export ${homevar}=${ompss2rt}"   >> $out/nix-support/cc-wrapper-hook | ||||||
|   '' + optionalString (ompss2rt != null && ompss2rt.pname == "nodes") '' |   '' + lib.optionalString (ompss2rt != null && ompss2rt.pname == "nodes") '' | ||||||
|     echo "export NOSV_HOME=${ompss2rt.nosv}" >> $out/nix-support/cc-wrapper-hook |     echo "export NOSV_HOME=${ompss2rt.nosv}" >> $out/nix-support/cc-wrapper-hook | ||||||
|   ''; |   ''; | ||||||
| } | } | ||||||
|  | |||||||
| @ -68,7 +68,6 @@ stdenv.mkDerivation rec { | |||||||
|     rm -f $out/lib/libiomp* |     rm -f $out/lib/libiomp* | ||||||
|   '' + lib.optionalString enableNosv '' |   '' + lib.optionalString enableNosv '' | ||||||
|     rm -f $out/lib/libomp.* |     rm -f $out/lib/libomp.* | ||||||
|     rm -f $out/libllvmrt/libomp.* |  | ||||||
|   ''; |   ''; | ||||||
| 
 | 
 | ||||||
|   passthru = { |   passthru = { | ||||||
|  | |||||||
| @ -1,41 +1,35 @@ | |||||||
| { | { | ||||||
|   lib, |   lib, | ||||||
|   stdenv, |   stdenv, | ||||||
|   libtirpc, |  | ||||||
|   fetchFromGitHub |   fetchFromGitHub | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| stdenv.mkDerivation rec { | stdenv.mkDerivation rec { | ||||||
|   pname = "lmbench"; |   pname = "lmbench"; | ||||||
|   version = "941a0dcc"; |   version = "701c6c35"; | ||||||
| 
 | 
 | ||||||
|   # We use the intel repo as they have fixed some problems |   # We use the intel repo as they have fixed some problems | ||||||
|   src = fetchFromGitHub { |   src = fetchFromGitHub { | ||||||
|     owner = "intel"; |     owner = "intel"; | ||||||
|     repo = pname; |     repo = pname; | ||||||
|     rev = "941a0dcc0e7bdd9bb0dee05d7f620e77da8c43af"; |     rev = "701c6c35b0270d4634fb1dc5272721340322b8ed"; | ||||||
|     sha256 = "sha256-SzwplRBO3V0R3m3p15n71ivYBMGoLsajFK2TapYxdqk="; |     sha256 = "0sf6zk03knkardsfd6qx7drpm56nhg53n885cylkggk83r38idyr"; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|  |   postUnpack = '' | ||||||
|  |     export sourceRoot="$sourceRoot/src" | ||||||
|  |   ''; | ||||||
|  | 
 | ||||||
|   postPatch = '' |   postPatch = '' | ||||||
|     sed -i "s@/bin/rm@rm@g" $(find . -name Makefile) |     sed -i "s@/bin/rm@rm@g" $(find . -name Makefile) | ||||||
|   ''; |   ''; | ||||||
| 
 | 
 | ||||||
|   buildInputs = [ libtirpc ]; |  | ||||||
|   patches = [ ./fix-install.patch ./gcc-14.patch ]; |  | ||||||
| 
 |  | ||||||
|   hardeningDisable = [ "all" ]; |   hardeningDisable = [ "all" ]; | ||||||
| 
 | 
 | ||||||
|   enableParallelBuilding = false; |   enableParallelBuilding = false; | ||||||
| 
 | 
 | ||||||
|   preBuild = '' |   preBuild = '' | ||||||
|     makeFlagsArray+=( |     makeFlagsArray+=(BASE=$out) | ||||||
|       -C src |  | ||||||
|       BASE=$out |  | ||||||
|       CFLAGS=-Wno-implicit-int |  | ||||||
|       CPPFLAGS=-I${libtirpc.dev}/include/tirpc |  | ||||||
|       LDFLAGS=-ltirpc |  | ||||||
|     ) |  | ||||||
|   ''; |   ''; | ||||||
| 
 | 
 | ||||||
|   meta = { |   meta = { | ||||||
|  | |||||||
| @ -1,10 +0,0 @@ | |||||||
| --- a/src/Makefile
 |  | ||||||
| +++ b/src/Makefile
 |  | ||||||
| @@ -144,6 +144,7 @@ install-target:
 |  | ||||||
|  	if [ ! -d $(BASE)/include ]; then mkdir $(BASE)/include; fi |  | ||||||
|  	if [ ! -d $(BASE)/lib ]; then mkdir $(BASE)/lib; fi |  | ||||||
|  	cp $(EXES) $(BASE)/bin |  | ||||||
| +	cp $(OPT_EXES) $(BASE)/bin
 |  | ||||||
|  	cp $(INCS) $(BASE)/include |  | ||||||
|  	cp $O/lmbench.a $(BASE)/lib/libmbench.a |  | ||||||
|  	cd ../doc; env MAKEFLAGS="$(MAKEFLAGS)" make CC="${CC}" OS="${OS}" BASE="$(BASE)" install |  | ||||||
| @ -1,77 +0,0 @@ | |||||||
| From a3c6e7d303cd8368e8d4e35be7cbc1997e801257 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Rodrigo Arias Mallo <rodrigo.arias@bsc.es> |  | ||||||
| Date: Mon, 21 Jul 2025 17:38:58 +0200 |  | ||||||
| Subject: [PATCH] Misc fixes to build with gcc 14 |  | ||||||
| 
 |  | ||||||
| ---
 |  | ||||||
|  src/bench.h      | 2 ++ |  | ||||||
|  src/lat_select.c | 2 +- |  | ||||||
|  src/lib_debug.c  | 1 + |  | ||||||
|  src/lib_sched.c  | 2 +- |  | ||||||
|  src/lib_timing.c | 2 +- |  | ||||||
|  5 files changed, 6 insertions(+), 3 deletions(-) |  | ||||||
| 
 |  | ||||||
| diff --git a/src/bench.h b/src/bench.h
 |  | ||||||
| index 8166408..4da9079 100644
 |  | ||||||
| --- a/src/bench.h
 |  | ||||||
| +++ b/src/bench.h
 |  | ||||||
| @@ -320,4 +320,6 @@ extern int handle_scheduler(int childno, int benchproc, int nbenchprocs);
 |  | ||||||
|  extern char *rpc_xact_1(); |  | ||||||
|  extern char *client_rpc_xact_1(); |  | ||||||
|   |  | ||||||
| +void lmbench_usage(int argc, char *argv[], char* usage);
 |  | ||||||
| +
 |  | ||||||
|  #endif /* _BENCH_H */ |  | ||||||
| diff --git a/src/lat_select.c b/src/lat_select.c
 |  | ||||||
| index 583b505..39df369 100644
 |  | ||||||
| --- a/src/lat_select.c
 |  | ||||||
| +++ b/src/lat_select.c
 |  | ||||||
| @@ -164,7 +164,7 @@ doit(iter_t iterations, void * cookie)
 |  | ||||||
|  	state_t * 	state = (state_t *)cookie; |  | ||||||
|  	fd_set		nosave; |  | ||||||
|  	static struct timeval tv; |  | ||||||
| -	static count = 0;
 |  | ||||||
| +	static int count = 0;
 |  | ||||||
|  	 |  | ||||||
|  	tv.tv_sec = 0; |  | ||||||
|  	tv.tv_usec = 0; |  | ||||||
| diff --git a/src/lib_debug.c b/src/lib_debug.c
 |  | ||||||
| index e8347dd..cf65312 100644
 |  | ||||||
| --- a/src/lib_debug.c
 |  | ||||||
| +++ b/src/lib_debug.c
 |  | ||||||
| @@ -1,5 +1,6 @@
 |  | ||||||
|  #include "bench.h" |  | ||||||
|  #include "lib_debug.h" |  | ||||||
| +#include <math.h>
 |  | ||||||
|   |  | ||||||
|  /* |  | ||||||
|   * return micro-seconds / iteration at the the fraction point. |  | ||||||
| diff --git a/src/lib_sched.c b/src/lib_sched.c
 |  | ||||||
| index aa83ae0..4f16bbf 100644
 |  | ||||||
| --- a/src/lib_sched.c
 |  | ||||||
| +++ b/src/lib_sched.c
 |  | ||||||
| @@ -91,7 +91,7 @@ handle_scheduler(int childno, int benchproc, int nbenchprocs)
 |  | ||||||
|  			     childno * (nbenchprocs + 1) + benchproc); |  | ||||||
|  	} else { |  | ||||||
|  		/* default action: do nothing */ |  | ||||||
| -		return;
 |  | ||||||
| +		return 0;
 |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
|  	return sched_pin(cpu % sched_ncpus()); |  | ||||||
| diff --git a/src/lib_timing.c b/src/lib_timing.c
 |  | ||||||
| index af8cf68..7ec9652 100644
 |  | ||||||
| --- a/src/lib_timing.c
 |  | ||||||
| +++ b/src/lib_timing.c
 |  | ||||||
| @@ -1623,7 +1623,7 @@ bread(void* buf, long nbytes)
 |  | ||||||
|  void |  | ||||||
|  touch(char *buf, int nbytes) |  | ||||||
|  { |  | ||||||
| -	static	psize;
 |  | ||||||
| +	static int psize;
 |  | ||||||
|   |  | ||||||
|  	if (!psize) { |  | ||||||
|  		psize = getpagesize(); |  | ||||||
| -- 
 |  | ||||||
| 2.49.0 |  | ||||||
| 
 |  | ||||||
| @ -32,20 +32,17 @@ stdenv.mkDerivation rec { | |||||||
| 
 | 
 | ||||||
|   enableParallelBuilding = true; |   enableParallelBuilding = true; | ||||||
| 
 | 
 | ||||||
|   nativeBuildInputs = [ |   buildInputs = [ | ||||||
|     autoreconfHook |     autoreconfHook | ||||||
|     bison |     nanos6 | ||||||
|     flex |     gperf | ||||||
|     python3 |     python3 | ||||||
|     gfortran |     gfortran | ||||||
|     pkg-config |     pkg-config | ||||||
|     gperf |  | ||||||
|     gcc |  | ||||||
|   ]; |  | ||||||
| 
 |  | ||||||
|   buildInputs = [ |  | ||||||
|     nanos6 |  | ||||||
|     sqlite.dev |     sqlite.dev | ||||||
|  |     bison | ||||||
|  |     flex | ||||||
|  |     gcc | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   patches = [ ./intel.patch ]; |   patches = [ ./intel.patch ]; | ||||||
|  | |||||||
| @ -23,7 +23,7 @@ stdenv.mkDerivation rec { | |||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   src = builtins.fetchGit { |   src = builtins.fetchGit { | ||||||
|     url = "ssh://git@bscpm04.bsc.es/mercurium/mcxx"; |     url = "ssh://git@bscpm03.bsc.es/mercurium/mcxx"; | ||||||
|     ref = "master"; |     ref = "master"; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -19,7 +19,7 @@ stdenv.mkDerivation rec { | |||||||
| 
 | 
 | ||||||
|   #src = /home/Computational/rarias/mcxx; |   #src = /home/Computational/rarias/mcxx; | ||||||
|   src = builtins.fetchGit { |   src = builtins.fetchGit { | ||||||
|     url = "ssh://git@bscpm04.bsc.es/rarias/mcxx"; |     url = "ssh://git@bscpm03.bsc.es/rarias/mcxx"; | ||||||
|     rev = "44129a6ac05b8f78b06e9e2eff71438b5ca4d29f"; |     rev = "44129a6ac05b8f78b06e9e2eff71438b5ca4d29f"; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -17,9 +17,9 @@ | |||||||
| , cachelineBytes ? 64 | , cachelineBytes ? 64 | ||||||
| , enableGlibcxxDebug ? false | , enableGlibcxxDebug ? false | ||||||
| , useGit ? false | , useGit ? false | ||||||
| , gitUrl ? "ssh://git@bscpm04.bsc.es/nanos6/nanos6" | , gitUrl ? "ssh://git@bscpm03.bsc.es/nanos6/nanos6" | ||||||
| , gitBranch ? "master" | , gitBranch ? "master" | ||||||
| , gitCommit ? "f82762b66c82b5174a8eaad33f6c2f335ac759b4" | , gitCommit ? "9f54c988e0a8b9c011d9d526acdb8d76f18fcae4" | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| assert enableJemalloc -> (jemallocNanos6 != null); | assert enableJemalloc -> (jemallocNanos6 != null); | ||||||
| @ -28,12 +28,12 @@ with lib; | |||||||
| 
 | 
 | ||||||
| let | let | ||||||
|   release = rec { |   release = rec { | ||||||
|     version = "4.3"; |     version = "4.2"; | ||||||
|     src = fetchFromGitHub { |     src = fetchFromGitHub { | ||||||
|       owner = "bsc-pm"; |       owner = "bsc-pm"; | ||||||
|       repo = "nanos6"; |       repo = "nanos6"; | ||||||
|       rev = "version-${version}"; |       rev = "version-${version}"; | ||||||
|       hash = "sha256-/c6WiKBsAo/01uvMRmjv0PMucbrgvaGmbxlPE6q+dfE="; |       hash = "sha256-tBrRGLCjSFYdmVGPAC2DzYY6HJyZGUOMeykujafn7+4="; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
| @ -48,7 +48,7 @@ let | |||||||
| 
 | 
 | ||||||
|   source = if (useGit) then git else release; |   source = if (useGit) then git else release; | ||||||
| in | in | ||||||
|   stdenv.mkDerivation (source // { |   stdenv.mkDerivation (source // rec { | ||||||
|     pname = "nanos6"; |     pname = "nanos6"; | ||||||
| 
 | 
 | ||||||
|     prePatch = '' |     prePatch = '' | ||||||
| @ -62,7 +62,7 @@ in | |||||||
|       export CACHELINE_WIDTH=${toString cachelineBytes} |       export CACHELINE_WIDTH=${toString cachelineBytes} | ||||||
|       ./autogen.sh |       ./autogen.sh | ||||||
|     '' + lib.optionalString (useGit) '' |     '' + lib.optionalString (useGit) '' | ||||||
|       export NANOS6_GIT_VERSION=${gitCommit} |       export NANOS6_GIT_VERSION=${src.rev} | ||||||
|       export NANOS6_GIT_BRANCH=${gitBranch} |       export NANOS6_GIT_BRANCH=${gitBranch} | ||||||
|     ''; |     ''; | ||||||
| 
 | 
 | ||||||
| @ -88,19 +88,11 @@ in | |||||||
|     dontStrip = enableDebug; |     dontStrip = enableDebug; | ||||||
|     separateDebugInfo = true; |     separateDebugInfo = true; | ||||||
| 
 | 
 | ||||||
|     nativeBuildInputs = [ |     buildInputs = [ | ||||||
|       autoconf |       autoconf | ||||||
|       automake |       automake | ||||||
|       libtool |       libtool | ||||||
|       pkg-config |       pkg-config | ||||||
| 
 |  | ||||||
|       # TODO: papi_version is needed for configure: |  | ||||||
|       # ./configure: line 27378: papi_version: command not found |  | ||||||
|       # This probably breaks cross-compilation |  | ||||||
|       papi |  | ||||||
|     ]; |  | ||||||
| 
 |  | ||||||
|     buildInputs = [ |  | ||||||
|       boost |       boost | ||||||
|       numactl |       numactl | ||||||
|       hwloc |       hwloc | ||||||
|  | |||||||
| @ -7,7 +7,7 @@ stdenv.mkDerivation rec { | |||||||
|   pname = "nixtools"; |   pname = "nixtools"; | ||||||
|   version = "${src.shortRev}"; |   version = "${src.shortRev}"; | ||||||
|   src = builtins.fetchGit { |   src = builtins.fetchGit { | ||||||
|     url = "ssh://git@bscpm04.bsc.es/rarias/nixtools"; |     url = "ssh://git@bscpm03.bsc.es/rarias/nixtools"; | ||||||
|     ref = "master"; |     ref = "master"; | ||||||
|     rev = "a103e392048ace3ed88ce74648b32c9e6ed094da"; |     rev = "a103e392048ace3ed88ce74648b32c9e6ed094da"; | ||||||
|   }; |   }; | ||||||
|  | |||||||
| @ -6,26 +6,24 @@ | |||||||
| , pkg-config | , pkg-config | ||||||
| , numactl | , numactl | ||||||
| , hwloc | , hwloc | ||||||
| , papi |  | ||||||
| , enablePapi ? true |  | ||||||
| , cacheline ? 64 # bits | , cacheline ? 64 # bits | ||||||
| , ovni ? null | , ovni ? null | ||||||
| , useGit ? false | , useGit ? false | ||||||
| , gitUrl ? "git@gitlab-internal.bsc.es:nos-v/nos-v.git" | , gitUrl ? "git@gitlab-internal.bsc.es:nos-v/nos-v.git" | ||||||
| , gitBranch ? "master" | , gitBranch ? "master" | ||||||
| , gitCommit ? "9f47063873c3aa9d6a47482a82c5000a8c813dd8" | , gitCommit ? "cfd361bd1dd30c96da405e6bbaa7e78f5f93dfda" | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| with lib; | with lib; | ||||||
| 
 | 
 | ||||||
| let | let | ||||||
|   release = rec { |   release = rec { | ||||||
|     version = "3.2.0"; |     version = "3.1.0"; | ||||||
|     src = fetchFromGitHub { |     src = fetchFromGitHub { | ||||||
|       owner = "bsc-pm"; |       owner = "bsc-pm"; | ||||||
|       repo = "nos-v"; |       repo = "nos-v"; | ||||||
|       rev = "${version}"; |       rev = "${version}"; | ||||||
|       hash = "sha256-yaz92426EM8trdkBJlISmAoG9KJCDTvoAW/HKrasvOw="; |       hash = "sha256-Pkre+ZZsREDxJLCoIoPN1HQDuUa2H1IQyKB3omg6qaU="; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
| @ -58,5 +56,5 @@ in | |||||||
|       numactl |       numactl | ||||||
|       hwloc |       hwloc | ||||||
|       ovni |       ovni | ||||||
|     ] ++ lib.optionals enablePapi [ papi ]; |     ]; | ||||||
|   } |   } | ||||||
|  | |||||||
| @ -24,7 +24,6 @@ stdenv.mkDerivation rec { | |||||||
| 
 | 
 | ||||||
|   doCheck = true; |   doCheck = true; | ||||||
|   enableParallelBuilding = true; |   enableParallelBuilding = true; | ||||||
|   nativeBuildInputs = [ mpiAll ]; |  | ||||||
|   buildInputs = [ mpiAll ]; |   buildInputs = [ mpiAll ]; | ||||||
|   hardeningDisable = [ "all" ]; |   hardeningDisable = [ "all" ]; | ||||||
|   configureFlags = [  |   configureFlags = [  | ||||||
| @ -41,7 +40,7 @@ stdenv.mkDerivation rec { | |||||||
| 
 | 
 | ||||||
|   meta = { |   meta = { | ||||||
|     description = "OSU Micro-Benchmarks"; |     description = "OSU Micro-Benchmarks"; | ||||||
|     homepage = "http://mvapich.cse.ohio-state.edu/benchmarks/"; |     homepage = http://mvapich.cse.ohio-state.edu/benchmarks/; | ||||||
|     maintainers = [ ]; |     maintainers = [ ]; | ||||||
|     platforms = lib.platforms.all; |     platforms = lib.platforms.all; | ||||||
|   }; |   }; | ||||||
|  | |||||||
| @ -6,22 +6,24 @@ | |||||||
| , fetchFromGitHub | , fetchFromGitHub | ||||||
| , useGit ? false | , useGit ? false | ||||||
| , gitBranch ? "master" | , gitBranch ? "master" | ||||||
| , gitUrl ? "ssh://git@bscpm04.bsc.es/rarias/ovni.git" | , gitUrl ? "ssh://git@bscpm03.bsc.es/rarias/ovni.git" | ||||||
| , gitCommit ? "e4f62382076f0cf0b1d08175cf57cc0bc51abc61" | , gitCommit ? "a7103f8510d1ec124c3e01ceb47d1e443e98bbf4" | ||||||
| , enableDebug ? false | , enableDebug ? false | ||||||
| # Only enable MPI if the build is native (fails on cross-compilation) | # Only enable MPI if the build is native (fails on cross-compilation) | ||||||
| , useMpi ? (stdenv.buildPlatform.canExecute stdenv.hostPlatform) | , useMpi ? (stdenv.buildPlatform.canExecute stdenv.hostPlatform) | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
|  | with lib; | ||||||
|  | 
 | ||||||
| let | let | ||||||
|   release = rec { |   release = rec { | ||||||
|     version = "1.12.0"; |     version = "1.11.0"; | ||||||
|     src = fetchFromGitHub { |     src = fetchFromGitHub { | ||||||
|       owner = "bsc-pm"; |       owner = "bsc-pm"; | ||||||
|       repo = "ovni"; |       repo = "ovni"; | ||||||
|       rev = "${version}"; |       rev = "${version}"; | ||||||
|       hash = "sha256-H04JvsVKrdqr3ON7JhU0g17jjlg/jzQ7eTfx9vUNd3E="; |       hash = "sha256-DEZUK1dvbPGH5WYkZ2hpP5PShkMxXkHOqMwgYUHHxeM="; | ||||||
|     } // { shortRev = "a73afcf"; }; |     } // { shortRev = "a7103f8"; }; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   git = rec { |   git = rec { | ||||||
| @ -43,7 +45,7 @@ in | |||||||
|     postPatch = '' |     postPatch = '' | ||||||
|       patchShebangs --build test/ |       patchShebangs --build test/ | ||||||
|     ''; |     ''; | ||||||
|     nativeBuildInputs = [ cmake ] ++ lib.optionals (useMpi) [ mpi ]; |     nativeBuildInputs = [ cmake ]; | ||||||
|     buildInputs = lib.optionals (useMpi) [ mpi ]; |     buildInputs = lib.optionals (useMpi) [ mpi ]; | ||||||
|     cmakeBuildType = if (enableDebug) then "Debug" else "Release"; |     cmakeBuildType = if (enableDebug) then "Debug" else "Release"; | ||||||
|     cmakeFlags = [ |     cmakeFlags = [ | ||||||
|  | |||||||
| @ -1,6 +1,5 @@ | |||||||
| { | { | ||||||
|   stdenv |   stdenv | ||||||
| , fetchFromGitHub |  | ||||||
| , autoreconfHook | , autoreconfHook | ||||||
| , boost | , boost | ||||||
| , libxml2 | , libxml2 | ||||||
| @ -19,23 +18,14 @@ let | |||||||
| in | in | ||||||
| stdenv.mkDerivation rec { | stdenv.mkDerivation rec { | ||||||
|   pname = "wxparaver"; |   pname = "wxparaver"; | ||||||
|   version = "4.12.0"; |   version = "4.11.2"; | ||||||
| 
 | 
 | ||||||
|   src = fetchFromGitHub { |   src = builtins.fetchGit { | ||||||
|     owner = "bsc-performance-tools"; |     url = "https://github.com/bsc-performance-tools/wxparaver.git"; | ||||||
|     repo = "wxparaver"; |     rev = "129e6b4a4f061e5a319049db8db1620f5de3bd70"; # v4.11.2 (missing tag) | ||||||
|     rev = "v${version}"; |     ref = "master"; | ||||||
|     sha256 = "sha256-YsO5gsuEFQdki3lQudEqgo5WXOt/fPdvNw5OxZQ86Zo="; |  | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   patches = [ |  | ||||||
|     ./do-not-steal-focus-on-redraw.patch |  | ||||||
| 
 |  | ||||||
|     # Fix for boost >=1.87 (thanks to gamezelda) |  | ||||||
|     # https://aur.archlinux.org/cgit/aur.git/commit/?h=wxparaver&id=b0dcd08c472536e0a1a3cc1dfbc4c77d9f5e0d47 |  | ||||||
|     ./fix-boost-87.patch |  | ||||||
|   ]; |  | ||||||
| 
 |  | ||||||
|   hardeningDisable = [ "all" ]; |   hardeningDisable = [ "all" ]; | ||||||
| 
 | 
 | ||||||
|   # Fix the PARAVER_HOME variable |   # Fix the PARAVER_HOME variable | ||||||
| @ -60,17 +50,17 @@ stdenv.mkDerivation rec { | |||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   nativeBuildInputs = [ |   nativeBuildInputs = [ | ||||||
|     autoconf |  | ||||||
|     automake |  | ||||||
|     autoreconfHook |  | ||||||
|     wrapGAppsHook |     wrapGAppsHook | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   buildInputs = [ |   buildInputs = [ | ||||||
|  |     autoreconfHook | ||||||
|     boost |     boost | ||||||
|     libxml2.dev |     libxml2.dev | ||||||
|     xml2 |     xml2 | ||||||
|     wx |     wx | ||||||
|  |     autoconf | ||||||
|  |     automake | ||||||
|     paraverKernel |     paraverKernel | ||||||
|     openssl.dev |     openssl.dev | ||||||
|   ]; |   ]; | ||||||
|  | |||||||
| @ -1,26 +0,0 @@ | |||||||
| From 2b185e1b5ce52808b3026334851dbcd5a640ed4d Mon Sep 17 00:00:00 2001 |  | ||||||
| From: aleixbonerib <aleix.boneribo@bsc.es> |  | ||||||
| Date: Mon, 10 Jun 2024 20:59:45 +0200 |  | ||||||
| Subject: [PATCH] fix: do not set focus on redraw |  | ||||||
| 
 |  | ||||||
| Some wm can change the window size without focusing. Right now, when the |  | ||||||
| plot is resized it takes back focus. |  | ||||||
| ---
 |  | ||||||
|  src/gtimeline.cpp | 1 - |  | ||||||
|  1 file changed, 1 deletion(-) |  | ||||||
| 
 |  | ||||||
| diff --git a/src/gtimeline.cpp b/src/gtimeline.cpp
 |  | ||||||
| index 23ebef2..a896066 100644
 |  | ||||||
| --- a/src/gtimeline.cpp
 |  | ||||||
| +++ b/src/gtimeline.cpp
 |  | ||||||
| @@ -899,7 +899,6 @@ void gTimeline::redraw()
 |  | ||||||
|   |  | ||||||
|    drawZone->Refresh(); |  | ||||||
|   |  | ||||||
| -  SetFocus();
 |  | ||||||
|  } |  | ||||||
|   |  | ||||||
|   |  | ||||||
| -- 
 |  | ||||||
| 2.44.1 |  | ||||||
| 
 |  | ||||||
| @ -11,7 +11,7 @@ diff --git a/api/semanticcolor.cpp b/api/semanticcolor.cpp | |||||||
| index 9f86960..22859eb 100644
 | index 9f86960..22859eb 100644
 | ||||||
| --- a/api/semanticcolor.cpp
 | --- a/api/semanticcolor.cpp
 | ||||||
| +++ b/api/semanticcolor.cpp
 | +++ b/api/semanticcolor.cpp
 | ||||||
| @@ -295,8 +295,9 @@ rgb SemanticColor::getColor( PRV_UINT32 pos ) const
 | @@ -232,8 +232,9 @@ rgb CodeColor::getColor( PRV_UINT32 pos ) const
 | ||||||
|  { |  { | ||||||
|    if( pos == 0 && ParaverConfig::getInstance()->getColorsTimelineUseZero() ) |    if( pos == 0 && ParaverConfig::getInstance()->getColorsTimelineUseZero() ) | ||||||
|      return ParaverConfig::getInstance()->getColorsTimelineColorZero(); |      return ParaverConfig::getInstance()->getColorsTimelineColorZero(); | ||||||
| @ -22,26 +22,26 @@ index 9f86960..22859eb 100644 | |||||||
| +  return colors[ pos + 1 ];
 | +  return colors[ pos + 1 ];
 | ||||||
|  } |  } | ||||||
|   |   | ||||||
|  void SemanticColor::setColor( PRV_UINT32 whichPos, rgb whichColor ) |  void CodeColor::setColor( PRV_UINT32 whichPos, rgb whichColor ) | ||||||
| @@ -314,6 +315,12 @@ void SemanticColor::setColor( PRV_UINT32 whichPos, rgb whichColor )
 | @@ -250,6 +251,12 @@ void CodeColor::setColor( PRV_UINT32 whichPos, rgb whichColor )
 | ||||||
|    colors[ whichPos ] = whichColor; |    colors[ whichPos ] = whichColor; | ||||||
|  } |  } | ||||||
|   |   | ||||||
| +void SemanticColor::cutAfter( PRV_UINT32 pos )
 | +void CodeColor::cutAfter( PRV_UINT32 pos )
 | ||||||
| +{
 | +{
 | ||||||
| +  if ( pos < colors.size() )
 | +  if ( pos < colors.size() )
 | ||||||
| +    colors.erase( colors.begin() + pos, colors.end() );
 | +    colors.erase( colors.begin() + pos, colors.end() );
 | ||||||
| +}
 | +}
 | ||||||
| +
 | +
 | ||||||
|  void SemanticColor::setCustomColor( TSemanticValue whichValue, rgb color )  |  void CodeColor::setCustomColor( TSemanticValue whichValue, rgb color )  | ||||||
|  { |  { | ||||||
|    customPalette[ whichValue ] = color; |    customPalette[ whichValue ] = color; | ||||||
| diff --git a/api/semanticcolor.h b/api/semanticcolor.h
 | diff --git a/api/semanticcolor.h b/api/semanticcolor.h
 | ||||||
| index a079556..bddf3d8 100644
 | index a079556..bddf3d8 100644
 | ||||||
| --- a/api/semanticcolor.h
 | --- a/api/semanticcolor.h
 | ||||||
| +++ b/api/semanticcolor.h
 | +++ b/api/semanticcolor.h
 | ||||||
| @@ -114,6 +114,7 @@ class SemanticColor
 | @@ -98,6 +98,7 @@ class CodeColor: public SemanticColor
 | ||||||
|      // Code Color methods |   | ||||||
|      PRV_UINT32 getNumColors() const; |      PRV_UINT32 getNumColors() const; | ||||||
|      void setColor( PRV_UINT32 pos, rgb color ); |      void setColor( PRV_UINT32 pos, rgb color ); | ||||||
| +    void cutAfter( PRV_UINT32 pos );
 | +    void cutAfter( PRV_UINT32 pos );
 | ||||||
| @ -61,7 +61,7 @@ index b0d2050..ee2ab69 100644 | |||||||
|    for ( auto it : semanticColors ) |    for ( auto it : semanticColors ) | ||||||
|    { |    { | ||||||
|      std::tie( tmpColor.red, tmpColor.green, tmpColor.blue ) = it.second; |      std::tie( tmpColor.red, tmpColor.green, tmpColor.blue ) = it.second; | ||||||
|      mySemanticColor.setColor( it.first, tmpColor ); |      myCodeColor.setColor( it.first, tmpColor ); | ||||||
| +	if (it.first > maxValue)
 | +	if (it.first > maxValue)
 | ||||||
| +      maxValue = it.first;
 | +      maxValue = it.first;
 | ||||||
|    } |    } | ||||||
| @ -69,7 +69,7 @@ index b0d2050..ee2ab69 100644 | |||||||
| +  // Cut the palette after the highest defined value, so there are no
 | +  // Cut the palette after the highest defined value, so there are no
 | ||||||
| +  // extra expanded values
 | +  // extra expanded values
 | ||||||
| +  if ( !pcfParser.expandColors )
 | +  if ( !pcfParser.expandColors )
 | ||||||
| +	mySemanticColor.cutAfter(maxValue);
 | +	myCodeColor.cutAfter(maxValue);
 | ||||||
| +
 | +
 | ||||||
|    myEventLabels = EventLabels( pcfParser ); |    myEventLabels = EventLabels( pcfParser ); | ||||||
|    myStateLabels = StateLabels( pcfParser ); |    myStateLabels = StateLabels( pcfParser ); | ||||||
|  | |||||||
| @ -1,87 +0,0 @@ | |||||||
| From 7ecd888e2ebb9e8c5582851d3c50bff61022708e Mon Sep 17 00:00:00 2001 |  | ||||||
| From: =?UTF-8?q?Joan=20Bruguera=20Mic=C3=B3?= <joanbrugueram@gmail.com> |  | ||||||
| Date: Sat, 29 Mar 2025 18:14:25 +0000 |  | ||||||
| Subject: [PATCH] tutorialsdownload: Fix Boost ASIO 1.87.0 removals |  | ||||||
| 
 |  | ||||||
| ---
 |  | ||||||
|  src/tutorialsdownload.cpp | 25 ++++++++++++------------- |  | ||||||
|  1 file changed, 12 insertions(+), 13 deletions(-) |  | ||||||
| 
 |  | ||||||
| diff --git a/src/tutorialsdownload.cpp b/src/tutorialsdownload.cpp
 |  | ||||||
| index a1921fd..6ce9dc2 100644
 |  | ||||||
| --- a/src/tutorialsdownload.cpp
 |  | ||||||
| +++ b/src/tutorialsdownload.cpp
 |  | ||||||
| @@ -121,13 +121,13 @@ void TutorialsProgress::updateInstall( int whichValue )
 |  | ||||||
|  class client |  | ||||||
|  { |  | ||||||
|    public: |  | ||||||
| -    client( boost::asio::io_service& io_service,
 |  | ||||||
| +    client( boost::asio::io_context& io_context,
 |  | ||||||
|              boost::asio::ssl::context& context, |  | ||||||
|              const std::string& server, const std::string& path, |  | ||||||
|              ofstream& storeFile, |  | ||||||
|              TutorialsProgress *progress ) |  | ||||||
| -            : resolver_( io_service ),
 |  | ||||||
| -              socket_( io_service, context ),
 |  | ||||||
| +            : resolver_( io_context ),
 |  | ||||||
| +              socket_( io_context, context ),
 |  | ||||||
|                store_( storeFile ), |  | ||||||
|                progress_( progress ) |  | ||||||
|      { |  | ||||||
| @@ -143,8 +143,7 @@ class client
 |  | ||||||
|   |  | ||||||
|          // Start an asynchronous resolve to translate the server and service names |  | ||||||
|          // into a list of endpoints. |  | ||||||
| -        tcp::resolver::query query( server, "https" );
 |  | ||||||
| -        resolver_.async_resolve( query,
 |  | ||||||
| +        resolver_.async_resolve( server, "https",
 |  | ||||||
|                                   boost::bind( &client::handle_resolve, |  | ||||||
|                                                this, |  | ||||||
|                                                boost::asio::placeholders::error, |  | ||||||
| @@ -154,7 +153,7 @@ class client
 |  | ||||||
|    private: |  | ||||||
|   |  | ||||||
|      void handle_resolve( const boost::system::error_code& err, |  | ||||||
| -                         tcp::resolver::iterator endpoint_iterator )
 |  | ||||||
| +                         const tcp::resolver::results_type& endpoints )
 |  | ||||||
|      { |  | ||||||
|        if ( !err ) |  | ||||||
|        { |  | ||||||
| @@ -162,7 +161,7 @@ class client
 |  | ||||||
|          socket_.set_verify_callback( boost::bind( &client::verify_certificate, this, _1, _2 ) ); |  | ||||||
|   |  | ||||||
|          boost::asio::async_connect( socket_.lowest_layer(),  |  | ||||||
| -                                    endpoint_iterator,
 |  | ||||||
| +                                    endpoints,
 |  | ||||||
|                                      boost::bind( &client::handle_connect,  |  | ||||||
|                                                   this, |  | ||||||
|                                                   boost::asio::placeholders::error ) ); |  | ||||||
| @@ -536,9 +535,9 @@ bool TutorialsDownload::downloadTutorialsList() const
 |  | ||||||
|      boost::asio::ssl::context ctx( boost::asio::ssl::context::sslv23 ); |  | ||||||
|      ctx.set_default_verify_paths(); |  | ||||||
|   |  | ||||||
| -    boost::asio::io_service io_service;
 |  | ||||||
| -    client c( io_service, ctx, server, path, storeFile, nullptr );
 |  | ||||||
| -    io_service.run();
 |  | ||||||
| +    boost::asio::io_context io_context;
 |  | ||||||
| +    client c( io_context, ctx, server, path, storeFile, nullptr );
 |  | ||||||
| +    io_context.run();
 |  | ||||||
|   |  | ||||||
|      doneDownload = true; |  | ||||||
|    } |  | ||||||
| @@ -580,9 +579,9 @@ bool TutorialsDownload::download( const TutorialData& whichTutorial, string& tut
 |  | ||||||
|      boost::asio::ssl::context ctx( boost::asio::ssl::context::sslv23 ); |  | ||||||
|      ctx.set_default_verify_paths(); |  | ||||||
|   |  | ||||||
| -    boost::asio::io_service io_service;
 |  | ||||||
| -    client c( io_service, ctx, std::string( server.mb_str() ), std::string( path.mb_str() ), storeFile, &progress );
 |  | ||||||
| -    io_service.run();
 |  | ||||||
| +    boost::asio::io_context io_context;
 |  | ||||||
| +    client c( io_context, ctx, std::string( server.mb_str() ), std::string( path.mb_str() ), storeFile, &progress );
 |  | ||||||
| +    io_context.run();
 |  | ||||||
|    } |  | ||||||
|    catch ( ParaverKernelException& e ) |  | ||||||
|    { |  | ||||||
| -- 
 |  | ||||||
| 2.49.0 |  | ||||||
| 
 |  | ||||||
| @ -1,23 +0,0 @@ | |||||||
| commit 60aa3ffa05f6b40db191a880e9e622d608744c1f |  | ||||||
| Author: Aleix Boné <aleix.boneribo@bsc.es> |  | ||||||
| Date:   Sun Jul 21 12:11:30 2025 +0200 |  | ||||||
| 
 |  | ||||||
|     fix libxml2 deprecated macro |  | ||||||
| 
 |  | ||||||
| diff --git a/configure.ac b/configure.ac
 |  | ||||||
| index 7fe1876..3ce1091 100644
 |  | ||||||
| --- a/configure.ac
 |  | ||||||
| +++ b/configure.ac
 |  | ||||||
| @@ -46,7 +46,10 @@ AC_PROG_CPP
 |  | ||||||
|  AC_PROG_CXXCPP |  | ||||||
|  AC_PROG_SED |  | ||||||
|   |  | ||||||
| -AM_PATH_XML2
 |  | ||||||
| +PKG_PROG_PKG_CONFIG
 |  | ||||||
| +PKG_CHECK_MODULES([XML], [libxml-2.0])
 |  | ||||||
| +
 |  | ||||||
| +AC_SUBST(XML_CPPFLAGS, $XML_CFLAGS)
 |  | ||||||
|   |  | ||||||
|  AX_BOOST_BASE(1.36) |  | ||||||
|  AX_BOOST_SERIALIZATION |  | ||||||
| 
 |  | ||||||
| @ -1,32 +1,32 @@ | |||||||
| { | { | ||||||
|   stdenv |   stdenv | ||||||
| , fetchFromGitHub |  | ||||||
| , autoreconfHook | , autoreconfHook | ||||||
| , boost | , boost | ||||||
| , libxml2 | , libxml2 | ||||||
| , xml2 | , xml2 | ||||||
|  | , wxGTK32 | ||||||
| , autoconf | , autoconf | ||||||
| , automake | , automake | ||||||
| , pkg-config | , pkg-config | ||||||
| , zlib | , zlib | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
|  | let | ||||||
|  |   wx = wxGTK32; | ||||||
|  | in | ||||||
| stdenv.mkDerivation rec { | stdenv.mkDerivation rec { | ||||||
|   pname = "paraver-kernel"; |   pname = "paraver-kernel"; | ||||||
|   version = "4.12.0"; |   version = "${src.shortRev}"; | ||||||
| 
 | 
 | ||||||
|   src = fetchFromGitHub { |   src = builtins.fetchGit { | ||||||
|     owner = "bsc-performance-tools"; |     url = "https://github.com/bsc-performance-tools/paraver-kernel.git"; | ||||||
|     repo = "paraver-kernel"; |     rev = "2e167da3cee78ca11e31b74faefb23f12bac2b8c"; # master (missing tag) | ||||||
|     rev = "v${version}"; |     ref = "master"; | ||||||
|     sha256 = "sha256-Xs7g8ITZhPt00v7o2WlTddbou8C8Rc9kBMFpl2WsCS4="; |  | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   patches = [ |   patches = [ | ||||||
|     # https://github.com/bsc-performance-tools/paraver-kernel/pull/11 |     # https://github.com/bsc-performance-tools/paraver-kernel/pull/11 | ||||||
|     # TODO: add this back if it's still relevant |     ./dont-expand-colors.patch | ||||||
|     # ./dont-expand-colors.patch |  | ||||||
|     ./fix-libxml2-deprecation.patch |  | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   hardeningDisable = [ "all" ]; |   hardeningDisable = [ "all" ]; | ||||||
| @ -44,17 +44,14 @@ stdenv.mkDerivation rec { | |||||||
|     "--enable-openmp" |     "--enable-openmp" | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   nativeBuildInputs = [ |  | ||||||
|     autoreconfHook |  | ||||||
|     autoconf |  | ||||||
|     automake |  | ||||||
|     pkg-config |  | ||||||
|   ]; |  | ||||||
| 
 |  | ||||||
|   buildInputs = [ |   buildInputs = [ | ||||||
|  |     autoreconfHook | ||||||
|     boost |     boost | ||||||
|     libxml2.dev |     libxml2.dev | ||||||
|     xml2 |     xml2 | ||||||
|  |     autoconf | ||||||
|  |     automake | ||||||
|  |     pkg-config | ||||||
|     zlib |     zlib | ||||||
|   ]; |   ]; | ||||||
| } | } | ||||||
|  | |||||||
| @ -61,16 +61,13 @@ stdenv.mkDerivation rec { | |||||||
|     "--with-wx-config=${wx}/bin/wx-config" |     "--with-wx-config=${wx}/bin/wx-config" | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   nativeBuildInputs = [ |  | ||||||
|     autoconf |  | ||||||
|     automake |  | ||||||
|   ]; |  | ||||||
| 
 |  | ||||||
|   buildInputs = [ |   buildInputs = [ | ||||||
|     boost |     boost | ||||||
|     xml2 |     xml2 | ||||||
|     libxml2.dev |     libxml2.dev | ||||||
|     wx |     wx | ||||||
|  |     autoconf | ||||||
|  |     automake | ||||||
|     openssl.dev |     openssl.dev | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -18,12 +18,8 @@ stdenv.mkDerivation rec { | |||||||
|   hardeningDisable = [ "all" ]; |   hardeningDisable = [ "all" ]; | ||||||
|   dontStrip = true; |   dontStrip = true; | ||||||
|   configureFlags = [ "--with-ovni=${ovni}" ]; |   configureFlags = [ "--with-ovni=${ovni}" ]; | ||||||
| 
 |  | ||||||
|   nativeBuildInputs = [ |  | ||||||
|     autoreconfHook |  | ||||||
|   ]; |  | ||||||
| 
 |  | ||||||
|   buildInputs = [ |   buildInputs = [ | ||||||
|  |     autoreconfHook | ||||||
|     ovni |     ovni | ||||||
|     mpi |     mpi | ||||||
|   ]; |   ]; | ||||||
|  | |||||||
| @ -8,13 +8,14 @@ | |||||||
| , gnumake | , gnumake | ||||||
| , boost | , boost | ||||||
| , mpi | , mpi | ||||||
|  | , gcc | ||||||
| , autoreconfHook | , autoreconfHook | ||||||
| , enableOvni ? true | , enableOvni ? true | ||||||
| , ovni ? null | , ovni ? null | ||||||
| , useGit ? false | , useGit ? false | ||||||
| , gitUrl ? "ssh://git@bscpm04.bsc.es/interoperability/tampi.git" | , gitUrl ? "ssh://git@bscpm03.bsc.es/interoperability/tampi.git" | ||||||
| , gitBranch ? "master" | , gitBranch ? "master" | ||||||
| , gitCommit ? "f6455db9d3124ae36e715a4874fd49720e79f20a" | , gitCommit ? "a5c93bf8ab045b71ad4a8d5e2c991ce774db5cbc" | ||||||
| }: | }: | ||||||
| 
 | 
 | ||||||
| with lib; | with lib; | ||||||
| @ -23,12 +24,12 @@ assert enableOvni -> (ovni != null); | |||||||
| 
 | 
 | ||||||
| let | let | ||||||
|   release = rec { |   release = rec { | ||||||
|     version = "4.1"; |     version = "4.0"; | ||||||
|     src = fetchFromGitHub { |     src = fetchFromGitHub { | ||||||
|       owner = "bsc-pm"; |       owner = "bsc-pm"; | ||||||
|       repo = "tampi"; |       repo = "tampi"; | ||||||
|       rev = "v${version}"; |       rev = "v${version}"; | ||||||
|       hash = "sha256-SwfPSnwcZnRnSgNvCD5sFSUJRpWINqI5I4adj5Hh+XY="; |       hash = "sha256-R7ew5tsrxGReTvOeeZe1FD0oThBhOHoDGv6Mo2sbmDg="; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
|   git = rec { |   git = rec { | ||||||
| @ -40,23 +41,20 @@ let | |||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
|   source = if (useGit) then git else release; |   source = if (useGit) then git else release; | ||||||
| in stdenv.mkDerivation { | in stdenv.mkDerivation rec { | ||||||
|   pname = "tampi"; |   pname = "tampi"; | ||||||
|   inherit (source) src version; |   inherit (source) src version; | ||||||
|   enableParallelBuilding = true; |   enableParallelBuilding = true; | ||||||
|   separateDebugInfo = true; |   separateDebugInfo = true; | ||||||
| 
 |  | ||||||
|   nativeBuildInputs = [ |  | ||||||
|     autoconf |  | ||||||
|     automake |  | ||||||
|     autoreconfHook |  | ||||||
|     gnumake |  | ||||||
|     libtool |  | ||||||
|   ]; |  | ||||||
| 
 |  | ||||||
|   buildInputs = [ |   buildInputs = [ | ||||||
|  |     autoreconfHook | ||||||
|  |     automake | ||||||
|  |     autoconf | ||||||
|  |     libtool | ||||||
|  |     gnumake | ||||||
|     boost |     boost | ||||||
|     mpi |     mpi | ||||||
|  |     gcc | ||||||
|   ] ++ optional (enableOvni) ovni; |   ] ++ optional (enableOvni) ovni; | ||||||
|   configureFlags = optional (enableOvni) "--with-ovni=${ovni}"; |   configureFlags = optional (enableOvni) "--with-ovni=${ovni}"; | ||||||
|   dontDisableStatic = true; |   dontDisableStatic = true; | ||||||
|  | |||||||
							
								
								
									
										55
									
								
								pkgs/vivado/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								pkgs/vivado/default.nix
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,55 @@ | |||||||
|  | # Thanks to MLabs to made the switch. | ||||||
|  | 
 | ||||||
|  | { | ||||||
|  |   stdenv | ||||||
|  | , lib | ||||||
|  | , ncurses5 | ||||||
|  | , libxcrypt-legacy | ||||||
|  | , zlib | ||||||
|  | , libuuid | ||||||
|  | , xorg | ||||||
|  | , freetype | ||||||
|  | , fontconfig | ||||||
|  | , buildFHSEnv | ||||||
|  | }: | ||||||
|  | 
 | ||||||
|  | with lib; | ||||||
|  | 
 | ||||||
|  | let | ||||||
|  |   vivadoDeps = pkgs: | ||||||
|  |     let | ||||||
|  |       # Apply patch from https://github.com/nix-community/nix-environments/pull/54 | ||||||
|  |       # to fix ncurses libtinfo.so's soname issue | ||||||
|  |       ncurses' = ncurses5.overrideAttrs (old: { | ||||||
|  |         configureFlags = old.configureFlags ++ ["--with-termlib"]; | ||||||
|  |         postFixup = ""; | ||||||
|  |       }); | ||||||
|  |     in [ | ||||||
|  |       libxcrypt-legacy | ||||||
|  |       (ncurses'.override {unicodeSupport = false;}) | ||||||
|  |       zlib | ||||||
|  |       libuuid | ||||||
|  |       xorg.libSM | ||||||
|  |       xorg.libICE | ||||||
|  |       xorg.libXrender | ||||||
|  |       xorg.libX11 | ||||||
|  |       xorg.libXext | ||||||
|  |       xorg.libXtst | ||||||
|  |       xorg.libXi | ||||||
|  |       freetype | ||||||
|  |       fontconfig | ||||||
|  |     ]; | ||||||
|  | 
 | ||||||
|  |   vivadoEnv = buildFHSEnv { | ||||||
|  |     name = "vivado-env"; | ||||||
|  |     targetPkgs = vivadoDeps; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   vivado = buildFHSEnv { | ||||||
|  |     name = "vivado"; | ||||||
|  |     targetPkgs = vivadoDeps; | ||||||
|  |     profile = "set -e; source /opt/Xilinx/Vivado/2024.2/settings64.sh"; | ||||||
|  |     runScript = "vivado"; | ||||||
|  |   }; | ||||||
|  | in | ||||||
|  |   vivadoEnv | ||||||
		Reference in New Issue
	
	Block a user