jpeg: Merge pull request #2 from madebr/cmake-mingw

From 143e9e0cfdd4b2c24a2e9ffcf4bde4e8241246aa Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Tue, 10 May 2022 07:54:30 +0200
Subject: [PATCH 1/2] Create libjpeg-9.dll when using mingw

---
 CMakeLists.txt | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index a88a280..9107fd0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -50,6 +50,14 @@ target_include_directories(jpeg PUBLIC
 set_target_properties(jpeg PROPERTIES
 	SOVERSION "${PROJECT_VERSION_MAJOR}"
 	VERSION "${PROJECT_VERSION}"
-	PUBLIC_HEADER "${jpeg_headers}")
+	PUBLIC_HEADER "${jpeg_headers}"
+	# create libjpeg-9.dll on Windows
+	RUNTIME_OUTPUT_NAME "jpeg-${PROJECT_VERSION_MAJOR}"
+	PREFIX lib)
+
+if(MINGW AND BUILD_SHARED_LIBS)
+	set_target_properties(jpeg PROPERTIES
+		PREFIX lib)
+endif()
 
 install(TARGETS jpeg)

From 25cbc22c933861df6fd6cad71840e0ee78dbb090 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <anonymous.maarten@gmail.com>
Date: Tue, 10 May 2022 13:37:27 +0200
Subject: [PATCH 2/2] cmake: Add sources in add_library + install all
 components in install()

---
 CMakeLists.txt | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9107fd0..34d926c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -12,8 +12,7 @@ project(jpeg LANGUAGES C VERSION ${LIBJPEG_VERSION})
 
 include(GNUInstallDirs)
 
-add_library(jpeg)
-target_sources(jpeg PRIVATE
+add_library(jpeg
 		jaricom.c jcapimin.c jcapistd.c jcarith.c jccoefct.c jccolor.c
 		jcdctmgr.c jchuff.c jcinit.c jcmainct.c jcmarker.c jcmaster.c
 		jcomapi.c jcparam.c jcprepct.c jcsample.c jctrans.c jdapimin.c
@@ -60,4 +59,8 @@ if(MINGW AND BUILD_SHARED_LIBS)
 		PREFIX lib)
 endif()
 
-install(TARGETS jpeg)
+install(TARGETS jpeg
+	ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+	LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+	RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
+	PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")