Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ieda: init at 0-unstable-2024-10-11 #338769

Merged
merged 1 commit into from
Dec 12, 2024
Merged

Conversation

xinyangli
Copy link
Contributor

Description of changes

iEDA is a collection of open source EDA tools. Checkout it's official website at: https://ieda.oscc.cc/en/

It's a project written in cpp and rust, so I just package it's rust sub-projects and remove building process of rust packages from cmake. I'm not sure if this is the best practice? Let me know if there are better approaches.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@xinyangli
Copy link
Contributor Author

Result of nixpkgs review
$ git -c fetch.prune=false fetch --no-tags --force https://github.com/NixOS/nixpkgs master:refs/nixpkgs-review/0
$ git worktree add /home/xin/.cache/nixpkgs-review/rev-946c72a0127a04c905bde0e799a6bebedfe4625b/nixpkgs a2c345850e5e1d96c62e7fa8ca6c9d77ebad1c37
Preparing worktree (detached HEAD a2c345850e5e)
Updating files: 100% (43003/43003), done.
HEAD is now at a2c345850e5e brogue-ce: 1.14 -> 1.14.1
$ nix-env --extra-experimental-features no-url-literals --option system x86_64-linux -f <nixpkgs> --nix-path nixpkgs=/home/xin/.cache/nixpkgs-review/rev-946c72a0127a04c905bde0e799a6bebedfe4625b/nixpkgs nixpkgs-overlays=/tmp/nix-shell.IxnOaA/tmpi7fkpvm2 -qaP --xml --out-path --show-trace --no-allow-import-from-derivation
$ git merge --no-commit --no-ff 946c72a0127a04c905bde0e799a6bebedfe4625b
Automatic merge went well; stopped before committing as requested
$ nix-env --extra-experimental-features no-url-literals --option system x86_64-linux -f <nixpkgs> --nix-path nixpkgs=/home/xin/.cache/nixpkgs-review/rev-946c72a0127a04c905bde0e799a6bebedfe4625b/nixpkgs nixpkgs-overlays=/tmp/nix-shell.IxnOaA/tmpi7fkpvm2 -qaP --xml --out-path --show-trace --no-allow-import-from-derivation --meta
1 package added:
ieda (init at 2024-08-14)

warning: ignoring the client-specified setting 'system', because it is a restricted setting and you are not a trusted user
$ nix build --file /nix/store/s5dnqifxhlqrd8zicabxswwdgjlhplvq-nixpkgs-review-2.10.5/lib/python3.12/site-packages/nixpkgs_review/nix/review-shell.nix --nix-path 'nixpkgs=/home/xin/.cache/nixpkgs-review/rev-946c72a0127a04c905bde0e799a6bebedfe4625b/nixpkgs nixpkgs-overlays=/tmp/nix-shell.IxnOaA/tmpi7fkpvm2' --extra-experimental-features 'nix-command no-url-literals' --no-link --keep-going --no-allow-import-from-derivation --option build-use-sandbox relaxed --argstr system x86_64-linux --argstr nixpkgs-path /home/xin/.cache/nixpkgs-review/rev-946c72a0127a04c905bde0e799a6bebedfe4625b/nixpkgs --argstr nixpkgs-config-path /tmp/nix-shell.IxnOaA/tmpy4tv6tkg.nix --argstr attrs-path /home/xin/.cache/nixpkgs-review/rev-946c72a0127a04c905bde0e799a6bebedfe4625b/attrs.nix
warning: ignoring the client-specified setting 'sandbox', because it is a restricted setting and you are not a trusted user
[1/10/12 built, 166 copied (4014.8/4015.4 MiB), 723.1 MiB DL] building iEDA-2024-08-14 (buildPhase): [701/1148] Building CXX object src/operation/iRT/source/toolkit/monitor/CMakeFiles/irt1 package built:
ieda

$ /nix/store/hvkjjva2knprwmqaa989wrxhlw3zc19v-nix-2.18.5/bin/nix-shell --argstr system x86_64-linux --argstr nixpkgs-path /home/xin/.cache/nixpkgs-review/rev-946c72a0127a04c905bde0e799a6bebedfe4625b/nixpkgs --argstr nixpkgs-config-path /tmp/nix-shell.IxnOaA/tmpy4tv6tkg.nix --argstr attrs-path /home/xin/.cache/nixpkgs-review/rev-946c72a0127a04c905bde0e799a6bebedfe4625b/attrs.nix --nix-path 'nixpkgs=/home/xin/.cache/nixpkgs-review/rev-946c72a0127a04c905bde0e799a6bebedfe4625b/nixpkgs nixpkgs-overlays=/tmp/nix-shell.IxnOaA/tmpi7fkpvm2' /nix/store/s5dnqifxhlqrd8zicabxswwdgjlhplvq-nixpkgs-review-2.10.5/lib/python3.12/site-packages/nixpkgs_review/nix/review-shell.nix
this path will be fetched (1.09 MiB download, 6.89 MiB unpacked):
  /nix/store/17avbnwwl5r1r9x7fjridjfafdbgmhjd-bash-interactive-5.2p32
