aboutsummaryrefslogtreecommitdiff
path: root/ports/devil
diff options
context:
space:
mode:
Diffstat (limited to 'ports/devil')
-rw-r--r--ports/devil/0004_compatible-jasper-2-0-20.patch52
-rw-r--r--ports/devil/CONTROL3
-rw-r--r--ports/devil/portfile.cmake72
3 files changed, 71 insertions, 56 deletions
diff --git a/ports/devil/0004_compatible-jasper-2-0-20.patch b/ports/devil/0004_compatible-jasper-2-0-20.patch
new file mode 100644
index 000000000..5cb236375
--- /dev/null
+++ b/ports/devil/0004_compatible-jasper-2-0-20.patch
@@ -0,0 +1,52 @@
+diff --git a/DevIL/src-IL/src/il_jp2.cpp b/DevIL/src-IL/src/il_jp2.cpp
+index 730afee..a419c14 100644
+--- a/DevIL/src-IL/src/il_jp2.cpp
++++ b/DevIL/src-IL/src/il_jp2.cpp
+@@ -313,20 +313,31 @@ ILboolean iLoadJp2Internal(jas_stream_t *Stream, ILimage *Image)
+ }
+
+
+-
+-static int iJp2_file_read(jas_stream_obj_t *obj, char *buf, int cnt)
++#ifdef __APPLE__
++static int iJp2_file_read(void *obj, char *buf, unsigned int cnt)
++#else
++static int iJp2_file_read(jas_stream_obj_t *obj, char *buf, unsigned int cnt)
++#endif
+ {
+ obj;
+- return iread(buf, 1, cnt);
++ return iread((void*)buf, 1, cnt);
+ }
+
+-static int iJp2_file_write(jas_stream_obj_t *obj, char *buf, int cnt)
++#ifdef __APPLE__
++static int iJp2_file_write(void *obj, const char *buf, unsigned int cnt)
++#else
++static int iJp2_file_write(jas_stream_obj_t *obj, const char *buf, unsigned int cnt)
++#endif
+ {
+ obj;
+ return iwrite(buf, 1, cnt);
+ }
+
++#ifdef __APPLE__
+ static long iJp2_file_seek(jas_stream_obj_t *obj, long offset, int origin)
++#else
++static long iJp2_file_seek(void *obj, long offset, int origin)
++#endif
+ {
+ obj;
+
+@@ -343,7 +354,11 @@ static long iJp2_file_seek(jas_stream_obj_t *obj, long offset, int origin)
+ return 0; // Failed
+ }
+
++#ifdef __APPLE__
++static int iJp2_file_close(void *obj)
++#else
+ static int iJp2_file_close(jas_stream_obj_t *obj)
++#endif
+ {
+ obj;
+ return 0; // We choose when we want to close the file.
diff --git a/ports/devil/CONTROL b/ports/devil/CONTROL
index 460f7b43c..00b069a4f 100644
--- a/ports/devil/CONTROL
+++ b/ports/devil/CONTROL
@@ -1,5 +1,6 @@
Source: devil
-Version: 1.8.0-5
+Version: 1.8.0
+Port-Version: 6
Build-Depends:
Homepage: https://github.com/DentonW/DevIL
Description: A full featured cross-platform image library
diff --git a/ports/devil/portfile.cmake b/ports/devil/portfile.cmake
index eeeaffdd3..c2d098625 100644
--- a/ports/devil/portfile.cmake
+++ b/ports/devil/portfile.cmake
@@ -1,5 +1,3 @@
-include(vcpkg_common_functions)
-
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO DentonW/DevIL
@@ -11,67 +9,31 @@ vcpkg_from_github(
0002_fix-missing-mfc-includes.patch
0003_fix-openexr.patch
enable-static.patch
+ 0004_compatible-jasper-2-0-20.patch
)
-file(REMOVE ${SOURCE_PATH}/DevIL/src-IL/cmake/FindOpenEXR.cmake)
-set(IL_NO_PNG 1)
-if("libpng" IN_LIST FEATURES)
- set(IL_NO_PNG 0)
-endif()
-
-set(IL_NO_TIF 1)
-if("tiff" IN_LIST FEATURES)
- set(IL_NO_TIF 0)
-endif()
-
-set(IL_NO_JPG 1)
-if("libjpeg" IN_LIST FEATURES)
- set(IL_NO_JPG 0)
-endif()
-
-set(IL_NO_EXR 1)
-if("openexr" IN_LIST FEATURES)
- set(IL_NO_EXR 0)
-endif()
-set(IL_NO_JP2 1)
-if("jasper" IN_LIST FEATURES)
- set(IL_NO_JP2 0)
-endif()
-
-set(IL_NO_MNG 1)
-#if("libmng" IN_LIST FEATURES)
-# set(IL_NO_MNG 0)
-#endif()
-
-set(IL_NO_LCMS 1)
-if("lcms" IN_LIST FEATURES)
- set(IL_NO_LCMS 0)
-endif()
-
-set(IL_USE_DXTC_NVIDIA 0)
-#if("nvtt" IN_LIST FEATURES)
-# set(IL_USE_DXTC_NVIDIA 1)
-#endif()
+file(REMOVE ${SOURCE_PATH}/DevIL/src-IL/cmake/FindOpenEXR.cmake)
-set(IL_USE_DXTC_SQUISH 0)
-#if("libsquish" IN_LIST FEATURES)
-# set(IL_USE_DXTC_SQUISH 1)
-#endif()
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ INVERTED_FEATURES
+ libpng IL_NO_PNG
+ tiff IL_NO_TIF
+ libjpeg IL_NO_JPG
+ openexr IL_NO_EXR
+ jasper IL_NO_JP2
+ lcms IL_NO_LCMS
+)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}/DevIL
PREFER_NINJA
DISABLE_PARALLEL_CONFIGURE
OPTIONS
- -DIL_NO_PNG=${IL_NO_PNG}
- -DIL_NO_TIF=${IL_NO_TIF}
- -DIL_NO_JPG=${IL_NO_JPG}
- -DIL_NO_EXR=${IL_NO_EXR}
- -DIL_NO_JP2=${IL_NO_JP2}
- -DIL_NO_MNG=${IL_NO_MNG}
- -DIL_NO_LCMS=${IL_NO_LCMS}
- -DIL_USE_DXTC_NVIDIA=${IL_USE_DXTC_NVIDIA}
- -DIL_USE_DXTC_SQUISH=${IL_USE_DXTC_SQUISH}
+ ${FEATURE_OPTIONS}
+ -DIL_NO_MNG=ON
+ -DIL_USE_DXTC_NVIDIA=OFF
+ -DIL_USE_DXTC_SQUISH=OFF
)
vcpkg_install_cmake()
@@ -80,4 +42,4 @@ vcpkg_copy_pdbs()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright
-file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/devil RENAME copyright)
+file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)