summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim@guixotic.coop>2025-07-22 13:03:13 +0900
committerMaxim Cournoyer <maxim@guixotic.coop>2025-07-22 13:04:57 +0900
commitf9d368f345a5bc6d42686e2e7a23c4c430b9f060 (patch)
tree3829f4acfe9999c20ebe7cbab53993aac53a9399
parent4b6110a6c3ebf0b60b56d6021d15593be18a8d04 (diff)
gnu: ccextractor: Update to 0.94-0.81fdecd.
* gnu/packages/gstreamer.scm (ccextractor): Update to 0.94-0.81fdecd. [source]: Delete patches. [#:configure-flags]: Add LDFLAGS. [native-inputs]: Replace autoconf with autoconf-2.72, leptonica-1.80 with leptonica and tesseract-ocr-4 with tesseract-ocr. * gnu/packages/patches/ccextractor-add-missing-header.patch * gnu/packages/patches/ccextractor-autoconf-tesseract.patch * gnu/packages/patches/ccextractor-fix-ocr.patch: Delete files * gnu/local.mk (dist_patch_DATA): De-register them. Change-Id: Ice1336754bc5ddf77fee7c03a1336cd1c3543d4c
-rw-r--r--gnu/local.mk3
-rw-r--r--gnu/packages/gstreamer.scm100
-rw-r--r--gnu/packages/patches/ccextractor-add-missing-header.patch33
-rw-r--r--gnu/packages/patches/ccextractor-autoconf-tesseract.patch37
-rw-r--r--gnu/packages/patches/ccextractor-fix-ocr.patch29
5 files changed, 51 insertions, 151 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index c383ffa7d8..46a483c15e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1094,9 +1094,6 @@ dist_patch_DATA = \
%D%/packages/patches/capnproto-fix-test.patch \
%D%/packages/patches/capstone-fix-python-constants.patch \
%D%/packages/patches/catdoc-CVE-2017-11110.patch \
- %D%/packages/patches/ccextractor-add-missing-header.patch \
- %D%/packages/patches/ccextractor-autoconf-tesseract.patch \
- %D%/packages/patches/ccextractor-fix-ocr.patch \
%D%/packages/patches/chez-scheme-bin-sh.patch \
%D%/packages/patches/circos-remove-findbin.patch \
%D%/packages/patches/cdparanoia-fpic.patch \
diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index f31a1b6c27..e224d69c8b 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -10,7 +10,7 @@
;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
-;;; Copyright © 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2023-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2024 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
@@ -172,56 +172,58 @@ module for the DMA capture of the video flow.")
(license license:lgpl2.0+)))
(define-public ccextractor
- (package
- (name "ccextractor")
- (version "0.94")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/CCExtractor/ccextractor")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- ;; FIXME: Delete the 'src/thirdparty directory and unbundle the
- ;; libraries it contains, such as freetype, libpng, zlib, and others.
- (patches (search-patches "ccextractor-add-missing-header.patch"
- "ccextractor-autoconf-tesseract.patch"
- "ccextractor-fix-ocr.patch"))
- (sha256
- (base32 "1hrk4xlzkvk9pnv0yr4whcsh8h4fzk42mrf30dsr3xzh1lgpfslg"))))
- (build-system gnu-build-system)
- (arguments
- (list #:configure-flags
- #~(list "--enable-ffmpeg"
- "--enable-ocr"
- "--enable-hardsubx"
- ;; Disable Rust support, as there's no rust source included
- ;; and cargo wants to fetch the crates from the network
- ;; (see:
- ;; https://github.com/CCExtractor/ccextractor/issues/1502).
- "--without-rust")
- #:phases #~(modify-phases %standard-phases
- (add-after 'unpack 'chdir
- (lambda _
- (chdir "linux")))
- (add-after 'chdir 'patch-pre-build.sh
- (lambda _
- (substitute* "pre-build.sh"
- (("/usr/bin/env") (which "env")))))
- (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests?
- ;; There is no test suite; simply run the binary
- ;; to validate there are no obvious problems.
- (invoke "./ccextractor" "--help")))))))
- (native-inputs (list autoconf automake pkg-config))
- (inputs (list ffmpeg-3.4 leptonica-1.80 tesseract-ocr-4))
- (synopsis "Closed Caption Extractor")
- (description "CCExtractor is a tool that analyzes video files and produces
+ (let ((commit "81fdecd5af683ff25b953339fdb0d84e141d60c1")
+ (revision "0"))
+ (package
+ (name "ccextractor")
+ (version (git-version "0.94" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/CCExtractor/ccextractor")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ ;; FIXME: Delete the 'src/thirdparty directory and unbundle the
+ ;; libraries it contains, such as freetype, libpng, zlib, and others.
+ (sha256
+ (base32 "0rcig2zma4nrvlx90pkcy1spc1ha2ig0jixm2dnc0f04bzf2n00q"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:configure-flags
+ #~(list "--enable-ffmpeg"
+ "--enable-ocr"
+ "--enable-hardsubx"
+ ;; Disable Rust support, as there's no rust source included
+ ;; and cargo wants to fetch the crates from the network
+ ;; (see:
+ ;; https://github.com/CCExtractor/ccextractor/issues/1502).
+ "--without-rust"
+ ;; Workaround the lack of a link directive to tesseract
+ ;; for the hardsubx module.
+ "LDFLAGS=-ltesseract")
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "linux")))
+ (add-after 'chdir 'patch-pre-build.sh
+ (lambda _
+ (substitute* "pre-build.sh"
+ (("/usr/bin/env") (which "env")))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ ;; There is no test suite; simply run the binary
+ ;; to validate there are no obvious problems.
+ (invoke "./ccextractor" "--help")))))))
+ (native-inputs (list autoconf-2.72 automake pkg-config))
+ (inputs (list ffmpeg gpac leptonica tesseract-ocr))
+ (synopsis "Closed Caption Extractor")
+ (description "CCExtractor is a tool that analyzes video files and produces
independent subtitle files from the closed captions data. It is portable, small,
and very fast.")
- (home-page "https://www.ccextractor.org/")
- (license license:gpl2+)))
+ (home-page "https://www.ccextractor.org/")
+ (license license:gpl2+))))
(define-public libvisual
(package
diff --git a/gnu/packages/patches/ccextractor-add-missing-header.patch b/gnu/packages/patches/ccextractor-add-missing-header.patch
deleted file mode 100644
index 6c6c02be51..0000000000
--- a/gnu/packages/patches/ccextractor-add-missing-header.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-Upstream status: https://github.com/CCExtractor/ccextractor/pull/1505
-
-From 272e0e1410135c3a5de105cecce400c7b2a9ed5b Mon Sep 17 00:00:00 2001
-From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
-Date: Fri, 17 Mar 2023 09:49:29 -0400
-Subject: [PATCH] linux/Makefile.am: Add missing generated header.
-
-This header is generated by the pre-build.sh script. The compilation
-fails if it is missing.
-
-* linux/Makefile.am (ccextractor_SOURCES): Add
-../src/lib_ccx/compile_info_real.h.
----
- linux/Makefile.am | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/linux/Makefile.am b/linux/Makefile.am
-index fddc26a5..f83f1eff 100644
---- a/linux/Makefile.am
-+++ b/linux/Makefile.am
-@@ -118,6 +118,7 @@ ccextractor_SOURCES = \
- ../src/lib_ccx/bitstream.h \
- ../src/lib_ccx/ccx_common_option.c \
- ../src/lib_ccx/ccx_common_common.c \
-+ ../src/lib_ccx/compile_info_real.h \
- ../src/lib_ccx/utility.c \
- ../src/lib_ccx/activity.c \
- ../src/lib_ccx/asf_functions.c \
-
-base-commit: cb496a711923c984251483776e652ca9c027513c
---
-2.39.1
-
diff --git a/gnu/packages/patches/ccextractor-autoconf-tesseract.patch b/gnu/packages/patches/ccextractor-autoconf-tesseract.patch
deleted file mode 100644
index 3ce2925acf..0000000000
--- a/gnu/packages/patches/ccextractor-autoconf-tesseract.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Upstream status: https://github.com/CCExtractor/ccextractor/pull/1504
-
-From f587050c2b5805ff5feb667736381dcc9991a5d3 Mon Sep 17 00:00:00 2001
-From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
-Date: Fri, 17 Mar 2023 00:57:13 -0400
-Subject: [PATCH] linux/configure.ac: Fix tesseract conditional problem.
-
-For tesseract-ocr's stock pkg-config, it would produce an error due to
-unquoted whitespace:
-
- $ test ! -z `pkg-config --libs-only-l --silence-errors tesseract`
- bash: test: syntax error: `-larchive' unexpected
-
-* linux/configure.ac: Use a positive test, and double-quote the $() command
-substitution.
----
- linux/configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/linux/configure.ac b/linux/configure.ac
-index 45fc11f3..118ee7fa 100644
---- a/linux/configure.ac
-+++ b/linux/configure.ac
-@@ -149,7 +149,7 @@ AS_IF([ (test x$ocr = xtrue || test x$hardsubx = xtrue) && test ! $HAS_LEPT -gt
- AM_CONDITIONAL(HARDSUBX_IS_ENABLED, [ test x$hardsubx = xtrue ])
- AM_CONDITIONAL(OCR_IS_ENABLED, [ test x$ocr = xtrue || test x$hardsubx = xtrue ])
- AM_CONDITIONAL(FFMPEG_IS_ENABLED, [ test x$ffmpeg = xtrue ])
--AM_CONDITIONAL(TESSERACT_PRESENT, [ test ! -z `pkg-config --libs-only-l --silence-errors tesseract` ])
-+AM_CONDITIONAL(TESSERACT_PRESENT, [ test -n "$(pkg-config --libs-only-l --silence-errors tesseract)" ])
- AM_CONDITIONAL(TESSERACT_PRESENT_RPI, [ test -d "/usr/include/tesseract" && test `ls -A /usr/include/tesseract | wc -l` -gt 0 ])
- AM_CONDITIONAL(SYS_IS_LINUX, [ test `uname -s` = "Linux"])
- AM_CONDITIONAL(SYS_IS_MAC, [ test `uname -s` = "Darwin"])
-
-base-commit: cb496a711923c984251483776e652ca9c027513c
---
-2.39.1
-
diff --git a/gnu/packages/patches/ccextractor-fix-ocr.patch b/gnu/packages/patches/ccextractor-fix-ocr.patch
deleted file mode 100644
index 9a06026724..0000000000
--- a/gnu/packages/patches/ccextractor-fix-ocr.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Extracted from upstream commit 0264e7da2be67182deb031228eb07e6ed4943c81.
-
-diff --git a/src/lib_ccx/ocr.c b/src/lib_ccx/ocr.c
-index 31cc1c5c..73bd4818 100644
---- a/src/lib_ccx/ocr.c
-+++ b/src/lib_ccx/ocr.c
-@@ -331,6 +331,11 @@ char *ocr_bitmap(void *arg, png_color *palette, png_byte *alpha, unsigned char *
- }
-
- BOX *crop_points = ignore_alpha_at_edge(copy->alpha, copy->data, w, h, color_pix, &color_pix_out);
-+
-+ l_int32 x, y, _w, _h;
-+
-+ boxGetGeometry(crop_points, &x, &y, &_w, &_h);
-+
- // Converting image to grayscale for OCR to avoid issues with transparency
- cpix_gs = pixConvertRGBToGray(cpix, 0.0, 0.0, 0.0);
-
-@@ -426,8 +431,8 @@ char *ocr_bitmap(void *arg, png_color *palette, png_byte *alpha, unsigned char *
- {
- for (int j = x1; j <= x2; j++)
- {
-- if (copy->data[(crop_points->y + i) * w + (crop_points->x + j)] != firstpixel)
-- histogram[copy->data[(crop_points->y + i) * w + (crop_points->x + j)]]++;
-+ if (copy->data[(y + i) * w + (x + j)] != firstpixel)
-+ histogram[copy->data[(y + i) * w + (x + j)]]++;
- }
- }
- /* sorted in increasing order of intensity */