copying path '/nix/store/17avbnwwl5r1r9x7fjridjfafdbgmhjd-bash-interactive-5.2p32' from 'https://mirrors.cernet.edu.cn/nix-channels/store'...

@xinyangli xinyangli force-pushed the add-ieda branch 2 times, most recently from 9fa26f0 to e7b9776 Compare September 1, 2024 14:46
@xinyangli
Copy link
Contributor Author

@sikmir Thanks! Also updated version field of rust packages to match the version number in Cargo.toml.

@xinyangli xinyangli requested a review from sikmir September 4, 2024 05:08
@xinyangli xinyangli force-pushed the add-ieda branch 2 times, most recently from f06339f to 269a525 Compare September 19, 2024 09:13
@xinyangli xinyangli changed the title ieda: init at 2024-08-14 ieda: init at 0-unstable-2024-09-10 Sep 19, 2024
@xinyangli
Copy link
Contributor Author

Rebased to a newer version

@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/prs-ready-for-review/3032/4587

pkgs/by-name/ie/ieda/package.nix Show resolved Hide resolved
pkgs/by-name/ie/ieda/package.nix Outdated Show resolved Hide resolved
@xinyangli xinyangli force-pushed the add-ieda branch 2 times, most recently from 17dad25 to cea0cb8 Compare November 7, 2024 12:05
@xinyangli xinyangli changed the title ieda: init at 0-unstable-2024-09-10 ieda: init at 0-unstable-2024-10-11 Nov 7, 2024
@xinyangli
Copy link
Contributor Author

@ofborg build ieda

@xinyangli
Copy link
Contributor Author

xinyangli commented Nov 7, 2024

Resolved and bumped to the latest version.

