Compare commits

..

No commits in common. "rawhide" and "f37" have entirely different histories.

13 changed files with 27 additions and 344 deletions

View file

@ -1 +0,0 @@
1

View file

@ -1,13 +0,0 @@
バイナリーファイル paps-0.6.8.orig/src/paps-paps.o とpaps-0.6.8/src/paps-paps.o は異なります
diff -pruN paps-0.6.8.orig/src/paps.c paps-0.6.8/src/paps.c
--- paps-0.6.8.orig/src/paps.c 2025-01-27 18:18:12.130570673 +0900
+++ paps-0.6.8/src/paps.c 2025-01-27 18:47:05.214883811 +0900
@@ -515,7 +515,7 @@ int main(int argc, char *argv[])
} /* if (!cups_mode) */
paps = paps_new();
- pango_context = paps_get_pango_context (paps);
+ pango_context = paps_get_pango_context ();
/* Setup pango */
pango_context_set_language (pango_context, get_language ());

View file

@ -1,12 +0,0 @@
diff -pruN paps-0.6.8.orig/src/paps.c paps-0.6.8/src/paps.c
--- paps-0.6.8.orig/src/paps.c 2024-09-13 21:07:13.225683344 +0900
+++ paps-0.6.8/src/paps.c 2024-09-13 21:10:24.177041518 +0900
@@ -784,7 +784,7 @@ split_text_into_paragraphs (PangoContext
while (p != NULL && *p)
{
wc = g_utf8_get_char (p);
- next = g_utf8_next_char (p);
+ next = (char *) g_utf8_next_char (p);
if (wc == (gunichar)-1)
{
fprintf (stderr, "%s: Invalid character in input\n", g_get_prgname ());

View file

@ -1,44 +0,0 @@
Use AC_USE_SYSTEM_EXTENSIONS and include <config.h>, so that <wchar.h>
makes a declaration of wcwidth available. Include <glib/gprintf.h>
for a declaration of g_vasprintf. This avoids implicit function
declarations and build failures with future compilers.
No need to upstream this because it only impacts the bundled 0.6.8
sources, the later 0.8.0 version has already been fixed upstream. The
g_vasprintf call was introduced in the paps-0.6.6-lcnumeric.patch
downstream patch.
diff -ur paps-0.8.0.orig/paps-0.6.8/configure.in paps-0.8.0/paps-0.6.8/configure.in
--- paps-0.8.0.orig/paps-0.6.8/configure.in 2023-04-13 11:56:29.571277839 +0200
+++ paps-0.8.0/paps-0.6.8/configure.in 2023-04-13 12:00:03.228135149 +0200
@@ -6,6 +6,7 @@
AC_LANG_C
AC_PROG_CC
AM_PROG_LIBTOOL
+AC_USE_SYSTEM_EXTENSIONS
dnl ======================================================
dnl check for CUPS
diff -ur paps-0.8.0.orig/paps-0.6.8/src/paps.c paps-0.8.0/paps-0.6.8/src/paps.c
--- paps-0.8.0.orig/paps-0.6.8/src/paps.c 2023-04-13 11:56:29.583277719 +0200
+++ paps-0.8.0/paps-0.6.8/src/paps.c 2023-04-13 12:02:28.958673663 +0200
@@ -20,7 +20,7 @@
*
*/
-
+#include <config.h>
#include <pango/pango.h>
#include <pango/pangoft2.h>
#include "libpaps.h"
diff -ur paps-0.8.0.orig/paps-0.6.8/src/libpaps.c paps-0.8.0/paps-0.6.8/src/libpaps.c
--- paps-0.8.0.orig/paps-0.6.8/src/libpaps.c 2023-04-13 11:56:29.581277739 +0200
+++ paps-0.8.0/paps-0.6.8/src/libpaps.c 2023-04-13 12:07:17.504779917 +0200
@@ -23,6 +23,7 @@
#include "libpaps.h"
+#include <glib/gprintf.h>
#include <pango/pango.h>
#include <pango/pangoft2.h>
#include <ft2build.h>

View file

@ -1,85 +0,0 @@
From e2180b2e1493abc2a8d1165e10bf264d50fac0ae Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Wed, 1 Mar 2023 15:24:27 +0900
Subject: [PATCH] Fix the build issue
Some code ignores a return value of g_string_free() and that causes:
ignoring return value of 'gchar* g_string_free_and_steal(GString*)' declared with attribute 'warn_unused_result' [-Wunused-result]
This fixes it.
---
src/paps.cc | 21 ++++++++++++---------
1 file changed, 12 insertions(+), 9 deletions(-)
diff --git a/src/paps.cc b/src/paps.cc
index cb48ddc..429b764 100644
--- a/src/paps.cc
+++ b/src/paps.cc
@@ -368,6 +368,7 @@ copy_pango_parse_enum (GType type,
{
int i;
GString *s = g_string_new (nullptr);
+ gchar *gstr;
for (i = 0, v = g_enum_get_value (klass, i); v;
i++ , v = g_enum_get_value (klass, i))
@@ -382,10 +383,10 @@ copy_pango_parse_enum (GType type,
G_ENUM_CLASS_TYPE_NAME(klass),
s->str);
- if (possible_values)
- *possible_values = s->str;
+ gstr = g_string_free (s, possible_values ? false : true);
- g_string_free (s, possible_values ? false : true);
+ if (possible_values)
+ *possible_values = gstr;
}
}
@@ -1001,7 +1002,7 @@ read_file (FILE *file,
if (ferror (file))
{
fprintf(stderr, _("%s: Error reading file.\n"), g_get_prgname ());
- g_string_free (inbuf, true);
+ (void) g_string_free (inbuf, true);
exit(1);
}
else if (bp == nullptr)
@@ -1043,8 +1044,7 @@ read_file (FILE *file,
if (inbuf->len && inbuf->str[inbuf->len-1] != '\n')
g_string_append(inbuf, "\n");
- text = inbuf->str;
- g_string_free (inbuf, false);
+ text = g_string_free (inbuf, false);
if (encoding != nullptr && cvh != nullptr)
g_iconv_close(cvh);
@@ -1671,7 +1671,11 @@ get_date()
fprintf(stderr, _("%1$s: Error while converting date string from '%2$s' to UTF-8.\n"),
g_get_prgname(), get_encoding());
/* Return the unconverted string. */
- g_string_free(inbuf, false);
+ /*
+ * inbuf isn't used here, but a few memory is
+ * allocated by default. so it should be freed anyway.
+ */
+ (void) g_string_free(inbuf, true);
g_iconv_close(cvh);
return date;
}
@@ -1679,8 +1683,7 @@ get_date()
obuffer[BUFSIZE * 6 - 1 - oblen] = 0;
g_string_append(inbuf, bp);
- date_utf8 = inbuf->str;
- g_string_free(inbuf, false);
+ date_utf8 = g_string_free(inbuf, false);
g_iconv_close(cvh);
}
--
2.39.2

View file

@ -310,7 +310,7 @@ index 334d547..72dbaad 100644
+
+ para->length = i;
+ next = g_utf8_offset_to_pointer(para->text, para->length);
+ wc = g_utf8_get_char(g_utf8_prev_char(next));
+ wc = g_utf8_prev_char(next);
+ } else {
+ pango_layout_set_text(para->layout, para->text, para->length);
+ }

View file

@ -1,18 +0,0 @@
diff -pruN paps-0.8.0.orig/scripts/src-to-paps paps-0.8.0/scripts/src-to-paps
--- paps-0.8.0.orig/scripts/src-to-paps 2023-02-09 16:27:38.000000000 +0900
+++ paps-0.8.0/scripts/src-to-paps 2023-03-01 15:00:27.801416563 +0900
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/python3
######################################################################
# Use GNU source-hightlight to turn source code into pango markup
@@ -49,7 +49,7 @@ def arg_if_not_none(param_name, val):
# Defaults
# TBD - Make this a configuration variable
-pango_outlang_path = '/usr/local/share/paps/pango_markup.outlang'
+pango_outlang_path = '/usr/share/paps/pango_markup.outlang'
parser = argparse.ArgumentParser(description='Process a file')
parser.add_argument('-o', '--output',

View file

@ -1,34 +0,0 @@
g_utf8_next_char no longer includes a cast to char* as of 2.81.0:
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/4016
diff -up a/src/paps.cc b/src/paps.cc
--- a/src/paps.cc 2024-09-12 19:21:02.858439427 -0400
+++ b/src/paps.cc 2024-09-12 21:15:46.905955152 -0400
@@ -1115,7 +1115,7 @@ split_text_into_paragraphs (PangoContext
while (p != nullptr && *p)
{
wc = g_utf8_get_char (p);
- next = g_utf8_next_char (p);
+ next = (char *) g_utf8_next_char (p);
if (wc == (gunichar)-1)
{
fprintf (stderr, _("%s: Invalid character in input\n"), g_get_prgname ());
@@ -1130,7 +1130,7 @@ split_text_into_paragraphs (PangoContext
para->length = p - last_para;
/* handle dos line breaks */
if (wc == '\r' && *next == '\n')
- next = g_utf8_next_char(next);
+ next = (char *) g_utf8_next_char(next);
para->layout = pango_layout_new (pango_context);
if (page_layout->cpi > 0.0L)
@@ -1201,7 +1201,7 @@ split_text_into_paragraphs (PangoContext
g_free (newtext);
para->length = i;
- next = g_utf8_offset_to_pointer (para->text, para->length);
+ next = (char *) g_utf8_offset_to_pointer (para->text, para->length);
wc = g_utf8_get_char (g_utf8_prev_char (next));
}
else

129
paps.spec
View file

@ -1,16 +1,15 @@
Name: paps
Version: 0.8.0
Release: 14%{?dist}
Version: 0.7.1
Release: 5%{?dist}
License: LGPL-2.0-or-later
URL: https://github.com/dov/paps
Source0: https://github.com/dov/paps/archive/v%{name}/%{name}-%{version}.tar.gz
License: LGPLv2+
URL: http://paps.sourceforge.net/
Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
Source1: paps.convs
Source2: 29-paps.conf
Source2: 29-paps.conf
Source3: http://downloads.sourceforge.net/%{name}/%{name}-0.6.8.tar.gz
BuildRequires: make
BuildRequires: make
BuildRequires: pango-devel automake autoconf libtool doxygen cups-devel intltool
BuildRequires: fmt-devel gcc-c++
## https://sourceforge.net/tracker/index.php?func=detail&aid=1832897&group_id=153049&atid=786241
Patch0: paps-0.6.8-shared.patch
## https://sourceforge.net/tracker/index.php?func=detail&aid=1832924&group_id=153049&atid=786241
@ -43,13 +42,6 @@ Patch59: %{name}-ft-header.patch
Patch60: %{name}-a3.patch
## rhbz#1214939
Patch61: %{name}-fix-paper-size-truncate.patch
Patch62: paps-c99.patch
Patch63: paps-0.6.8-glib282.patch
Patch64: paps-0.6.8-ftbfs.patch
### For paps
Patch100: %{name}-fix-src-to-paps.patch
Patch101: %{name}-fix-build.patch
Patch102: %{name}-glib282.patch
Summary: Plain Text to PostScript converter
%description
@ -69,42 +61,31 @@ This package contains a CUPS filter based on paps.
%prep
%setup -q -a 3
%patch 100 -p1 -b .src-to-paps
%patch 101 -p1 -b .build
%patch 102 -p1 -b .glib282
pushd %{name}-0.6.8
%patch 0 -p1 -b .shared
%patch 1 -p1 -b .wordwrap
%patch 2 -p1 -b .langinfo
%patch 3 -p1 -b .lcnumeric
%patch 4 -p1 -b .exitcode
%patch 5 -p1 -b .manpage
%patch 50 -p1 -b .cups
%patch 51 -p1 -b .cpilpi
%patch 52 -p1 -b .dsc
%patch 53 -p1 -b .autoconf262
%patch 54 -p1 -b .fixcpi
%patch 55 -p1 -b .loop
%patch 56 -p1 -b .tab
%patch 57 -p1 -b .weak-symbol
%patch 58 -p1 -b .fsf
%patch 59 -p1 -b .ft-header
%patch 60 -p1 -b .a3
%patch 61 -p1 -b .paper-size
%patch 62 -p2 -b .configure-c99
%patch 63 -p1 -b .glib282
%patch 64 -p1 -b .ftbfs
%patch0 -p1 -b .shared
%patch1 -p1 -b .wordwrap
%patch2 -p1 -b .langinfo
%patch3 -p1 -b .lcnumeric
%patch4 -p1 -b .exitcode
%patch5 -p1 -b .manpage
%patch50 -p1 -b .cups
%patch51 -p1 -b .cpilpi
%patch52 -p1 -b .dsc
%patch53 -p1 -b .autoconf262
%patch54 -p1 -b .fixcpi
%patch55 -p1 -b .loop
%patch56 -p1 -b .tab
%patch57 -p1 -b .weak-symbol
%patch58 -p1 -b .fsf
%patch59 -p1 -b .ft-header
%patch60 -p1 -b .a3
%patch61 -p1 -b .paper-size
libtoolize -f -c
autoreconf -f -i
popd
%build
./autogen.sh
%set_build_flags
%if 0%{?rhel}
CXXFLAGS="$CXXFLAGS -DFMT_HEADER_ONLY"
%endif
%configure --disable-static
make %{?_smp_mflags}
@ -141,10 +122,7 @@ make install DESTDIR=$RPM_BUILD_ROOT INSTALL="/usr/bin/install -p"
%files
%doc AUTHORS COPYING.LIB README
%dir %{_datadir}/paps
%{_bindir}/paps
%{_bindir}/src-to-paps
%{_datadir}/paps/pango_markup.outlang
%{_mandir}/man1/paps.1*
%files -n texttopaps
@ -157,63 +135,6 @@ make install DESTDIR=$RPM_BUILD_ROOT INSTALL="/usr/bin/install -p"
%changelog
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Mon Jan 27 2025 Akira TAGOH <tagoh@redhat.com> - 0.8.0-13
- Fix FTBFS
Resolves: rhbz#2341001
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Fri Sep 13 2024 Akira TAGOH <tagoh@redhat.com> - 0.8.0-11
- Fix build with glib 2.82
Patch from Yaakov Selkowitz
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Jun 7 2024 Akira TAGOH <tagoh@redhat.com> - 0.8.0-9
- Own /usr/share/paps
Resolves: rhbz#2283284
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jan 17 2024 Akira TAGOH <tagoh@redhat.com> - 0.8.0-6
- Fix C type error in paps 0.6.8.
Resolves: rhbz#2256906
* Mon Aug 14 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 0.8.0-5
- Use fmt in header-only mode in RHEL builds
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed Jun 28 2023 Vitaly Zaitsev <vitaly@easycoding.org> - 0.8.0-3
- Rebuilt due to fmt 10 update.
* Thu Apr 13 2023 Florian Weimer <fweimer@redhat.com> - 0.8.0-2
- C99 compatibility fixes for paps 0.6.8
* Wed Mar 1 2023 Akira TAGOH <tagoh@redhat.com> - 0.8.0-1
- New upstream release.
Resolves: rhbz#2168726
* Tue Feb 7 2023 Akira TAGOH <tagoh@redhat.com> - 0.7.9-1
- New upstream release.
Resolves: rhbz#2164212
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Dec 5 2022 Akira TAGOH <tagoh@redhat.com> - 0.7.1-6
- Convert License tag to SPDX.
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

View file

@ -1,5 +0,0 @@
summary: Basic smoke test
discover:
how: fmf
execute:
how: tmt

View file

@ -1,2 +1,2 @@
SHA512 (paps-0.6.8.tar.gz) = db657d90179e11fe42bbcdbebe09a84f1927c99d0b539c9e29b66b3cb8ffcf33ff500c9d81835ae5a0880382bf8f24801f04742517b76b8e005b125a139d8bba
SHA512 (paps-0.8.0.tar.gz) = 33afad0e3dae9cef0fb3afb9994650bf1a7326e72782346e05ab91f7c84f092145247658cdf57868105df47a1bd08e1a961c1ef4c07a2a8fd01eaf8ecd9d948a
SHA512 (paps-0.7.1.tar.gz) = a77ed7b5529a7d94fd3c63b272c30e5b5f8af143850ea1ba176e776ad5cc11c27f8b605b95e73cc1ba7c4a1957a444e73c2c9282aa244685f777d1675056d997

View file

@ -1,5 +0,0 @@
summary: Basic test
require:
- paps
test: ./test.sh
framework: beakerlib

View file

@ -1,21 +0,0 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
. /usr/share/beakerlib/beakerlib.sh || exit 1
rlJournalStart
rlPhaseStartSetup
rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory"
rlRun "pushd $tmp"
rlRun "set -o pipefail"
rlPhaseEnd
rlPhaseStartTest
rlRun "paps --help | tee output" 0 "Check help message"
rlAssertGrep "paps" "output"
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $tmp" 0 "Remove tmp directory"
rlPhaseEnd
rlJournalEnd