%global pkgvers 0 %global scdate0 20230203 %global schash0 9dea9f5a3801d612f78c738fe7efccefa5745000 %global branch0 master %global source0 git://git.geda-project.org/pcb.git %global sshort0 %{expand:%%{lua:print(('%{schash0}'):sub(1,8))}} Name: pcb Version: 4.3.0 Release: %{scdate0}.%{pkgvers}.git%{sshort0}%{?dist} Summary: An interactive printed circuit board editor License: GPLv2 URL: http://pcb.geda-project.org BuildRequires: gcc-c++ git perl-generators autoconf automake texinfo-tex netpbm-progs BuildRequires: tcl tk bison flex gawk ImageMagick gtk2-devel gd-devel fontconfig-devel BuildRequires: cups tetex-latex libICE-devel desktop-file-utils intltool gettext-devel BuildRequires: dbus-devel mesa-libGLU-devel gtkglext-devel Requires: m4 %description PCB is an interactive printed circuit board editor. PCB includes a rats nest feature, design rule checking, and can provide industry standard RS-274-X (Gerber), NC drill, and centroid data (X-Y data) output for use in the board fabrication and assembly process. PCB offers high end features such as an auto-router and trace optimizer which can tremendously reduce layout time. %package doc Summary: Documentation for PCB, An interactive printed circuit board editor Requires: %{name} = %{version}-%{release} Requires(post): info Requires(preun): info %description doc This package contains the documentation of PCB, an interactive printed circuit board editor. %prep %setup -T -c -n %{name} git clone --depth 1 -n -b %{branch0} %{source0} . git fetch --depth 1 origin %{schash0} git reset --hard %{schash0} git log --format=fuller %build ./autogen.sh sed -i 's|tutdir = $(pkgdatadir)/tutorial|tutdir = @docdir@/tutorial|' tutorial/Makefile.* sed -i 's|examplesdir = $(pkgdatadir)/examples|examplesdir = @docdir@/examples|' example/libraries/Makefile.* export WISH=%{_bindir}/wish %configure \ --enable-dbus \ --enable-toporouter \ --disable-update-mime-database \ --disable-update-desktop-database \ --docdir=%{_pkgdocdir} %make_build %install rm -rf %{buildroot} %make_install desktop-file-install --vendor "" \ --dir %{buildroot}%{_datadir}/applications \ --delete-original \ %{buildroot}%{_datadir}/applications/%{name}.desktop # # Additional Examples # set +x dest=%{buildroot}%{_pkgdocdir}/examples for d in thermal pad puller ; do echo -n -e "... Fixing path of $d \t" mkdir -p $dest/$d mv $dest/../$d.* $dest/$d install -pm 0644 doc/$d.{pcb,pdf} $dest/$d sed -i "s|$d.png|examples/$d/$d.png|" $dest/../%{name}.html echo "done" done set -x # pcb supports for acpcircuits unzip tools/apctools.zip install -p -m 755 apc*.pl %{buildroot}%{_datadir}/%{name}/tools # removes duplicates rm -f %{buildroot}%{_datadir}/%{name}/tools/apctools.zip rm -f %{buildroot}%{_datadir}/%{name}/tools/pcb2ncap.tgz chmod 755 %{buildroot}%{_datadir}/%{name}/tools/{PCB2HPGL,tgo2pcb.tcl,Merge*} cp -p AUTHORS COPYING README NEWS ChangeLog README_FILES/CHANGES \ README_FILES/Whats_new_in_2.0 README_FILES/Tools \ %{buildroot}%{_pkgdocdir} rm -rf %{buildroot}%{_datadir}/info/dir mv %{buildroot}%{_pkgdocdir}/refcard.pdf %{buildroot}%{_pkgdocdir}/pcb-reference-card.pdf # remove duplicates rm -f %{buildroot}%{_bindir}/Merge* # needlessly installs gts static library & header file rm -f %{buildroot}%{_libdir}/libgts.a %{buildroot}%{_includedir}/gts.h # locale's %find_lang %{name} %files doc %{_infodir}/%{name}* %doc %{_pkgdocdir}/pcb-reference-card.pdf %doc %{_pkgdocdir}/pcb.pdf %doc %{_pkgdocdir}/*.html %doc %{_pkgdocdir}/examples/* %doc %{_pkgdocdir}/gcode* %files -f %{name}.lang %exclude %{_pkgdocdir}/pcb-reference-card.pdf %exclude %{_pkgdocdir}/pcb.pdf %exclude %{_pkgdocdir}/*.html %exclude %{_pkgdocdir}/examples/* %exclude %{_pkgdocdir}/gcode* %doc %{_pkgdocdir}/ %{_datadir}/metainfo/%{name}.appdata.xml %{_datadir}/applications/%{name}.desktop %{_bindir}/%{name} %{_datadir}/%{name}/ %{_mandir}/man1/%{name}* %{_datadir}/icons/hicolor/*/mimetypes/application-x-* %{_datadir}/icons/hicolor/*/apps/%{name}.* %{_datadir}/mime/packages/pcb.xml %{_datadir}/gEDA/scheme/gnet-pcbfwd.scm %changelog * Mon Jan 31 2022 Balint Cristian - github update releases