From b38755cca4a003d81786d1dcc5d4b3e15eea462b Mon Sep 17 00:00:00 2001 From: sthen Date: Tue, 29 Oct 2013 00:01:50 +0000 Subject: [PATCH] import graphics/openjp2, OpenJPEG 2.0 (which has a different API to 1.5.x). ok rpe@ landry@ --- graphics/openjp2/Makefile | 37 +++++++++++++++++++ graphics/openjp2/distinfo | 2 + graphics/openjp2/patches/patch-CMakeLists_txt | 15 ++++++++ .../patch-src_lib_openjp2_opj_malloc_h | 12 ++++++ .../patch-src_lib_openmj2_opj_malloc_h | 12 ++++++ graphics/openjp2/pkg/DESCR | 7 ++++ graphics/openjp2/pkg/PLIST | 20 ++++++++++ 7 files changed, 105 insertions(+) create mode 100644 graphics/openjp2/Makefile create mode 100644 graphics/openjp2/distinfo create mode 100644 graphics/openjp2/patches/patch-CMakeLists_txt create mode 100644 graphics/openjp2/patches/patch-src_lib_openjp2_opj_malloc_h create mode 100644 graphics/openjp2/patches/patch-src_lib_openmj2_opj_malloc_h create mode 100644 graphics/openjp2/pkg/DESCR create mode 100644 graphics/openjp2/pkg/PLIST diff --git a/graphics/openjp2/Makefile b/graphics/openjp2/Makefile new file mode 100644 index 00000000000..83163c75109 --- /dev/null +++ b/graphics/openjp2/Makefile @@ -0,0 +1,37 @@ +# $OpenBSD: Makefile,v 1.1.1.1 2013/10/29 00:01:50 sthen Exp $ + +COMMENT = open-source JPEG 2000 codec library + +V = 2.0.0 +DISTNAME = openjpeg-$V +PKGNAME = openjp2-$V + +SHARED_LIBS += openjp2 0.0 # 2.0 + +CATEGORIES = graphics + +HOMEPAGE = http://www.openjpeg.org/ + +MAINTAINER = Stuart Henderson + +# BSD +PERMIT_PACKAGE_CDROM = Yes + +WANTLIB += c jpeg lcms2 m png tiff z + +MASTER_SITES = http://openjpeg.googlecode.com/files/ + +MODULES = devel/cmake +CONFIGURE_ARGS = -DOPENJPEG_INSTALL_MAN_DIR=${PREFIX}/man \ + -DOPENJPEG_INSTALL_SUBDIR:STRING=openjp2 \ + -DOPENJPEG_SOVERSION:STRING=${LIBopenjpeg_VERSION} + +LIB_DEPENDS = graphics/lcms2 \ + graphics/png + +NO_TEST = Yes + +pre-patch: + cd ${WRKSRC}/src/lib && perl -i -pe 's/\r$$//; s/\t*$$//;' openmj2/opj_malloc.h openjp2/opj_malloc.h + +.include diff --git a/graphics/openjp2/distinfo b/graphics/openjp2/distinfo new file mode 100644 index 00000000000..585919d659b --- /dev/null +++ b/graphics/openjp2/distinfo @@ -0,0 +1,2 @@ +SHA256 (openjpeg-2.0.0.tar.gz) = M031OAUVVTge47u+OoBMnAKKAhQBuilg1vNdpmv2Bdg= +SIZE (openjpeg-2.0.0.tar.gz) = 1770392 diff --git a/graphics/openjp2/patches/patch-CMakeLists_txt b/graphics/openjp2/patches/patch-CMakeLists_txt new file mode 100644 index 00000000000..0a5da53f22f --- /dev/null +++ b/graphics/openjp2/patches/patch-CMakeLists_txt @@ -0,0 +1,15 @@ +$OpenBSD: patch-CMakeLists_txt,v 1.1.1.1 2013/10/29 00:01:50 sthen Exp $ +--- CMakeLists.txt.orig Tue Apr 2 18:03:46 2013 ++++ CMakeLists.txt Tue Apr 2 18:04:07 2013 +@@ -95,7 +95,10 @@ endif() + # Install directories + + string(TOLOWER ${PROJECT_NAME} projectname) +-set(OPENJPEG_INSTALL_SUBDIR "${projectname}-${OPENJPEG_VERSION_MAJOR}.${OPENJPEG_VERSION_MINOR}") ++ ++if(NOT OPENJPEG_INSTALL_SUBDIR) ++ set(OPENJPEG_INSTALL_SUBDIR "${projectname}-${OPENJPEG_VERSION_MAJOR}.${OPENJPEG_VERSION_MINOR}") ++endif() + + if(NOT OPENJPEG_INSTALL_BIN_DIR) + set(OPENJPEG_INSTALL_BIN_DIR "bin") diff --git a/graphics/openjp2/patches/patch-src_lib_openjp2_opj_malloc_h b/graphics/openjp2/patches/patch-src_lib_openjp2_opj_malloc_h new file mode 100644 index 00000000000..88581202ecf --- /dev/null +++ b/graphics/openjp2/patches/patch-src_lib_openjp2_opj_malloc_h @@ -0,0 +1,12 @@ +$OpenBSD: patch-src_lib_openjp2_opj_malloc_h,v 1.1.1.1 2013/10/29 00:01:50 sthen Exp $ +--- src/lib/openjp2/opj_malloc.h.orig Tue Apr 2 17:33:28 2013 ++++ src/lib/openjp2/opj_malloc.h Tue Apr 2 17:34:39 2013 +@@ -86,7 +86,7 @@ Allocate memory aligned to a 16 byte boundry + #elif defined(__FreeBSD__) + #define HAVE_POSIX_MEMALIGN + /* Linux x86_64 and OSX always align allocations to 16 bytes */ +- #elif !defined(__amd64__) && !defined(__APPLE__) && !defined(_AIX) ++ #elif !defined(__amd64__) && !defined(__APPLE__) && !defined(_AIX) && !defined(__OpenBSD__) + #define HAVE_MEMALIGN + #include + #endif diff --git a/graphics/openjp2/patches/patch-src_lib_openmj2_opj_malloc_h b/graphics/openjp2/patches/patch-src_lib_openmj2_opj_malloc_h new file mode 100644 index 00000000000..7b1918a25a4 --- /dev/null +++ b/graphics/openjp2/patches/patch-src_lib_openmj2_opj_malloc_h @@ -0,0 +1,12 @@ +$OpenBSD: patch-src_lib_openmj2_opj_malloc_h,v 1.1.1.1 2013/10/29 00:01:50 sthen Exp $ +--- src/lib/openmj2/opj_malloc.h.orig Tue Apr 2 17:33:28 2013 ++++ src/lib/openmj2/opj_malloc.h Tue Apr 2 17:34:53 2013 +@@ -86,7 +86,7 @@ Allocate memory aligned to a 16 byte boundry + #elif defined(__FreeBSD__) + #define HAVE_POSIX_MEMALIGN + /* Linux x86_64 and OSX always align allocations to 16 bytes */ +- #elif !defined(__amd64__) && !defined(__APPLE__) && !defined(_AIX) ++ #elif !defined(__amd64__) && !defined(__APPLE__) && !defined(_AIX) && !defined(__OpenBSD__) + #define HAVE_MEMALIGN + #include + #endif diff --git a/graphics/openjp2/pkg/DESCR b/graphics/openjp2/pkg/DESCR new file mode 100644 index 00000000000..67dd0651036 --- /dev/null +++ b/graphics/openjp2/pkg/DESCR @@ -0,0 +1,7 @@ +The OpenJPEG library is an open-source JPEG 2000 codec written in the C +language. It has been developed in order to promote the use of the JPEG 2000 +still-image compression standard from the Joint Photographic Experts Group +(JPEG). + +This package provides the 2.x library, it is separate from the 1.5 library +due to major API differences. diff --git a/graphics/openjp2/pkg/PLIST b/graphics/openjp2/pkg/PLIST new file mode 100644 index 00000000000..014a27d809d --- /dev/null +++ b/graphics/openjp2/pkg/PLIST @@ -0,0 +1,20 @@ +@comment $OpenBSD: PLIST,v 1.1.1.1 2013/10/29 00:01:50 sthen Exp $ +@bin bin/opj_compress +@bin bin/opj_decompress +@bin bin/opj_dump +include/openjp2/ +include/openjp2/openjpeg.h +include/openjp2/opj_config.h +include/openjp2/opj_stdint.h +@lib lib/libopenjp2.so.${LIBopenjp2_VERSION} +lib/openjp2/ +lib/openjp2/OpenJPEGConfig.cmake +lib/openjp2/OpenJPEGTargets-noconfig.cmake +lib/openjp2/OpenJPEGTargets.cmake +@man man/man1/opj_compress.1 +@man man/man1/opj_decompress.1 +@man man/man1/opj_dump.1 +@man man/man3/libopenjp2.3 +share/doc/openjp2/ +share/doc/openjp2/CHANGES +share/doc/openjp2/LICENSE