(I do not have a darwin machine, so let's wait for ofborg to build the package.)
It failed. I need to find a darwin machine to fix this. It will probably take a few days.

@FliegendeWurst
Copy link
Member

It does not build on Darwin.

/tmp/nix-build-iEDA-0-unstable-2024-10-11.drv-0/iEDA-src-2024-09-10/src/database/basic/geometry/IdbTree.cpp:39:24: error: addition of default argument on redeclaration makes this constructor a default constructor
TreeNode::TreeNode(int type = 0, TreeNode* Parent = 0)
                       ^      ~
/tmp/nix-build-iEDA-0-unstable-2024-10-11.drv-0/iEDA-src-2024-09-10/src/database/basic/geometry/IdbTree.h:58:3: note: previous declaration is here
  TreeNode(int, TreeNode*);        // Constructor
  ^
1 error generated.

@xinyangli
Copy link
Contributor Author

It does not build on Darwin.

@FliegendeWurst Sorry! Do not have much time to make Darwin build work yet. Considering that upstream does not list Darwin as a supported platform, we'd probably need more patches to make it work. Would it be okay to just mark Darwin as an unsupported platform for now until someone's willing to work on it?

@FliegendeWurst
Copy link
Member

Yes, that is a good idea.

@xinyangli
Copy link
Contributor Author

@ofborg build ieda

@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin and removed 10.rebuild-darwin: 1 10.rebuild-darwin: 1-10 labels Nov 25, 2024
Copy link
Member

@FliegendeWurst FliegendeWurst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Build fails on x64 Linux

FAILED: /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/bin/iSTATest 
: && /nix/store/kmp7d4mjpn67ibnmlz1w94bhlrl4j785-gcc-wrapper-13.3.0/bin/g++ -O2 -fopenmp  -O0 -Wall -g2 -ggdb -rdynamic src/operation/iSTA/test/CMakeFiles/iSTATest.dir/AIModelTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/ArnoldiCalTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/DBToNetlistTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/DelayTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/LibertyTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/ReportTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/SdcTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/StaTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/TimingEngineTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/VerilogParserTest.cc.o src/operation/iSTA/test/CMakeFiles/iSTATest.dir/main.cc.o -o /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/bin/iSTATest -L/build/iEDA-src-2024-09-10/build/lib -Wl,-rpath,/build/iEDA-src-2024-09-10/build/lib:/nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib  lib/libIdbBuilder.a  lib/libdef_builder.a  lib/liblef_builder.a  lib/libista-engine.a  lib/libinference.a  lib/libsdc-cmd.a  lib/libshell-cmd.a  lib/libsta.a  lib/libnetlist.a  lib/libliberty.a  lib/libdelay.a  lib/libista_utility.a  lib/libsta-solver.a  lib/libverilog.a  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libusage.so  -lpthread  -lstdc++fs  lib/libIdbBuilder.a  -lgtest  -lonnxruntime  lib/libista-engine.a  lib/libabsl_hash.a  lib/libabsl_city.a  lib/libabsl_bad_variant_access.a  lib/libabsl_low_level_hash.a  lib/libabsl_raw_hash_set.a  lib/libabsl_hashtablez_sampler.a  lib/libsta.a  lib/libsdc-cmd.a  lib/libdelay.a  lib/libista_utility.a  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libgraph.so  lib/libsdc.a  lib/libnetlist.a  lib/libliberty.a  lib/libsta-solver.a  lib/libIdbBuilder.a  lib/libverilog_builder.a  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libtime.so  lib/libverilog.a  -lverilog_parser  lib/libgds_builder.a  lib/libgdsii-parser.a  lib/libjson_builder.a  lib/libjson-parser.a  lib/libdef_builder.a  /build/iEDA-src-2024-09-10/src/third_party/lefdef/def/lib/libdef.a  /build/iEDA-src-2024-09-10/src/third_party/lefdef/def/lib/libdefzlib.a  -lz  lib/liblef_builder.a  /build/iEDA-src-2024-09-10/src/third_party/lefdef/lef/lib/liblef.a  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libdef_service.so  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/liblef_service.so  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libidb.so  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libgeometry_db.so  -lliberty_parser  lib/libspef.a  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/liblog.so  -lglog  -lgflags  -lunwind  -lspef_parser  -ldl  lib/libaocv-parser.a  lib/libabsl_cord.a  lib/libabsl_cordz_info.a  lib/libabsl_cord_internal.a  lib/libabsl_cordz_functions.a  lib/libabsl_exponential_biased.a  lib/libabsl_cordz_handle.a  lib/libabsl_synchronization.a  lib/libabsl_stacktrace.a  lib/libabsl_graphcycles_internal.a  lib/libabsl_time.a  lib/libabsl_civil_time.a  lib/libabsl_time_zone.a  lib/libabsl_symbolize.a  lib/libabsl_debugging_internal.a  lib/libabsl_malloc_internal.a  lib/libabsl_demangle_internal.a  lib/libabsl_crc_cord_state.a  lib/libabsl_crc32c.a  lib/libabsl_crc_internal.a  lib/libabsl_crc_cpu_detect.a  lib/libabsl_bad_optional_access.a  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libreport_table.so  lib/libfort.a  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libyaml-cpp.so  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libstr.so  lib/libabsl_strings.a  lib/libabsl_strings_internal.a  lib/libabsl_base.a  lib/libabsl_spinlock_wait.a  -lrt  lib/libabsl_int128.a  /nix/store/2c6rhjq11slqxa2yblyx4fsk664hd7if-iEDA-0-unstable-2024-10-11/lib/libtcl.so  lib/libabsl_throw_delegate.a  lib/libabsl_raw_logging_internal.a  lib/libabsl_log_severity.a  -ltcl8.6  -lstdc++fs && :
/nix/store/ydvnyf7gcasl7kvylcp0k2vycaxgdk3g-binutils-2.43.1/bin/ld: warning: libprotobuf-lite.so.32, needed by /nix/store/b7309fcasgqq12fiz4mrfzw29rfa7bjp-onnxruntime-1.18.1/lib/libonnxruntime.so, not found (try using -rpath or -rpath-link)
/nix/store/ydvnyf7gcasl7kvylcp0k2vycaxgdk3g-binutils-2.43.1/bin/ld: /nix/store/b7309fcasgqq12fiz4mrfzw29rfa7bjp-onnxruntime-1.18.1/lib/libonnxruntime.so: undefined reference to `vtable for google::protobuf::MessageLite'
/nix/store/ydvnyf7gcasl7kvylcp0k2vycaxgdk3g-binutils-2.43.1/bin/ld: /nix/store/b7309fcasgqq12fiz4mrfzw29rfa7bjp-onnxruntime-1.18.1/lib/libonnxruntime.so: undefined reference to `google::protobuf::io::EpsCopyOutputStream::WriteRawFallback(void const*, int, unsigned char*)'
/nix/store/ydvnyf7gcasl7kvylcp0k2vycaxgdk3g-binutils-2.43.1/bin/ld: /nix/store/b7309fcasgqq12fiz4mrfzw29rfa7bjp-onnxruntime-1.18.1/lib/libonnxruntime.so: undefined reference to `google::protobuf::internal::GenericSwap(google::protobuf::MessageLite*, google::protobuf::MessageLite*)'

pkgs/by-name/ie/ieda/package.nix Outdated Show resolved Hide resolved
pkgs/by-name/ie/ieda/package.nix Outdated Show resolved Hide resolved
pkgs/by-name/ie/ieda/package.nix Show resolved Hide resolved
pkgs/by-name/ie/ieda/package.nix Show resolved Hide resolved
@xinyangli xinyangli force-pushed the add-ieda branch 2 times, most recently from 4267a6f to 25b00cd Compare December 5, 2024 12:12
@xinyangli
Copy link
Contributor Author

I think it's can build on x86_64-linux, mind have another look? @FliegendeWurst

Here is nixpkgs-review result:

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review


x86_64-linux

✅ 1 package built:
  • ieda

@xinyangli
Copy link
Contributor Author

@ofborg build ieda

@FliegendeWurst FliegendeWurst merged commit e4dc3fd into NixOS:master Dec 12, 2024
37 of 38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
8.has: package (new) This PR adds a new package 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 1-10 10.rebuild-linux: 1 11.by: package-maintainer This PR was created by the maintainer of the package it changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants