Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 0 additions & 82 deletions freeimage/3.17.0-linux.patch

This file was deleted.

41 changes: 41 additions & 0 deletions freeimage/debian-to-homebrew.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
diff --git a/Makefile.fip b/Makefile.fip
index 046a835..2dbcf10 100644
--- a/Makefile.fip
+++ b/Makefile.fip
@@ -11,7 +11,7 @@ INSTALLDIR ?= $(DESTDIR)/usr/lib
# Converts cr/lf to just lf
DOS2UNIX = dos2unix

-LIBRARIES = -lstdc++ -ljxrglue $(shell pkg-config --libs libjpeg libopenjp2 libpng libraw libtiff-4 libwebpmux OpenEXR zlib) -lm
+LIBRARIES = -lstdc++ -lfreeimage -ljxrglue $(shell pkg-config --libs libjpeg libopenjp2 libpng libraw libtiff-4 libwebp libwebpmux OpenEXR zlib) -lm

MODULES = $(SRCS:.c=.o)
MODULES := $(MODULES:.cpp=.o)
diff --git a/Makefile.gnu b/Makefile.gnu
index d4a0adf..bf3c535 100644
--- a/Makefile.gnu
+++ b/Makefile.gnu
@@ -11,7 +11,7 @@ INSTALLDIR ?= $(DESTDIR)/usr/lib
# Converts cr/lf to just lf
DOS2UNIX = dos2unix

-LIBRARIES = -lstdc++ -ljxrglue $(shell pkg-config --libs libjpeg libopenjp2 libpng libraw libtiff-4 libwebpmux OpenEXR zlib) -lm
+LIBRARIES = -lstdc++ -ljxrglue $(shell pkg-config --libs libjpeg libopenjp2 libpng libraw libtiff-4 libwebp libwebpmux OpenEXR zlib) -lm

MODULES = $(SRCS:.c=.o)
MODULES := $(MODULES:.cpp=.o)
@@ -23,12 +23,12 @@ override CFLAGS += -DOPJ_STATIC
override CFLAGS += -DNO_LCMS
# LibJXR
override CFLAGS += -DDISABLE_PERF_MEASUREMENT -D__ANSI__
-override CFLAGS += $(INCLUDE) -I/usr/include/jxrlib $(shell pkg-config --cflags libjpeg libopenjp2 libpng libraw libtiff-4 libwebpmux OpenEXR zlib)
+override CFLAGS += $(INCLUDE) -I@@HOMEBREW_PREFIX@@/opt/jxrlib/include/jxrlib $(shell pkg-config --cflags libjpeg libopenjp2 libpng libraw libtiff-4 libwebp libwebpmux OpenEXR zlib)
CXXFLAGS ?= -O3 -fPIC
override CXXFLAGS += -fexceptions -fvisibility=hidden -Wno-ctor-dtor-privacy
# LibJXR
override CXXFLAGS += -D__ANSI__
-override CXXFLAGS += $(INCLUDE) -I/usr/include/jxrlib $(shell pkg-config --cflags libjpeg libopenjp2 libpng libraw libtiff-4 libwebpmux OpenEXR zlib)
+override CXXFLAGS += $(INCLUDE) -I@@HOMEBREW_PREFIX@@/opt/jxrlib/include/jxrlib $(shell pkg-config --cflags libjpeg libopenjp2 libpng libraw libtiff-4 libwebp libwebpmux OpenEXR zlib)

TARGET = freeimage
STATICLIB = lib$(TARGET).a
36 changes: 36 additions & 0 deletions freeimage/head-linux.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
diff --git a/Makefile.fip b/Makefile.fip
index 660a0265..b3583393 100644
--- a/Makefile.fip
+++ b/Makefile.fip
@@ -76,10 +76,10 @@ $(SHAREDLIB): $(MODULES)

install:
install -d $(INCDIR) $(INSTALLDIR)
- install -m 644 -o root -g root $(HEADER) $(INCDIR)
- install -m 644 -o root -g root $(HEADERFIP) $(INCDIR)
- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR)
- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR)
+ install -m 644 $(HEADER) $(INCDIR)
+ install -m 644 $(HEADERFIP) $(INCDIR)
+ install -m 644 $(STATICLIB) $(INSTALLDIR)
+ install -m 755 $(SHAREDLIB) $(INSTALLDIR)
ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)

diff --git a/Makefile.gnu b/Makefile.gnu
index a4f26013..4ae993af 100644
--- a/Makefile.gnu
+++ b/Makefile.gnu
@@ -75,9 +75,9 @@ $(SHAREDLIB): $(MODULES)

install:
install -d $(INCDIR) $(INSTALLDIR)
- install -m 644 -o root -g root $(HEADER) $(INCDIR)
- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR)
- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR)
+ install -m 644 $(HEADER) $(INCDIR)
+ install -m 644 $(STATICLIB) $(INSTALLDIR)
+ install -m 755 $(SHAREDLIB) $(INSTALLDIR)
ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)
# ldconfig
71 changes: 21 additions & 50 deletions freeimage/3.17.0.patch → freeimage/head-macos.patch
Original file line number Diff line number Diff line change
@@ -1,22 +1,8 @@
diff --git a/Makefile.fip b/Makefile.fip
old mode 100755
new mode 100644
index b59c419..6e177fc
index 660a0265..30199ae9 100644
--- a/Makefile.fip
+++ b/Makefile.fip
@@ -5,8 +5,9 @@ include fipMakefile.srcs

# General configuration variables:
DESTDIR ?= /
-INCDIR ?= $(DESTDIR)/usr/include
-INSTALLDIR ?= $(DESTDIR)/usr/lib
+PREFIX ?= /usr/local
+INCDIR ?= $(DESTDIR)$(PREFIX)/include
+INSTALLDIR ?= $(DESTDIR)$(PREFIX)/lib

# Converts cr/lf to just lf
DOS2UNIX = dos2unix
@@ -35,9 +36,9 @@ endif
@@ -39,9 +39,9 @@ endif

TARGET = freeimageplus
STATICLIB = lib$(TARGET).a
Expand All @@ -29,21 +15,21 @@ index b59c419..6e177fc
HEADER = Source/FreeImage.h
HEADERFIP = Wrapper/FreeImagePlus/FreeImagePlus.h

@@ -49,7 +50,7 @@ all: dist
@@ -53,7 +53,7 @@ all: dist
dist: FreeImage
mkdir -p Dist
cp *.a Dist/
mkdir -p Dist
cp *.a Dist/
- cp *.so Dist/
+ cp *.dylib Dist/
cp Source/FreeImage.h Dist/
cp Wrapper/FreeImagePlus/FreeImagePlus.h Dist/

@@ -68,14 +69,15 @@ $(STATICLIB): $(MODULES)
cp Source/FreeImage.h Dist/
cp Wrapper/FreeImagePlus/FreeImagePlus.h Dist/
@@ -72,14 +72,14 @@ $(STATICLIB): $(MODULES)
$(AR) r $@ $(MODULES)

$(SHAREDLIB): $(MODULES)
- $(CC) -s -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)
+ $(CXX) -dynamiclib -install_name $(LIBNAME) -current_version $(VER_MAJOR).$(VER_MINOR) -compatibility_version $(VER_MAJOR) $(LDFLAGS) -o $@ $(MODULES)
+ $(CC) -dynamiclib -install_name $(VERLIBNAME) -current_version $(VER_MAJOR).$(VER_MINOR) -compatibility_version $(VER_MAJOR) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)

install:
install -d $(INCDIR) $(INSTALLDIR)
Expand All @@ -55,29 +41,14 @@ index b59c419..6e177fc
+ install -m 644 $(HEADERFIP) $(INCDIR)
+ install -m 644 $(STATICLIB) $(INSTALLDIR)
+ install -m 755 $(SHAREDLIB) $(INSTALLDIR)
+ ln -s $(SHAREDLIB) $(INSTALLDIR)/$(LIBNAME)
ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)

ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)

diff --git a/Makefile.gnu b/Makefile.gnu
old mode 100755
new mode 100644
index 92f6358..264b70f
index a4f26013..dd7b7b84 100644
--- a/Makefile.gnu
+++ b/Makefile.gnu
@@ -5,8 +5,9 @@ include Makefile.srcs

# General configuration variables:
DESTDIR ?= /
-INCDIR ?= $(DESTDIR)/usr/include
-INSTALLDIR ?= $(DESTDIR)/usr/lib
+PREFIX ?= /usr/local
+INCDIR ?= $(DESTDIR)$(PREFIX)/include
+INSTALLDIR ?= $(DESTDIR)$(PREFIX)/lib

# Converts cr/lf to just lf
DOS2UNIX = dos2unix
@@ -35,9 +36,9 @@ endif
@@ -39,9 +39,9 @@ endif

TARGET = freeimage
STATICLIB = lib$(TARGET).a
Expand All @@ -90,21 +61,21 @@ index 92f6358..264b70f
HEADER = Source/FreeImage.h


@@ -49,7 +50,7 @@ all: dist
@@ -53,7 +53,7 @@ all: dist
dist: FreeImage
mkdir -p Dist
cp *.a Dist/
mkdir -p Dist
cp *.a Dist/
- cp *.so Dist/
+ cp *.dylib Dist/
cp Source/FreeImage.h Dist/
cp Source/FreeImage.h Dist/

dos2unix:
@@ -67,13 +68,13 @@ $(STATICLIB): $(MODULES)
@@ -71,13 +71,13 @@ $(STATICLIB): $(MODULES)
$(AR) r $@ $(MODULES)

$(SHAREDLIB): $(MODULES)
- $(CC) -s -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)
+ $(CXX) -dynamiclib -install_name $(LIBNAME) -current_version $(VER_MAJOR).$(VER_MINOR) -compatibility_version $(VER_MAJOR) $(LDFLAGS) -o $@ $(MODULES)
+ $(CC) -dynamiclib -install_name $(VERLIBNAME) -current_version $(VER_MAJOR).$(VER_MINOR) -compatibility_version $(VER_MAJOR) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)

