diff --git a/.gitignore b/.gitignore index cecaecc..e759cf3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,24 +1 @@ -suite3270-3.3.10ga4-src.tgz -/suite3270-3.3.12ga7-src.tgz -/suite3270-3.3.12ga11-src.tgz -/suite3270-3.3.12ga12-src.tgz -/suite3270-3.3.12ga13-src.tgz -/suite3270-3.3.13ga6-src.tgz -/suite3270-3.3.13ga7-src.tgz -/suite3270-3.3.14ga7-src.tgz -/suite3270-3.3.14ga9-src.tgz -/suite3270-3.3.14ga11-src.tgz -/suite3270-3.3.15ga4-src.tgz -/suite3270-3.3.15ga5-src.tgz -/suite3270-3.3.15ga6-src.tgz -/suite3270-3.3.15ga7-src.tgz -/suite3270-3.3.15ga8-src.tgz -/suite3270-3.3.15ga9-src.tgz -/suite3270-3.5ga8-src.tgz -/suite3270-3.5ga9-src.tgz -/suite3270-3.5ga10-src.tgz -/suite3270-3.5ga11-src.tgz -/suite3270-3.6ga4-src.tgz -/suite3270-3.6ga5-src.tgz -/suite3270-3.6ga6-src.tgz -/suite3270-3.6ga8-src.tgz +/suite3270-*-src.tgz diff --git a/c23.patch b/c23.patch new file mode 100644 index 0000000..3ccd25e --- /dev/null +++ b/c23.patch @@ -0,0 +1,21 @@ +diff -up suite3270-4.5/x3270/CmeP.h.c23 suite3270-4.5/x3270/CmeP.h +--- suite3270-4.5/x3270/CmeP.h.c23 2026-02-23 17:11:47.532461550 +0100 ++++ suite3270-4.5/x3270/CmeP.h 2026-02-23 17:12:44.818297155 +0100 +@@ -120,16 +120,7 @@ typedef struct _CmeRec { + * + ************************************************************/ + +-#if defined(__clang__) /*[*/ +-# pragma clang diagnostic push +-# pragma clang diagnostic ignored "-Wstrict-prototypes" +-#endif /*]*/ +-typedef void (*_XawEntryVoidFunc)(); +-#if defined(__clang__) /*[*/ +-# pragma clang diagnostic pop +-#endif /*]*/ +- +-#define XtInheritHighlight ((_XawEntryVoidFunc) _XtInherit) ++#define XtInheritHighlight (void (*)(struct _WidgetRec *)) _XtInherit + #define XtInheritUnhighlight XtInheritHighlight + #define XtInheritNotify XtInheritHighlight + diff --git a/mkversion.patch b/mkversion.patch new file mode 100644 index 0000000..7da52f2 --- /dev/null +++ b/mkversion.patch @@ -0,0 +1,12 @@ +diff -up suite3270-4.5/Common/mkversion.py.orig suite3270-4.5/Common/mkversion.py +--- suite3270-4.5/Common/mkversion.py.orig 2026-02-23 17:23:54.155112220 +0100 ++++ suite3270-4.5/Common/mkversion.py 2026-02-23 17:24:19.943983520 +0100 +@@ -111,7 +111,7 @@ def mkversion(outfile_name: str, program + + # Get the date. + if 'SOURCE_DATE_EPOCH' in os.environ: +- now = datetime.fromtimestamp(int(os.environ['SOURCE_DATE_EPOCH'])).replace(tzinfo=timezone.utc) ++ now = datetime.utcfromtimestamp(int(os.environ['SOURCE_DATE_EPOCH'])) + else: + now = datetime.now(timezone.utc) + builddate = datetime.strftime(now, '%a %b %d %H:%M:%S %Z %Y') diff --git a/sources b/sources index 1d9ae86..0a961b7 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (suite3270-3.6ga8-src.tgz) = 88a00bec19ae7be92e5bc0edd6ae1e27bef7fbbf8c3f419efda3ba2b3a0cb5e72693916cd44d50166d5745ce0f9d8497641481cedbb0bb3149567b6f51b1a987 +SHA512 (suite3270-4.5ga5-src.tgz) = 4d80f4d31b88a5d99862b6a2c0fbb6c4f45ea55d393d306cd0cb7e989a85759da7df5afcda1ba24e6608ab9a61a5385d8d63786b5e83c6ba192d1b682546d02e diff --git a/x3270-3.5-ibmhostpath.patch b/x3270-3.5-ibmhostpath.patch deleted file mode 100644 index 00f2878..0000000 --- a/x3270-3.5-ibmhostpath.patch +++ /dev/null @@ -1,66 +0,0 @@ -diff -up suite3270-3.5/c3270/c3270.man.ibmhosts suite3270-3.5/c3270/c3270.man ---- suite3270-3.5/c3270/c3270.man.ibmhosts 2016-05-16 10:54:55.000000000 +0200 -+++ suite3270-3.5/c3270/c3270.man 2016-05-16 10:55:03.000000000 +0200 -@@ -3403,7 +3403,7 @@ backslash character. - If more than one \fB\-xrm\fP option is given for the same resource, - the last one on the command line is used. - .SH "FILES" --/usr/local/lib/x3270/ibm_hosts -+/etc/ibm_hosts - .br - $HOME/.c3270pro - -diff -up suite3270-3.5/c3270/ibm_hosts.man.ibmhosts suite3270-3.5/c3270/ibm_hosts.man ---- suite3270-3.5/c3270/ibm_hosts.man.ibmhosts 2016-05-16 10:53:16.000000000 +0200 -+++ suite3270-3.5/c3270/ibm_hosts.man 2016-05-16 10:53:38.000000000 +0200 -@@ -3,7 +3,7 @@ - .SH "NAME" - ibm_hosts \- host database for x3270 and c3270 - .SH "SYNOPSIS" --/usr/lib/X11/x3270/ibm_hosts -+/etc/ibm_hosts - .SH "DESCRIPTION" - The \fBibm_hosts\fP - file contains information regarding IBM hosts on the network. -@@ -82,7 +82,7 @@ The name \fBvm\fP will cause the 3270 em - enter the string `3' on the second data-entry field on the screen, and - send the Enter \s-1AID\s+1 sequence. - .SH "FILES" --/usr/lib/X11/x3270/ibm_hosts -+/etc/ibm_hosts - .SH "SEE ALSO" - x3270(1), - c3270(1) -diff -up suite3270-3.5/x3270/ibm_hosts.man.ibmhosts suite3270-3.5/x3270/ibm_hosts.man ---- suite3270-3.5/x3270/ibm_hosts.man.ibmhosts 2016-05-16 10:54:26.000000000 +0200 -+++ suite3270-3.5/x3270/ibm_hosts.man 2016-05-16 10:54:40.000000000 +0200 -@@ -3,7 +3,7 @@ - .SH "NAME" - ibm_hosts \- host database for x3270 and c3270 - .SH "SYNOPSIS" --/usr/lib/X11/x3270/ibm_hosts -+/etc/ibm_hosts - .SH "DESCRIPTION" - The \fBibm_hosts\fP - file contains information regarding IBM hosts on the network. -@@ -82,7 +82,7 @@ The name \fBvm\fP will cause the 3270 em - enter the string `3' on the second data-entry field on the screen, and - send the Enter \s-1AID\s+1 sequence. - .SH "FILES" --/usr/lib/X11/x3270/ibm_hosts -+/etc/ibm_hosts - .SH "SEE ALSO" - x3270(1), - c3270(1) -diff -up suite3270-3.5/x3270/x3270.man.ibmhosts suite3270-3.5/x3270/x3270.man ---- suite3270-3.5/x3270/x3270.man.ibmhosts 2016-05-16 10:53:50.000000000 +0200 -+++ suite3270-3.5/x3270/x3270.man 2016-05-16 10:54:00.000000000 +0200 -@@ -5275,7 +5275,7 @@ T} - The special types \fBsocks4a\fP and \fBsocks5d\fP can also be used to force - the proxy server to do the hostname resolution for the SOCKS protocol. - .SH "FILES" --/usr/lib/X11/x3270/ibm_hosts -+/etc/ibm_hosts - .br - $HOME/.x3270pro - diff --git a/x3270.spec b/x3270.spec index 52aeddb..d8ee587 100644 --- a/x3270.spec +++ b/x3270.spec @@ -1,30 +1,34 @@ %global catalogue /etc/X11/fontpath.d -%global majorver 3.6 +%global majorver 4.5 Summary: An X Window System based IBM 3278/3279 terminal emulator Name: x3270 -Version: 3.6ga8 -Release: 2%{?dist} -License: BSD -URL: http://x3270.sourceforge.net/ +Version: 4.5ga5 +Release: 3%{?dist} +License: BSD-3-Clause AND HPND-sell-variant AND MIT AND Apache-2.0 +URL: https://x3270.miraheze.org/wiki/Main_Page Source0: http://downloads.sourceforge.net/%{name}/suite3270-%{version}-src.tgz Source1: x3270.png Source2: x3270.desktop Patch0: x3270-3.5-paths.patch -Patch1: x3270-3.5-ibmhostpath.patch +# workaround C23 related issues +Patch1: c23.patch +Patch2: mkversion.patch +BuildRequires: make BuildRequires: ncurses-devel BuildRequires: readline-devel BuildRequires: openssl-devel BuildRequires: libtool BuildRequires: desktop-file-utils -BuildRequires: fontpackages-devel +BuildRequires: fonts-rpm-macros %package x11 Summary: IBM 3278/3279 terminal emulator for the X Window System -BuildRequires: xorg-x11-font-utils +BuildRequires: mkfontdir bdftopcf BuildRequires: libXaw-devel Requires: %{name} = %{version} +Requires: xrdb %package text Summary: IBM 3278/3279 terminal emulator for text mode @@ -57,24 +61,13 @@ Install the %{name}-text package if you need to access IBM hosts using an IBM %prep -%setup -q -n suite3270-%{majorver} -%patch0 -p1 -b .paths -%patch1 -p1 -b .ibmhosts - -for d in c3270 pr3287 s3270 x3270; do - for f in LICENSE README html; do - mv $d/$f $f.$d - done -done +%autosetup -p1 -n suite3270-%{majorver} %build -%configure --enable-x3270 --enable-c3270 --enable-s3270 --enable-pr3287 +%configure --enable-x3270 --enable-c3270 --enable-s3270 --enable-pr3287 --disable-tcl3270 --disable-b3270 --enable-playback make %{?_smp_mflags} CCOPTIONS="$RPM_OPT_FLAGS" LIBX3270DIR=%{_sysconfdir} -# build playback tool -( cd Playback; make CFLAGS="$RPM_OPT_FLAGS $RPM_LD_FLAGS" ) - %install make install DESTDIR=$RPM_BUILD_ROOT CIFONTDIR=%{_fontdir} LIBX3270DIR=%{_sysconfdir} @@ -83,8 +76,8 @@ make install.man DESTDIR=$RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{catalogue} ln -sf %{_fontdir} $RPM_BUILD_ROOT%{catalogue}/x3270 -install -p -m755 Playback/playback $RPM_BUILD_ROOT%{_bindir} -install -p -m644 Playback/playback.man $RPM_BUILD_ROOT%{_mandir}/man1/playback.1 +install -p -m755 "$(find ./obj -type f -name playback -print -quit)" $RPM_BUILD_ROOT%{_bindir} +install -p -m644 playback/playback.man $RPM_BUILD_ROOT%{_mandir}/man1/playback.1 mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps install -p -m644 %{SOURCE1} ${RPM_BUILD_ROOT}%{_datadir}/icons/hicolor/48x48/apps @@ -96,23 +89,22 @@ desktop-file-install \ %files -%doc LICENSE.s3270 README.s3270 html.s3270 -%doc LICENSE.pr3287 README.pr3287 html.pr3287 +%doc README.md %{_bindir}/s3270 %{_bindir}/pr3287 +%{_bindir}/prtodir %{_bindir}/x3270if %{_bindir}/playback %{_mandir}/man1/s3270.1* %{_mandir}/man1/pr3287.1* %{_mandir}/man1/x3270if.1* -%{_mandir}/man1/x3270-script.1* %{_mandir}/man1/playback.1* %{_mandir}/man5/ibm_hosts.5* %config(noreplace) %{_sysconfdir}/ibm_hosts %files x11 -%doc LICENSE.x3270 README.x3270 html.x3270 %{_bindir}/x3270 +%{_bindir}/x3270a %{_fontdir}/ %{catalogue}/x3270 %{_mandir}/man1/x3270.1* @@ -120,12 +112,167 @@ desktop-file-install \ %{_datadir}/applications/x3270.desktop %files text -%doc LICENSE.c3270 README.c3270 html.c3270 %{_bindir}/c3270 %{_mandir}/man1/c3270.1* %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 4.5ga5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Sat Jun 13 2026 Yaakov Selkowitz - 4.5ga5-2 +- Rebuilt for openssl 4.0 + +* Mon Feb 23 2026 Dan Horák - 4.5ga5-1 +- updated to 4.5ga5(rhbz#2368663) + +* Sat Jan 17 2026 Fedora Release Engineering - 4.4ga6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Sun Nov 16 2025 Yaakov Selkowitz - 4.4ga6-3 +- Add xrdb dependency + +* Fri Jul 25 2025 Fedora Release Engineering - 4.4ga6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Wed May 7 2025 Jakub Čajka 4.4ga6-1 +- updated to 4.4ga6(rhbz#2362329) + +* Fri Mar 28 2025 Jakub Čajka 4.4ga5-1 +- updated to 4.4ga5(rhbz#2344000) + +* Mon Jan 27 2025 Jakub Čajka 4.4alpha1-1 +- updated to 4.4alpha1(rhbz#2332509) +- workaround C23 related issues(rhbz#2341559) + +* Sun Jan 19 2025 Fedora Release Engineering - 4.3ga8-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Sat Jul 20 2024 Fedora Release Engineering - 4.3ga8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Mon Apr 08 2024 Jakub Čajka 4.3ga8-1 +- updated to 4.3ga8(rhbz#2272416) + +* Mon Mar 25 2024 Jakub Čajka 4.3ga7-1 +- updated to 4.3ga7(rhbz#2270739) + +* Tue Mar 05 2024 Jakub Čajka 4.3ga6-1 +- updated to 4.3ga6(#2267465) + +* Mon Feb 19 2024 Jakub Čajka 4.3ga5-1 +- updated to 4.3ga5(#2264784) + +* Sat Jan 27 2024 Fedora Release Engineering - 4.3ga4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Oct 16 2023 Jakub Čajka 4.3ga4-1 +- updated to 4.3ga4(#2244223) + +* Fri Sep 08 2023 Jakub Čajka 4.3ga3-1 +- updated to 4.3ga3(#2237932) + +* Tue Aug 01 2023 Jakub Čajka 4.3beta1-1 +- updated to 4.3beta2(#2227482) +- converted to the SPDX + +* Sat Jul 22 2023 Fedora Release Engineering - 4.3beta1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue May 30 2023 Jakub Čajka 4.3beta1-1 +- updated to 4.3beta1(#2210893) + +* Thu Mar 09 2023 Jakub Čajka 4.2ga9-1 +- updated to 4.2ga9 (#2175581) + +* Thu Feb 09 2023 Jakub Čajka 4.2ga8-1 +- updated to 4.2ga8 (#2165415) + +* Sat Jan 21 2023 Fedora Release Engineering - 4.2ga7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Thu Jan 05 2023 Jakub Čajka 4.2ga7-1 +- updated to 4.2ga7 (#2156835) + +* Fri Sep 30 2022 Jakub Čajka 4.2ga6-1 +- updated to 4.2ga6 (#2130398) + +* Tue Sep 06 2022 Jakub Čajka 4.2ga5-1 +- updated to 4.2ga5 (#2124138) + +* Sat Jul 23 2022 Fedora Release Engineering - 4.1ga13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Mon May 02 2022 Jakub Čajka 4.1ga13-1 +- updated to 4.1ga13 (#2068796) + +* Thu Feb 24 2022 Jakub Čajka 4.1ga12-1 +- updated to 4.1ga12 (#2057250) + +* Sat Jan 22 2022 Fedora Release Engineering - 4.1ga11-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Mon Jan 03 2022 Jakub Čajka 4.1ga11-1 +- updated to 4.1ga11 (#2034061) + +* Mon Nov 01 2021 Dan Horák - 4.1ga10-1 +- updated to 4.1ga10 (#2018771) + +* Tue Sep 14 2021 Sahana Prasad - 4.0ga14-4 +- Rebuilt with OpenSSL 3.0.0 + +* Fri Jul 23 2021 Fedora Release Engineering - 4.0ga14-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Mon Mar 01 2021 Dan Horák - 4.0ga14-2 +- update BRs (#1933647) + +* Mon Feb 01 2021 Dan Horák - 4.0ga14-1 +- updated to 4.0ga14 (#1922848) + +* Wed Jan 27 2021 Fedora Release Engineering - 4.0ga13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jan 04 2021 Dan Horák - 4.0ga13-1 +- updated to 4.0ga13 (#1911117) + +* Mon Sep 28 2020 Dan Horák - 4.0ga12-1 +- updated to 4.0ga12 (#1882956) + +* Tue Aug 18 2020 Dan Horák - 4.0ga11-1 +- updated to 4.0ga11 (#1869461) + +* Wed Jul 29 2020 Fedora Release Engineering - 4.0ga10-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jul 27 2020 Dan Horák - 4.0ga10-1 +- updated to 4.0ga10 (#1860639) + +* Fri May 29 2020 Dan Horák - 4.0ga9-1 +- updated to 4.0ga9 (#1840492) + +* Sat Apr 11 2020 Dan Horák - 3.6ga12-1 +- updated to 3.6ga12 (#1823121) + +* Tue Mar 17 2020 Dan Horák - 3.6ga11-1 +- updated to 3.6ga11 (#1814079) + +* Mon Feb 24 2020 Dan Horák - 3.6ga10-1 +- updated to 3.6ga10 (#1806341) + +* Fri Feb 21 2020 Dan Horák - 3.6ga9-1 +- updated to 3.6ga9 (#1803972) + +* Wed Feb 05 2020 Than Ngo - 3.6ga8-5 +- fixed FTBFS against gcc10 + +* Fri Jan 31 2020 Fedora Release Engineering - 3.6ga8-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Jan 17 2020 Jeff Law - 3.6ga8-3 +- Fix symbol with multiple incompatible definitions which triggers + an error with LTO + * Sat Jul 27 2019 Fedora Release Engineering - 3.6ga8-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild