commit:     d4bf8684d408ef7310a7915ca277707350d708d6
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 11 18:02:02 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar 11 18:02:11 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4bf8684

media-gfx/jhead: add 3.08

Bug: https://bugs.gentoo.org/908519
Closes: https://bugs.gentoo.org/879543
Closes: https://bugs.gentoo.org/890252
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-gfx/jhead/Manifest                           |  1 +
 .../jhead/files/jhead-3.08-fix-makefile.patch      | 42 ++++++++++++++++++++++
 media-gfx/jhead/jhead-3.08.ebuild                  | 36 +++++++++++++++++++
 3 files changed, 79 insertions(+)

diff --git a/media-gfx/jhead/Manifest b/media-gfx/jhead/Manifest
index 088685d71f13..d2f781c90eac 100644
--- a/media-gfx/jhead/Manifest
+++ b/media-gfx/jhead/Manifest
@@ -1 +1,2 @@
 DIST jhead-3.06.0.1.tgz 1144608 BLAKE2B 
100eaddd8585e8845e83c3eb24aefb0a0a2d477f0ee818c212cc39ad88f39cbac5532979dbe7ee8c4d7b9475fdf4cce4257679d996e4fae14ef1902ef2f8e5a2
 SHA512 
7804f4bab1b07eb08ed981364b3634b1c25e0657d57651871aede640254c33f9d2307ba7c9fb3bc81eb06b71ba5d27437275a3fe53859e9e9457e37e12545db9
+DIST jhead-3.08.tgz 1146535 BLAKE2B 
8e53fed1988c12be40b804fd3c8aa51d71ddaa11d97ed11479ec100f26585cc4a19b3b29249642e1cdb5afbf612b6b4281c4f0ec3ad10ad1a6e6fdffc6729740
 SHA512 
eb50e487eaacf2b489ce5e76f09730c8bb0c50a0e2d7c854ebe8bd204ead8f6256e052c49c72af179dc46dd5372c1eff32ff549b947637b242dc7bbe8c7b20d5

diff --git a/media-gfx/jhead/files/jhead-3.08-fix-makefile.patch 
b/media-gfx/jhead/files/jhead-3.08-fix-makefile.patch
new file mode 100644
index 000000000000..7f4e80be57ea
--- /dev/null
+++ b/media-gfx/jhead/files/jhead-3.08-fix-makefile.patch
@@ -0,0 +1,42 @@
+--- a/makefile
++++ b/makefile
+@@ -8,11 +8,15 @@ MANDIR=$(PREFIX)/share/man/man1
+ OBJ=obj
+ SRC=.
+ 
+-DPKG_BUILDFLAGS := $(shell command -v dpkg-buildflags 2> /dev/null)
+-ifdef DPKG_BUILDFLAGS
+-CFLAGS:=$(shell dpkg-buildflags --get CFLAGS)
+-LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
+-endif
++CFLAGS ?= -O2
++LDFLAGS += -fPIC -shared -Wl,-soname,libjhead.so.1
++
++TARGET = libjhead.so.1.0.0
++TARGET0        = libjhead.so
++TARGET1        = libjhead.so.1
++TARGET2 = libjhead.so.1.0
++
+++all: objdir jhead $(TARGET)
+ 
+ # To enable electric fence, set ELECTRIC_FENCE=1
+ ifeq ($(ELECTRIC_FENCE),1)
+@@ -31,7 +35,7 @@ objs = $(OBJ)/jhead.o $(OBJ)/jpgfile.o $(OBJ)/jpgqguess.o 
$(OBJ)/paths.o \
+       $(OBJ)/exif.o $(OBJ)/iptc.o $(OBJ)/gpsinfo.o $(OBJ)/makernote.o
+ 
+ $(OBJ)/%.o:$(SRC)/%.c objdir
+-      ${CC} $(CFLAGS) $(CPPFLAGS) -c $< -o $@
++      ${CC} -fPIC $(CFLAGS) $(CPPFLAGS) -c $< -o $@
+ 
+ jhead: $(objs) jhead.h
+       ${CC} $(LDFLAGS) -o jhead $(objs) -lm
+@@ -44,3 +48,9 @@ install: all
+       install -m 0755 jhead $(BINDIR)
+       install -m 0644 $(docs) $(DOCDIR)
+       install -m 0644 jhead.1 $(MANDIR)
++
++$(TARGET): $(objs) jhead
++      ${CC} $(LDFLAGS) $(LFLAGS) -o $(TARGET) $(objs)
++      ln -s ${TARGET} ${TARGET0}
++      ln -s ${TARGET} ${TARGET1}
++      ln -s ${TARGET} ${TARGET2}

diff --git a/media-gfx/jhead/jhead-3.08.ebuild 
b/media-gfx/jhead/jhead-3.08.ebuild
new file mode 100644
index 000000000000..c933270e140a
--- /dev/null
+++ b/media-gfx/jhead/jhead-3.08.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="EXIF JPEG camera setting parser and thumbnail remover"
+HOMEPAGE="http://www.sentex.net/~mwandel/jhead";
+SRC_URI="https://github.com/Matthias-Wandel/jhead/archive/refs/tags/${PV}.tar.gz
 -> ${P}.tgz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-3.08-fix-makefile.patch
+)
+
+src_compile() {
+       # Older codebase with aliasing violations (bug #890252)
+       append-flags -fno-strict-aliasing
+       filter-lto
+
+       emake CC="$(tc-getCC)"
+}
+
+src_install() {
+       dobin ${PN}
+       dodoc *.txt
+       docinto html
+       dodoc *.html
+       doman ${PN}.1
+       doheader ${PN}.h
+       dolib.so lib${PN}.so*
+}

Reply via email to