install:
install -d $(INCDIR) $(INSTALLDIR)
Expand Down
32 changes: 32 additions & 0 deletions freeimage/imath-int64.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
diff --git a/Source/FreeImage/PluginEXR.cpp b/Source/FreeImage/PluginEXR.cpp
index 4ec31cb..f55c2a3 100644
--- a/Source/FreeImage/PluginEXR.cpp
+++ b/Source/FreeImage/PluginEXR.cpp
@@ -67,11 +67,11 @@ public:
return ((unsigned)n != _io->read_proc(c, 1, n, _handle));
}

- virtual Imath::Int64 tellg() {
+ virtual uint64_t tellg() {
return _io->tell_proc(_handle);
}

- virtual void seekg(Imath::Int64 pos) {
+ virtual void seekg(uint64_t pos) {
_io->seek_proc(_handle, (unsigned)pos, SEEK_SET);
}

@@ -101,11 +101,11 @@ public:
}
}

- virtual Imath::Int64 tellp() {
+ virtual uint64_t tellp() {
return _io->tell_proc(_handle);
}

- virtual void seekp(Imath::Int64 pos) {
+ virtual void seekp(uint64_t pos) {
_io->seek_proc(_handle, (unsigned)pos, SEEK_SET);
}
};
16 changes: 16 additions & 0 deletions freeimage/libtiff-warning.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
diff --git a/Source/Metadata/XTIFF.cpp b/Source/Metadata/XTIFF.cpp
index 35ab4ec..3b0ae10 100644
--- a/Source/Metadata/XTIFF.cpp
+++ b/Source/Metadata/XTIFF.cpp
@@ -604,9 +604,11 @@ tiff_read_exif_tags(TIFF *tif, TagLib::MDMODEL md_model, FIBITMAP *dib) {
// ### uses private data, but there is no other way
// -> Fedora: Best we can do without private headers is to hard-code a list of known EXIF tags and read those
if(md_model == TagLib::EXIF_MAIN) {
+ TIFFErrorHandler handler = TIFFSetWarningHandler(NULL);
for (int i = 0; i < nExifTags; ++i) {
tiff_read_exif_tag(tif, exif_tag_ids[i], dib, md_model);
}
+ TIFFSetWarningHandler(handler);

}

52 changes: 52 additions & 0 deletions freeimage/macos.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
diff --git a/Makefile.fip b/Makefile.fip
index 046a835..566c4fe 100644
--- a/Makefile.fip
+++ b/Makefile.fip
@@ -24,9 +24,9 @@ override CXXFLAGS += $(INCLUDE) -IDist

TARGET = freeimageplus
STATICLIB = lib$(TARGET).a
-SHAREDLIB = lib$(TARGET)-$(VER_MAJOR).$(VER_MINOR).so
-LIBNAME = lib$(TARGET).so
-VERLIBNAME = $(LIBNAME).$(VER_MAJOR)
+SHAREDLIB = lib$(TARGET).$(VER_MAJOR).$(VER_MINOR).dylib
+LIBNAME = lib$(TARGET).dylib
+VERLIBNAME = lib$(TARGET).$(VER_MAJOR).dylib
HEADER = Source/FreeImage.h
HEADERFIP = Wrapper/FreeImagePlus/FreeImagePlus.h

@@ -58,7 +58,7 @@ $(STATICLIB): $(MODULES)
$(AR) r $@ $(MODULES)

$(SHAREDLIB): $(MODULES)
- $(CC) -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)
+ $(CC) -dynamiclib -install_name $(VERLIBNAME) -current_version $(VER_MAJOR).$(VER_MINOR) -compatibility_version $(VER_MAJOR) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)

install:
install -d $(INCDIR) $(INSTALLDIR)
diff --git a/Makefile.gnu b/Makefile.gnu
index d4a0adf..589cd8a 100644
--- a/Makefile.gnu
+++ b/Makefile.gnu
@@ -32,9 +32,9 @@ override CXXFLAGS += $(INCLUDE) -I/usr/include/jxrlib $(shell pkg-config --cflag

TARGET = freeimage
STATICLIB = lib$(TARGET).a
-SHAREDLIB = lib$(TARGET)-$(VER_MAJOR).$(VER_MINOR).so
-LIBNAME = lib$(TARGET).so
-VERLIBNAME = $(LIBNAME).$(VER_MAJOR)
+SHAREDLIB = lib$(TARGET).$(VER_MAJOR).$(VER_MINOR).dylib
+LIBNAME = lib$(TARGET).dylib
+VERLIBNAME = lib$(TARGET).$(VER_MAJOR).dylib
HEADER = Source/FreeImage.h


@@ -66,7 +66,7 @@ $(STATICLIB): $(MODULES)
$(AR) r $@ $(MODULES)

$(SHAREDLIB): $(MODULES)
- $(CC) -shared -Wl,-soname,$(VERLIBNAME) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)
+ $(CC) -dynamiclib -install_name $(VERLIBNAME) -current_version $(VER_MAJOR).$(VER_MINOR) -compatibility_version $(VER_MAJOR) $(LDFLAGS) -o $@ $(MODULES) $(LIBRARIES)

install:
install -d $(INCDIR) $(INSTALLDIR)