Everything updated for cZlib name

This commit is contained in:
Sylvain PILLOT 2022-08-30 09:45:47 +02:00
parent 26f01ae584
commit 9061d22068
4 changed files with 32 additions and 41 deletions

View File

@ -1,9 +1,9 @@
# SDL_prizm: build system
# cZlib: build system
cmake_minimum_required(VERSION 3.16)
project(Libczlib VERSION 1.2.5 LANGUAGES C)
project(cZlib VERSION 1.2.5 LANGUAGES C)
# Libraries that libexample depends on
# Libraries that libczlib depends on
find_package(Gint 2.9.0 REQUIRED)
@ -25,28 +25,19 @@ set(SOURCES
zutil.c
)
include_directories(
"${PROJECT_SOURCE_DIR}"
"${PROJECT_BINARY_DIR}/include"
"${FXSDK_INCLUDE}")
add_compile_options(-Os -lm -m4-nofpu -mb -std=c11 -ffreestanding -nostdlib -Wa,--dsp)
# Target name is "cZlib", output file is "libcZlib.a" (by default)
add_library(cZlib STATIC ${SOURCES})
target_compile_options(cZlib PRIVATE -Os -std=c11)
# Target name is "czlib", output file is "libczlib.a" (by default)
add_library(czlib STATIC ${SOURCES})
# After building, install the target (that is, czlib.a) in the compiler
install(TARGETS czlib
# After building, install the target (that is, libcZlib.a) in the compiler
install(TARGETS cZlib
DESTINATION "${FXSDK_LIB}")
# Install zlib.h from the build dir
install(FILES "${PROJECT_SOURCE_DIR}/zlib.h"
install(FILES zlib.h zconf.h
DESTINATION "${FXSDK_INCLUDE}")
# Install zlib.h from the build dir
install(FILES "${PROJECT_SOURCE_DIR}/zconf.h"
DESTINATION "${FXSDK_INCLUDE}")
# Install FindSDL_prizm.cmake so that users can do find_package
install(FILES cmake/Findczlib.cmake
# Install FindcZlib.cmake so that users can do find_package
install(FILES cmake/FindcZlib.cmake
DESTINATION "${FXSDK_CMAKE_MODULE_PATH}")

View File

@ -1,4 +1,4 @@
# Zlib 1.2.5 sources for Gint
# cZlib 1.2.5 sources for Gint
Need to have a fully working gcc toolchain for SH3/SH4 architecture.
@ -15,10 +15,10 @@ You can also use the `giteapc install Slyvtt/cZlib` command to get an automatic
With CMake:
```cmake
find_package(czlib 1.2.5 REQUIRED)
target_link_libraries(<TARGET> PRIVATE czlib::czlib)
find_package(cZlib 1.2.5 REQUIRED)
target_link_libraries(<TARGET> PRIVATE cZlib::cZlib)
```
With make, link with `-lczlib`.
With make, link with `-lcZlib`.
In the C/C++ source, `#include <zlib.h>`.

17
cmake/FindcZlib.cmake Normal file
View File

@ -0,0 +1,17 @@
include(FindSimpleLibrary)
include(FindPackageHandleStandardArgs)
find_simple_library(libcZlib.a zlib.h "ZLIB_VERSION"
PATH_VAR CZLIB_PATH
VERSION_VAR CZLIB_VERSION)
find_package_handle_standard_args(cZlib
REQUIRED_VARS CZLIB_PATH CZLIB_VERSION
VERSION_VAR CZLIB_VERSION)
if(cZlib_FOUND)
add_library(cZlib::cZlib UNKNOWN IMPORTED)
set_target_properties(cZlib::cZlib PROPERTIES
IMPORTED_LOCATION "${CZLIB_PATH}"
INTERFACE_LINK_OPTIONS -lcZlib)
endif()

View File

@ -1,17 +0,0 @@
include(FindSimpleLibrary)
include(FindPackageHandleStandardArgs)
find_simple_library(libczlib.a zlib.h "ZLIB_VERSION"
PATH_VAR CZLIB_PATH
VERSION_VAR CZLIB_VERSION)
find_package_handle_standard_args(czlib
REQUIRED_VARS CZLIB_PATH CZLIB_VERSION
VERSION_VAR CZLIB_VERSION)
if(czlib_FOUND)
add_library(czlib::czlib UNKNOWN IMPORTED)
set_target_properties(czlib::czlib PROPERTIES
IMPORTED_LOCATION "${CZLIB_PATH}"
INTERFACE_LINK_OPTIONS -lczlib)
endif()