mirror of
https://github.com/fabiangreffrath/woof.git
synced 2025-09-25 22:05:20 -04:00
Revert "update FindFluidSynth.cmake"
This reverts commit 3582e8c28cee186c4d601a55ae260ecb628cd5a8.
This commit is contained in:
parent
3582e8c28c
commit
1363fb165f
@ -1,119 +1,106 @@
|
|||||||
#[=======================================================================[.rst:
|
# FindFluidSynth
|
||||||
FindFluidSynth
|
# ---------
|
||||||
-------
|
#
|
||||||
|
# Try to find the FluidSynth library.
|
||||||
|
#
|
||||||
|
# This will define the following variables:
|
||||||
|
#
|
||||||
|
# ``FluidSynth_FOUND``
|
||||||
|
# System has FluidSynth.
|
||||||
|
#
|
||||||
|
# ``FluidSynth_VERSION``
|
||||||
|
# The version of FluidSynth.
|
||||||
|
#
|
||||||
|
# ``FluidSynth_INCLUDE_DIRS``
|
||||||
|
# This should be passed to target_include_directories() if
|
||||||
|
# the target is not used for linking.
|
||||||
|
#
|
||||||
|
# ``FluidSynth_LIBRARIES``
|
||||||
|
# The FluidSynth library.
|
||||||
|
# This can be passed to target_link_libraries() instead of
|
||||||
|
# the ``FluidSynth::libfluidsynth`` target
|
||||||
|
#
|
||||||
|
# If ``FluidSynth_FOUND`` is TRUE, the following imported target
|
||||||
|
# will be available:
|
||||||
|
#
|
||||||
|
# ``FluidSynth::libfluidsynth``
|
||||||
|
# The FluidSynth library
|
||||||
|
#
|
||||||
|
#=============================================================================
|
||||||
|
# Copyright 2018 Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
# modification, are permitted provided that the following conditions
|
||||||
|
# are met:
|
||||||
|
#
|
||||||
|
# 1. Redistributions of source code must retain the copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer.
|
||||||
|
# 2. Redistributions in binary form must reproduce the copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer in the
|
||||||
|
# documentation and/or other materials provided with the distribution.
|
||||||
|
# 3. The name of the author may not be used to endorse or promote products
|
||||||
|
# derived from this software without specific prior written permission.
|
||||||
|
#
|
||||||
|
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||||
|
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||||
|
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||||
|
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||||
|
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
#=============================================================================
|
||||||
|
|
||||||
Finds the FluidSynth library.
|
# Cache variable that allows you to point CMake at a directory containing
|
||||||
|
# an extracted development library.
|
||||||
Imported Targets
|
set(FluidSynth_DIR "${FluidSynth_DIR}"
|
||||||
^^^^^^^^^^^^^^^^
|
CACHE PATH "Location of FluidSynth library directory")
|
||||||
|
|
||||||
This module provides the following imported targets, if found:
|
|
||||||
|
|
||||||
``FluidSynth::libfluidsynth``
|
|
||||||
The FluidSynth library
|
|
||||||
|
|
||||||
Result Variables
|
|
||||||
^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
This will define the following variables:
|
|
||||||
|
|
||||||
``FluidSynth_FOUND``
|
|
||||||
True if the system has the FluidSynth library.
|
|
||||||
``FluidSynth_INCLUDE_DIRS``
|
|
||||||
Include directories needed to use FluidSynth.
|
|
||||||
``FluidSynth_LIBRARIES``
|
|
||||||
Libraries needed to link to FluidSynth.
|
|
||||||
|
|
||||||
Cache Variables
|
|
||||||
^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
The following cache variables may also be set:
|
|
||||||
|
|
||||||
``FluidSynth_INCLUDE_DIR``
|
|
||||||
The directory containing ``FluidSynth.h``.
|
|
||||||
``FluidSynth_DLL``
|
|
||||||
The path to the FluidSynth Windows runtime.
|
|
||||||
``FluidSynth_LIBRARY``
|
|
||||||
The path to the FluidSynth library.
|
|
||||||
|
|
||||||
#]=======================================================================]
|
|
||||||
|
|
||||||
find_package(PkgConfig QUIET)
|
find_package(PkgConfig QUIET)
|
||||||
pkg_check_modules(PC_FLUIDSYNTH QUIET fluidsynth)
|
pkg_check_modules(PC_FluidSynth QUIET fluidsynth>=${FluidSynth_FIND_VERSION})
|
||||||
|
|
||||||
find_path(
|
find_library(FluidSynth_LIBRARIES
|
||||||
FluidSynth_INCLUDE_DIR
|
NAMES fluidsynth
|
||||||
|
HINTS
|
||||||
|
"${FluidSynth_DIR}/lib"
|
||||||
|
${PC_FluidSynth_LIBDIR}
|
||||||
|
)
|
||||||
|
|
||||||
|
find_path(FluidSynth_INCLUDE_DIRS
|
||||||
NAMES fluidsynth.h
|
NAMES fluidsynth.h
|
||||||
HINTS "${PC_FLUIDSYNTH_INCLUDEDIR}"
|
HINTS
|
||||||
|
"${FluidSynth_DIR}/include"
|
||||||
|
${PC_FluidSynth_INCLUDEDIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
find_file(
|
|
||||||
FluidSynth_DLL
|
|
||||||
NAMES fluidsynth.dll libfluidsynth.dll libfluidsynth-3.dll
|
|
||||||
PATH_SUFFIXES bin
|
|
||||||
HINTS "${PC_FLUIDSYNTH_PREFIX}"
|
|
||||||
)
|
|
||||||
|
|
||||||
find_library(
|
|
||||||
FluidSynth_LIBRARY
|
|
||||||
NAMES fluidsynth libfluidsynth
|
|
||||||
HINTS "${PC_FLUIDSYNTH_LIBDIR}"
|
|
||||||
)
|
|
||||||
|
|
||||||
if(FluidSynth_DLL OR FluidSynth_LIBRARY MATCHES ".so|.dylib")
|
|
||||||
set(_fluidsynth_library_type SHARED)
|
|
||||||
else()
|
|
||||||
set(_fluidsynth_library_type STATIC)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT FluidSynth_VERSION)
|
if(NOT FluidSynth_VERSION)
|
||||||
if(EXISTS "${FluidSynth_INCLUDE_DIR}/fluidsynth/version.h")
|
if(EXISTS "${FluidSynth_INCLUDE_DIRS}/fluidsynth/version.h")
|
||||||
file(STRINGS "${FluidSynth_INCLUDE_DIR}/fluidsynth/version.h" _FLUIDSYNTH_VERSION_H
|
file(STRINGS "${FluidSynth_INCLUDE_DIRS}/fluidsynth/version.h" _FLUIDSYNTH_VERSION_H
|
||||||
REGEX "^#define[ ]+FLUIDSYNTH_VERSION[ ]+\"[0-9].[0-9].[0-9]\"")
|
REGEX "^#define[ ]+FLUIDSYNTH_VERSION[ ]+\"[0-9].[0-9].[0-9]\"")
|
||||||
string(REGEX REPLACE "^#define[ ]+FLUIDSYNTH_VERSION[ ]+\"([0-9].[0-9].[0-9])\".*" "\\1" FluidSynth_VERSION "${_FLUIDSYNTH_VERSION_H}")
|
string(REGEX REPLACE "^#define[ ]+FLUIDSYNTH_VERSION[ ]+\"([0-9].[0-9].[0-9])\".*" "\\1" FluidSynth_VERSION "${_FLUIDSYNTH_VERSION_H}")
|
||||||
unset(_FLUIDSYNTH_VERSION_H)
|
unset(_FLUIDSYNTH_VERSION_H)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
get_flags_from_pkg_config("${_fluidsynth_library_type}" "PC_FLUIDSYNTH" "_fluidsynth")
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
include(FindPackageHandleStandardArgs)
|
||||||
find_package_handle_standard_args(
|
find_package_handle_standard_args(FluidSynth
|
||||||
FluidSynth
|
FOUND_VAR FluidSynth_FOUND
|
||||||
REQUIRED_VARS "FluidSynth_LIBRARY" "FluidSynth_INCLUDE_DIR")
|
REQUIRED_VARS FluidSynth_LIBRARIES FluidSynth_INCLUDE_DIRS
|
||||||
|
VERSION_VAR FluidSynth_VERSION
|
||||||
if(FluidSynth_FOUND)
|
|
||||||
if(NOT TARGET FluidSynth::libfluidsynth)
|
|
||||||
add_library(FluidSynth::libfluidsynth ${_fluidsynth_library_type} IMPORTED)
|
|
||||||
set_target_properties(
|
|
||||||
FluidSynth::libfluidsynth
|
|
||||||
PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${FluidSynth_INCLUDE_DIR}"
|
|
||||||
INTERFACE_COMPILE_OPTIONS "${_fluidsynth_compile_options}"
|
|
||||||
INTERFACE_LINK_LIBRARIES "${_fluidsynth_link_libraries}"
|
|
||||||
INTERFACE_LINK_DIRECTORIES "${_fluidsynth_link_directories}"
|
|
||||||
INTERFACE_LINK_OPTIONS "${_fluidsynth_link_options}"
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(FluidSynth_DLL)
|
|
||||||
set_target_properties(
|
|
||||||
FluidSynth::libfluidsynth
|
|
||||||
PROPERTIES IMPORTED_LOCATION "${FluidSynth_DLL}"
|
|
||||||
IMPORTED_IMPLIB "${FluidSynth_LIBRARY}"
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
set_target_properties(
|
|
||||||
FluidSynth::libfluidsynth
|
|
||||||
PROPERTIES IMPORTED_LOCATION "${FluidSynth_LIBRARY}"
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(FluidSynth_LIBRARIES FluidSynth::libfluidsynth)
|
|
||||||
set(FluidSynth_INCLUDE_DIRS "${FluidSynth_INCLUDE_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(
|
|
||||||
FluidSynth_INCLUDE_DIR
|
|
||||||
FluidSynth_DLL
|
|
||||||
FluidSynth_LIBRARY
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(FluidSynth_FOUND AND NOT TARGET FluidSynth::libfluidsynth)
|
||||||
|
add_library(FluidSynth::libfluidsynth UNKNOWN IMPORTED)
|
||||||
|
set_target_properties(FluidSynth::libfluidsynth PROPERTIES
|
||||||
|
IMPORTED_LOCATION "${FluidSynth_LIBRARIES}"
|
||||||
|
INTERFACE_INCLUDE_DIRECTORIES "${FluidSynth_INCLUDE_DIRS}"
|
||||||
|
)
|
||||||
|
if(WIN32 AND FluidSynth_DIR)
|
||||||
|
# On Windows, we need to figure out the location of our library files
|
||||||
|
# so we can copy and package them.
|
||||||
|
set(FluidSynth_DLL_DIR "${FluidSynth_DIR}/bin" CACHE INTERNAL "")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user