diff options
author | Ben Gamari <ben@smart-cactus.org> | 2018-07-26 08:47:07 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-07-26 12:27:27 -0400 |
commit | a4c932fa5121c9b16b774c2de8f90d9ee816343a (patch) | |
tree | adbbb03e818081b5cc90c5bd0ad946b604f4bf70 /pkgs/applications/science | |
parent | e7be6e0d00ad6e25350ba70c2c8138d43482aab7 (diff) | |
download | nixlib-a4c932fa5121c9b16b774c2de8f90d9ee816343a.tar nixlib-a4c932fa5121c9b16b774c2de8f90d9ee816343a.tar.gz nixlib-a4c932fa5121c9b16b774c2de8f90d9ee816343a.tar.bz2 nixlib-a4c932fa5121c9b16b774c2de8f90d9ee816343a.tar.lz nixlib-a4c932fa5121c9b16b774c2de8f90d9ee816343a.tar.xz nixlib-a4c932fa5121c9b16b774c2de8f90d9ee816343a.tar.zst nixlib-a4c932fa5121c9b16b774c2de8f90d9ee816343a.zip |
kicad: 4.0.7 -> 5.0.0
Diffstat (limited to 'pkgs/applications/science')
-rw-r--r-- | pkgs/applications/science/electronics/kicad/default.nix | 102 |
1 files changed, 43 insertions, 59 deletions
diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix index e3244ec339ea..5066eafcd557 100644 --- a/pkgs/applications/science/electronics/kicad/default.nix +++ b/pkgs/applications/science/electronics/kicad/default.nix @@ -1,72 +1,56 @@ -{ stdenv, fetchurl, cmake, libGLU_combined, wxGTK, zlib, libX11, gettext, glew, cairo, curl, openssl, boost, pkgconfig, doxygen }: +{ wxGTK, lib, stdenv, fetchurl, cmake, libGLU_combined, zlib +, libX11, gettext, glew, glm, cairo, curl, openssl, boost, pkgconfig +, doxygen, pcre, libpthreadstubs, libXdmcp -stdenv.mkDerivation rec { - name = "kicad-${version}"; - series = "4.0"; - version = "4.0.7"; - - srcs = [ - (fetchurl { - url = "https://code.launchpad.net/kicad/${series}/${version}/+download/kicad-${version}.tar.xz"; - sha256 = "1hgxan9321szgyqnkflb0q60yjf4yvbcc4cpwhm0yz89qrvlq1q9"; - }) - - (fetchurl { - url = "http://downloads.kicad-pcb.org/libraries/kicad-library-${version}.tar.gz"; - sha256 = "1azb7v1y3l6j329r9gg7f4zlg0wz8nh4s4i5i0l9s4yh9r6i9zmv"; - }) - - (fetchurl { - url = "http://downloads.kicad-pcb.org/libraries/kicad-footprints-${version}.tar.gz"; - sha256 = "08qrz5zzsb5127jlnv24j0sgiryd5nqwg3lfnwi8j9a25agqk13j"; - }) - ]; - - sourceRoot = "kicad-${version}"; - - cmakeFlags = '' - -DKICAD_SKIP_BOOST=ON - -DKICAD_BUILD_VERSION=${version} - -DKICAD_REPO_NAME=stable - ''; +, oceSupport ? true, opencascade +, ngspiceSupport ? true, libngspice +, scriptingSupport ? true, swig, python, wxPython +}: - enableParallelBuilding = true; # often fails on Hydra: fatal error: pcb_plot_params_lexer.h: No such file or directory +assert ngspiceSupport -> libngspice != null; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ cmake libGLU_combined wxGTK zlib libX11 gettext glew cairo curl openssl boost doxygen ]; - - # They say they only support installs to /usr or /usr/local, - # so we have to handle this. - patchPhase = '' - sed -i -e 's,/usr/local/kicad,'$out,g common/gestfich.cpp - ''; - - postUnpack = '' - pushd $(pwd) - ''; - - postInstall = '' - popd +with lib; +stdenv.mkDerivation rec { + name = "kicad-${version}"; + series = "5.0"; + version = "5.0.0"; - pushd kicad-library-* - cmake -DCMAKE_INSTALL_PREFIX=$out - make $MAKE_FLAGS - make install - popd + src = fetchurl { + url = "https://launchpad.net/kicad/${series}/${version}/+download/kicad-${version}.tar.xz"; + sha256 = "17nqjszyvd25wi6550j981whlnb1wxzmlanljdjihiki53j84x9p"; + }; - pushd kicad-footprints-* - mkdir -p $out/share/kicad/modules - cp -R *.pretty $out/share/kicad/modules/ - popd + postPatch = '' + substituteInPlace CMakeModules/KiCadVersion.cmake \ + --replace no-vcs-found ${version} ''; + cmakeFlags = + optionals (oceSupport) [ "-DKICAD_USE_OCE=ON" "-DOCE_DIR=${opencascade}" ] + ++ optional (ngspiceSupport) "-DKICAD_SPICE=ON" + ++ optionals (scriptingSupport) [ + "-DKICAD_SCRIPTING=ON" + "-DKICAD_SCRIPTING_MODULES=ON" + "-DKICAD_SCRIPTING_WXPYTHON=ON" + # nix installs wxPython headers in wxPython package, not in wxwidget + # as assumed. We explicitely set the header location. + "-DCMAKE_CXX_FLAGS=-I${wxPython}/include/wx-3.0" + ]; + + # https://www.mail-archive.com/kicad-developers@lists.launchpad.net/msg29840.html + nativeBuildInputs = [ (cmake.override {majorVersion = "3.10";}) doxygen pkgconfig ]; + buildInputs = [ + libGLU_combined zlib libX11 wxGTK pcre libXdmcp gettext glew glm libpthreadstubs + cairo curl openssl boost + ] ++ optional (oceSupport) opencascade + ++ optional (ngspiceSupport) libngspice + ++ optionals (scriptingSupport) [ swig python wxPython ]; meta = { description = "Free Software EDA Suite"; homepage = http://www.kicad-pcb.org/; - license = stdenv.lib.licenses.gpl2; - maintainers = with stdenv.lib.maintainers; [viric]; - platforms = with stdenv.lib.platforms; linux; - hydraPlatforms = []; # 'output limit exceeded' error on hydra + license = licenses.gpl2; + maintainers = with maintainers; [ berce ]; + platforms = with platforms; linux; }; } |