# TODO:
# - fix mimelnk installation
#
+# Conditional build:
+%bcond_without packages3D #do not build packages3D
+%bcond_without tests # unit tests
+
Summary: KiCad - is a GPL'd suite of programs for EDA
Summary(pl.UTF-8): KiCad - zestaw programów na licencji GPL zaliczany do kategorii EDA
Name: kicad
-Version: 5.1.0
-Release: 2
+Version: 5.1.10
+Release: 1
Epoch: 1
License: GPL v2+
Group: X11/Applications
-Source0: https://launchpad.net/kicad/5.0/%{version}/+download/%{name}-%{version}.tar.xz
-# Source0-md5: 735cb4d87d3819bf309495746eb13792
-Source1: https://github.com/KiCad/kicad-doc/archive/%{version}/%{name}-doc-%{version}.tar.gz
-# Source1-md5: 47142ec31256c1dea25bcd6f4dcd7071
-Source2: https://github.com/KiCad/kicad-i18n/archive/%{version}/%{name}-i18n-%{version}.tar.gz
-# Source2-md5: c1e8fdd7bf4d1377f7ee0968fb5ab1d6
-Source3: https://github.com/KiCad/kicad-symbols/archive/%{version}/%{name}-symbols-%{version}.tar.gz
-# Source3-md5: f78847a49329c9d8bfd4f5aac7dc36b1
-Source4: https://github.com/KiCad/kicad-footprints/archive/%{version}/%{name}-footprints-%{version}.tar.gz
-# Source4-md5: cbdc858a0657878df24cec5eb0ab64a0
-Source5: https://github.com/KiCad/kicad-packages3D/archive/%{version}/%{name}-packages3D-%{version}.tar.gz
-# Source5-md5: dde395e19f69881930a8820a922f239a
-Source6: https://github.com/KiCad/kicad-templates/archive/%{version}/%{name}-templates-%{version}.tar.gz
-# Source6-md5: 451fc7de145ff122f1de08dfcef368d6
+Source0: https://gitlab.com/kicad/code/kicad/-/archive/%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 1a3f3060c5eb76337efc141ca1204724
+Source1: https://gitlab.com/kicad/services/kicad-doc/-/archive/%{version}/%{name}-doc-%{version}.tar.gz
+# Source1-md5: a2a643592c2ccbe315bc277644da201b
+Source2: https://gitlab.com/kicad/code/kicad-i18n/-/archive/%{version}/%{name}-i18n-%{version}.tar.gz
+# Source2-md5: 5d6ad1c6a46d50dd3d19338f76a3c027
+Source3: https://gitlab.com/kicad/libraries/kicad-symbols/-/archive/%{version}/%{name}-symbols-%{version}.tar.bz2
+# Source3-md5: a6a382b1d83241bc4cd1a8cb54003bee
+Source4: https://gitlab.com/kicad/libraries/kicad-footprints/-/archive/%{version}/%{name}-footprints-%{version}.tar.bz2
+# Source4-md5: 891030103aaa7a11b575cd85cd618e22
+Source5: https://gitlab.com/kicad/libraries/kicad-packages3D/-/archive/%{version}/%{name}-packages3D-%{version}.tar.bz2
+# Source5-md5: 26afa2d5d1c8fe3c0ffd1d5e9242a916
+Source6: https://gitlab.com/kicad/libraries/kicad-templates/-/archive/%{version}/%{name}-templates-%{version}.tar.bz2
+# Source6-md5: 7618770f4eb6401b1eaff00641b61115
Patch0: nostrip.patch
-Patch1: lto.patch
URL: http://www.kicad-pcb.org/
BuildRequires: GLM >= 0.9.9.4
BuildRequires: OCE-devel
BuildRequires: wxWidgets-devel >= 3.0.0
BuildRequires: zlib-devel
Obsoletes: kicad-doc-hu < 1:4.0.6-1
+Obsoletes: kicad-doc-nl < 1:5.1.0-1
Obsoletes: kicad-doc-pt < 1:4.0.6-1
Obsoletes: kicad-doc-zh_CN < 1:4.0.6-1
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%package library
Summary: Symbols, footprints and templates for kicad
Summary(pl.UTF-8): Symbole, obudowy i wzorce dla kicad
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
Requires: kicad >= 1:5.0.0
%description library
Symbols, footprints and templates for kicad.
-%description -l pl.UTF-8
+%description library -l pl.UTF-8
Symbole, obudowy i wzorce dla kicad.
%package packages3D
Summary: Packages3D for kicad
Summary(pl.UTF-8): Trójwymiarowe modele obudów dla kicad
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
Requires: kicad >= 1:5.0.0
%description packages3D
Packages3D for kicad
-%description -l pl.UTF-8
+%description packages3D -l pl.UTF-8
Trójwymiarowe modele obudów dla kicad.
%package doc
Summary(fr.UTF-8): Documentations pour kicad en anglais
License: GPL v2+
Group: Documentation
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc
Documentation and tutorials for kicad in English
Summary: Documentation for Kicad in Catalan
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-ca
Documentation and tutorials for Kicad in Catalan.
Summary(fr.UTF-8): Documentations pour kicad en allemand
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-de
Documentation and tutorials for Kicad in German.
Summary(fr.UTF-8): Documentations pour kicad en espagnol
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-es
Documentation and tutorials for Kicad in Spanish.
Summary(fr.UTF-8): Documentations pour kicad en français
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-fr
Documentation and tutorials for Kicad in French.
Summary: Documentation for Kicad in Indonesian
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-id
Documentation and tutorials for Kicad in Indonesian.
Summary(fr.UTF-8): Documentations pour kicad en italien
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-it
Documentation and tutorials for Kicad in Italian.
Summary(fr.UTF-8): Documentations pour kicad en japonais
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-ja
Documentation and tutorials for Kicad in Japanese.
Summary(fr.UTF-8): Documentations pour kicad en polonais
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-pl
Documentation and tutorials for Kicad in Polish.
Summary(fr.UTF-8): Documentations pour kicad en russe
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-ru
Documentation and tutorials for Kicad in Russian.
Summary(fr.UTF-8): Documentations pour kicad en chinois
Group: Documentation
Requires: %{name}-doc = %{epoch}:%{version}-%{release}
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc-zh
Documentation and tutorials for Kicad in Chinese.
%prep
-%setup -q -a 1 -a 2 -a 3 -a 4 -a 5 -a 6
+%setup -q -a 1 -a 2 -a 3 -a 4 %{?with_packages3D:-a 5} -a 6
%patch0 -p1
-%patch1 -p1
%build
build_library %{name}-symbols-%{version}
build_library %{name}-footprints-%{version}
build_library %{name}-templates-%{version}
+%if %{with packages3D}
build_library %{name}-packages3D-%{version}
+%endif
# Documentation
mkdir %{name}-doc-%{version}/build
mkdir build
cd build
%cmake .. \
- -DKICAD_SKIP_BOOST=ON \
-DKICAD_BUILD_VERSION="%{version}-%{release}" \
-DwxWidgets_CONFIG_EXECUTABLE=%{_bindir}/wx-gtk2-unicode-config \
- -DKICAD_SCRIPTING=ON -DKICAD_SCRIPTING_MODULES=ON -DKICAD_SCRIPTING_WXPYTHON=ON
+ -DKICAD_SCRIPTING=ON \
+ -DKICAD_SCRIPTING_MODULES=ON \
+ -DKICAD_SCRIPTING_WXPYTHON=ON \
+ %{cmake_on_off tests KICAD_BUILD_QA_TESTS}
%{__make} VERBOSE=1
+%if %{with tests}
+%{__make} test ARGS=--output-on-failure
+%endif
+
%install
rm -rf $RPM_BUILD_ROOT
install_library %{name}-symbols-%{version}
install_library %{name}-footprints-%{version}
install_library %{name}-templates-%{version}
+%if %{with packages3D}
install_library %{name}-packages3D-%{version}
+%else
+install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/modules/packages3d
+%endif
# Documentation
%{__make} -C %{name}-doc-%{version}/build install \
%attr(755,root,root) %{_bindir}/idfcyl
%attr(755,root,root) %{_bindir}/idfrect
%attr(755,root,root) %{_bindir}/kicad
-%attr(755,root,root) %{_bindir}/kicad-ogltest
%attr(755,root,root) %{_bindir}/kicad2step
%attr(755,root,root) %{_bindir}/pcb_calculator
%attr(755,root,root) %{_bindir}/_pcb_calculator.kiface
%{_datadir}/%{name}/modules/*.pretty
%{_datadir}/%{name}/template/*
+%if %{with packages3D}
%files packages3D
%defattr(644,root,root,755)
%{_datadir}/%{name}/modules/packages3d/*
+%endif
%files doc
%defattr(644,root,root,755)