From 72d7e19f54c0d705d5b4793a776039f666fe0784 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 19 Jan 2025 22:12:53 +0900 Subject: [PATCH 1/7] Fix for C23, include header properly --- xcircuit-3.10.30-c23-math-include.patch | 24 ++++++++++++++++++++++++ xcircuit.spec | 19 +++++++++++-------- 2 files changed, 35 insertions(+), 8 deletions(-) create mode 100644 xcircuit-3.10.30-c23-math-include.patch diff --git a/xcircuit-3.10.30-c23-math-include.patch b/xcircuit-3.10.30-c23-math-include.patch new file mode 100644 index 0000000..9750bd2 --- /dev/null +++ b/xcircuit-3.10.30-c23-math-include.patch @@ -0,0 +1,24 @@ +diff --git a/elements.c b/elements.c +index c7705f4..ac599f8 100644 +--- a/elements.c ++++ b/elements.c +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + + #ifndef XC_WIN32 + #include +@@ -54,8 +55,6 @@ extern colorindex *colorlist; + extern Pixmap dbuf; + #endif + +-extern double atan2(); +- + /*------------------------------------------------------------------------*/ + /* Declarations of global variables */ + /*------------------------------------------------------------------------*/ +diff --git a/examples/xc_remote.sh b/examples/xc_remote.sh +old mode 100755 +new mode 100644 diff --git a/xcircuit.spec b/xcircuit.spec index 1451bbe..dd74f77 100644 --- a/xcircuit.spec +++ b/xcircuit.spec @@ -5,7 +5,7 @@ Name: xcircuit Version: %{short_version}.30 -Release: 12%{?dist} +Release: 13%{?dist} Summary: Electronic circuit schematic drawing program # Xw/ HPND unused @@ -26,6 +26,8 @@ Source2: %{name}.png Patch0: xcircuit-3.9.40-format-security.patch Patch1: xcircuit-c99.patch +# C23 fix, include math.h instead of declare atan2 internally +Patch2: xcircuit-3.10.30-c23-math-include.patch BuildRequires: make BuildRequires: pkgconfig(cairo) @@ -57,8 +59,9 @@ CAD program for circuit schematic drawing and schematic capture. %prep %setup -q -%patch -P0 -p1 -%patch -P1 -p1 +%patch -P0 -p1 -b .format +%patch -P1 -p1 -b .c99 +%patch -P2 -p1 -b .c23 #439604: TCL 8.5.1 sed -i lib/tcl/tkcon.tcl \ @@ -80,13 +83,10 @@ export WISH=/usr/bin/wish --with-tcl=%{_libdir} \ --with-tk=%{_libdir} \ %{nil} -make %{?_smp_mflags} +%make_build %install -make \ - INSTALL="install -p" \ - DESTDIR=%{buildroot} \ - install +%make_install make install-man mandir="%{buildroot}%{_mandir}" rm -rf examples/win32 @@ -121,6 +121,9 @@ desktop-file-install \ %{_mandir}/man1/%{name}.1.* %changelog +* Sun Jan 19 2025 Mamoru TASAKA - 3.10.30-13 +- Fix for C23, include header properly + * Sat Jul 20 2024 Fedora Release Engineering - 3.10.30-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From a293d4d21e23d17c5d1b211e6564b8656b7d921d Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Fri, 31 Jan 2025 10:50:36 +0900 Subject: [PATCH 2/7] Use tk8 explicitly --- xcircuit.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/xcircuit.spec b/xcircuit.spec index dd74f77..bdc23a4 100644 --- a/xcircuit.spec +++ b/xcircuit.spec @@ -5,7 +5,7 @@ Name: xcircuit Version: %{short_version}.30 -Release: 13%{?dist} +Release: 14%{?dist} Summary: Electronic circuit schematic drawing program # Xw/ HPND unused @@ -35,8 +35,8 @@ BuildRequires: pkgconfig(fontconfig) BuildRequires: libgs-devel BuildRequires: libXpm-devel BuildRequires: libXt-devel -BuildRequires: tcl-devel -BuildRequires: tk-devel +BuildRequires: pkgconfig(tcl) <= 8.999 +BuildRequires: pkgconfig(tk) <= 8.999 BuildRequires: zlib-devel BuildRequires: desktop-file-utils BuildRequires: ngspice @@ -121,6 +121,9 @@ desktop-file-install \ %{_mandir}/man1/%{name}.1.* %changelog +* Fri Jan 31 2025 Mamoru TASAKA - 3.10.30-14 +- Use tk8 explicitly + * Sun Jan 19 2025 Mamoru TASAKA - 3.10.30-13 - Fix for C23, include header properly From 5eba1480dab5b965f2e160e0590a287164bc4b5d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 20:40:52 +0000 Subject: [PATCH 3/7] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- xcircuit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xcircuit.spec b/xcircuit.spec index bdc23a4..fc82bde 100644 --- a/xcircuit.spec +++ b/xcircuit.spec @@ -5,7 +5,7 @@ Name: xcircuit Version: %{short_version}.30 -Release: 14%{?dist} +Release: 15%{?dist} Summary: Electronic circuit schematic drawing program # Xw/ HPND unused @@ -121,6 +121,9 @@ desktop-file-install \ %{_mandir}/man1/%{name}.1.* %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 3.10.30-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Fri Jan 31 2025 Mamoru TASAKA - 3.10.30-14 - Use tk8 explicitly From 2232d445f36cbcc81d644c221b784c2f2a3a59ba Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 17 Jan 2026 20:30:33 +0000 Subject: [PATCH 4/7] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild --- xcircuit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xcircuit.spec b/xcircuit.spec index fc82bde..3c28545 100644 --- a/xcircuit.spec +++ b/xcircuit.spec @@ -5,7 +5,7 @@ Name: xcircuit Version: %{short_version}.30 -Release: 15%{?dist} +Release: 16%{?dist} Summary: Electronic circuit schematic drawing program # Xw/ HPND unused @@ -121,6 +121,9 @@ desktop-file-install \ %{_mandir}/man1/%{name}.1.* %changelog +* Sat Jan 17 2026 Fedora Release Engineering - 3.10.30-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + * Fri Jul 25 2025 Fedora Release Engineering - 3.10.30-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 07ddb65e0c7aeab31cf29671a1e1c91cc2fb8ccb Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jul 2026 09:03:59 +0000 Subject: [PATCH 5/7] Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild --- xcircuit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xcircuit.spec b/xcircuit.spec index 3c28545..ea956eb 100644 --- a/xcircuit.spec +++ b/xcircuit.spec @@ -5,7 +5,7 @@ Name: xcircuit Version: %{short_version}.30 -Release: 16%{?dist} +Release: 17%{?dist} Summary: Electronic circuit schematic drawing program # Xw/ HPND unused @@ -121,6 +121,9 @@ desktop-file-install \ %{_mandir}/man1/%{name}.1.* %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 3.10.30-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + * Sat Jan 17 2026 Fedora Release Engineering - 3.10.30-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild From 7aa4fe09b819d68a02e1bc54f432ba9e6405270c Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 17 Aug 2026 15:21:08 +0900 Subject: [PATCH 6/7] refresh .gitignore --- .gitignore | 27 +-------------------------- 1 file changed, 1 insertion(+), 26 deletions(-) diff --git a/.gitignore b/.gitignore index a6a5190..c74ef8e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,26 +1 @@ -/xcircuit-3.7.57.tgz -/xcircuit-3.9.40.tgz -/xcircuit-3.9.48.tgz -/xcircuit-3.9.49.tgz -/xcircuit-3.9.50.tgz -/xcircuit-3.9.51.tgz -/xcircuit-3.9.54.tgz -/xcircuit-3.9.56.tgz -/xcircuit-3.9.57.tgz -/xcircuit-3.9.58.tgz -/xcircuit-3.9.59.tgz -/xcircuit-3.9.60.tgz -/xcircuit-3.9.61.tgz -/xcircuit-3.9.65.tgz -/xcircuit-3.9.66.tgz -/xcircuit-3.9.67.tgz -/xcircuit-3.9.68.tgz -/xcircuit-3.10.4.tgz -/xcircuit-3.10.8.tgz -/xcircuit-3.10.9.tgz -/xcircuit-3.10.10.tgz -/xcircuit-3.10.12.tgz -/xcircuit-3.10.24.tgz -/xcircuit-3.10.28.tgz -/xcircuit-3.10.29.tgz -/xcircuit-3.10.30.tgz +/xcircuit-*.tgz From 07cc95340070179ae7f20196e6e9a73132388cd9 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 17 Aug 2026 15:22:41 +0900 Subject: [PATCH 7/7] 3.10.45 --- sources | 2 +- xcircuit-3.10.30-c23-math-include.patch | 24 ---------- xcircuit-3.9.40-format-security.patch | 58 ------------------------- xcircuit-c99.patch | 19 -------- xcircuit.spec | 22 ++++------ 5 files changed, 9 insertions(+), 116 deletions(-) delete mode 100644 xcircuit-3.10.30-c23-math-include.patch delete mode 100644 xcircuit-3.9.40-format-security.patch delete mode 100644 xcircuit-c99.patch diff --git a/sources b/sources index 5c10eb1..e2eb38b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (xcircuit-3.10.30.tgz) = 52bf65fa9b5c095092f60abe32b3c88180365cc8043a8e95652ea9ab20e01c3e790989fe41171ecd1b2c60684016f6963c4851105b17a1c8a3bac8d75db84a8e +SHA512 (xcircuit-3.10.45.tgz) = c08eeba7d1a22c009cca33f68723cc24c5565f00f34ca29f043481b32cae2327a8bb1fd6cfb82bfdaf6c18973d3bbb6ada3668d74c48879166fe2a11da4bfa96 diff --git a/xcircuit-3.10.30-c23-math-include.patch b/xcircuit-3.10.30-c23-math-include.patch deleted file mode 100644 index 9750bd2..0000000 --- a/xcircuit-3.10.30-c23-math-include.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/elements.c b/elements.c -index c7705f4..ac599f8 100644 ---- a/elements.c -+++ b/elements.c -@@ -10,6 +10,7 @@ - #include - #include - #include -+#include - - #ifndef XC_WIN32 - #include -@@ -54,8 +55,6 @@ extern colorindex *colorlist; - extern Pixmap dbuf; - #endif - --extern double atan2(); -- - /*------------------------------------------------------------------------*/ - /* Declarations of global variables */ - /*------------------------------------------------------------------------*/ -diff --git a/examples/xc_remote.sh b/examples/xc_remote.sh -old mode 100755 -new mode 100644 diff --git a/xcircuit-3.9.40-format-security.patch b/xcircuit-3.9.40-format-security.patch deleted file mode 100644 index 1a7b48d..0000000 --- a/xcircuit-3.9.40-format-security.patch +++ /dev/null @@ -1,58 +0,0 @@ -diff -urp -x Makefile -x 'config.*' -x '*~' xcircuit-3.9.40.old/svg.c xcircuit-3.9.40.new/svg.c ---- xcircuit-3.9.40.old/svg.c 2015-10-07 00:04:49.000000000 +0900 -+++ xcircuit-3.9.40.new/svg.c 2016-06-25 00:13:28.468986578 +0900 -@@ -1108,12 +1108,12 @@ int xctcl_svg(ClientData clientData, Tcl - - if (locobjc >= 2) { - /* If there is a non-option argument, use it for the output filename */ -- sprintf(filename, Tcl_GetString(objv[1])); -+ sprintf(filename, "%s", Tcl_GetString(objv[1])); - } - else if (xobjs.pagelist[areawin->page]->pageinst->thisobject->name == NULL) -- sprintf(filename, xobjs.pagelist[areawin->page]->filename); -+ sprintf(filename, "%s", xobjs.pagelist[areawin->page]->filename); - else -- sprintf(filename, xobjs.pagelist[areawin->page]->pageinst->thisobject->name); -+ sprintf(filename, "%s", xobjs.pagelist[areawin->page]->pageinst->thisobject->name); - - pptr = strrchr(filename, '.'); - if (pptr != NULL) -diff -urp -x Makefile -x 'config.*' -x '*~' xcircuit-3.9.40.old/tclxcircuit.c xcircuit-3.9.40.new/tclxcircuit.c ---- xcircuit-3.9.40.old/tclxcircuit.c 2015-11-14 02:27:30.000000000 +0900 -+++ xcircuit-3.9.40.new/tclxcircuit.c 2016-06-25 00:15:07.012510579 +0900 -@@ -3876,7 +3876,7 @@ int xctcl_object(ClientData clientData, - case NameIdx: - if (nidx == 1 || areawin->selects == 0) { - if (objc == 3) { -- sprintf(thisinst->thisobject->name, Tcl_GetString(objv[nidx + 2])); -+ sprintf(thisinst->thisobject->name, "%s", Tcl_GetString(objv[nidx + 2])); - checkname(thisinst->thisobject); - } - Tcl_AppendElement(interp, thisinst->thisobject->name); -@@ -7294,7 +7294,7 @@ int xctcl_page(ClientData clientData, Tc - - case LoadIdx: - TechReplaceSave(); -- sprintf(_STR2, Tcl_GetString(objv[2 + nidx])); -+ sprintf(_STR2, "%s", Tcl_GetString(objv[2 + nidx])); - for (i = 3 + nidx; i < objc; i++) { - argv = Tcl_GetString(objv[i]); - if ((*argv == '-') && !strncmp(argv, "-repl", 5)) { -@@ -7380,7 +7380,7 @@ int xctcl_page(ClientData clientData, Tc - - switch (importtype) { - case XCircuitIdx: -- sprintf(_STR2, Tcl_GetString(objv[3 + nidx])); -+ sprintf(_STR2, "%s", Tcl_GetString(objv[3 + nidx])); - for (i = 4; i < objc; i++) { - strcat(_STR2, ","); - strcat(_STR2, Tcl_GetString(objv[i + nidx])); -@@ -7397,7 +7397,7 @@ int xctcl_page(ClientData clientData, Tc - Tcl_SetObjResult(interp, objPtr); - return XcTagCallback(interp, objc, objv); - } -- sprintf(_STR2, Tcl_GetString(objv[3 + nidx])); -+ sprintf(_STR2, "%s", Tcl_GetString(objv[3 + nidx])); - if (savepage != pageno) newpage(pageno); - loadbackground(); - if (savepage != pageno) newpage(savepage); diff --git a/xcircuit-c99.patch b/xcircuit-c99.patch deleted file mode 100644 index 8a4b6c3..0000000 --- a/xcircuit-c99.patch +++ /dev/null @@ -1,19 +0,0 @@ -Declare UDrawXAt in prototypes.h. This avoids an implicit function -declaration in functions.c for HAVE_CAIRO. Future compilers will not -accept such implicit function declarations by default, leading to a -build failure. - -Submitted upstream: - -diff --git a/prototypes.h b/prototypes.h -index d577c854c48eddf1..5ec4b272722fd658 100644 ---- a/prototypes.h -+++ b/prototypes.h -@@ -431,6 +431,7 @@ extern void UDrawSimpleLine(XPoint *, XPoint *); - extern void UDrawLine(XPoint *, XPoint *); - extern void UDrawCircle(XPoint *, u_char); - extern void UDrawX(labelptr); -+extern void UDrawXAt(XPoint *); - extern void UDrawXDown(labelptr); - extern int toplevelwidth(objinstptr, short *); - extern int toplevelheight(objinstptr, short *); diff --git a/xcircuit.spec b/xcircuit.spec index ea956eb..eaf7417 100644 --- a/xcircuit.spec +++ b/xcircuit.spec @@ -4,8 +4,8 @@ %undefine __brp_mangle_shebangs Name: xcircuit -Version: %{short_version}.30 -Release: 17%{?dist} +Version: %{short_version}.45 +Release: 1%{?dist} Summary: Electronic circuit schematic drawing program # Xw/ HPND unused @@ -24,11 +24,6 @@ Source1: %{name}.desktop # http://opencircuitdesign.com/xcircuit/archive/xcircuit.xpm as 64x64 Source2: %{name}.png -Patch0: xcircuit-3.9.40-format-security.patch -Patch1: xcircuit-c99.patch -# C23 fix, include math.h instead of declare atan2 internally -Patch2: xcircuit-3.10.30-c23-math-include.patch - BuildRequires: make BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(fontconfig) @@ -48,7 +43,7 @@ BuildRequires: libtool # Need check Requires: coreutils Requires: gtk2 -Requires: tk +Requires: tk8 # Special FEL Gnome/KDE menu structure Requires: electronics-menu @@ -59,13 +54,8 @@ CAD program for circuit schematic drawing and schematic capture. %prep %setup -q -%patch -P0 -p1 -b .format -%patch -P1 -p1 -b .c99 -%patch -P2 -p1 -b .c23 #439604: TCL 8.5.1 -sed -i lib/tcl/tkcon.tcl \ - -e "s|package require -exact|package require|" sed -i Makefile.am \ -e 's|/lib/|/%{_lib}/|' @@ -76,7 +66,7 @@ sed -i examples/xc_remote.sh -e 's|/usr/local/bin|%{_bindir}|' chmod ugo-x lib/tcl/console.tcl %build -export WISH=/usr/bin/wish +export WISH=/usr/bin/wish8 #01/08/09 Without --enable-asg \ because it's broken %configure \ @@ -121,6 +111,10 @@ desktop-file-install \ %{_mandir}/man1/%{name}.1.* %changelog +* Mon Aug 17 2026 Mamoru TASAKA - 3.10.45-1 +- 3.10.45 +- Still use Tcl/Tk 8: Not ready for Tk 9 + * Fri Jul 17 2026 Fedora Release Engineering - 3.10.30-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild