Skip to content

Commit

Permalink
Updates cmake and scons to be able to compile with OGL.
Browse files Browse the repository at this point in the history
  • Loading branch information
Pentarctagon authored and jyrkive committed Sep 27, 2018
1 parent 6e9576a commit 4db3d91
Show file tree
Hide file tree
Showing 3 changed files with 78 additions and 12 deletions.
11 changes: 0 additions & 11 deletions .travis.yml
Expand Up @@ -42,14 +42,3 @@ install:

script:
- ./utils/travis/steps/script.sh

notifications:
email: false
irc:
channels:
- "chat.freenode.net#wesnoth-dev"
template:
- "\x02%{repository}\x0f#\x0312%{build_number}\x0f (\x0307%{branch}\x0f - \x02%{commit}\x0f : \x0303%{author}\x0f): \x02%{message}\x0f"
- "Build details : \x0302%{build_url}\x0f"
on_success: change
on_failure: always
10 changes: 9 additions & 1 deletion SConstruct
Expand Up @@ -413,6 +413,14 @@ if env["prereqs"]:
if env["history"]:
client_env.Append(CPPDEFINES = ["HAVE_HISTORY"])

if env["PLATFORM"] == 'darwin':
client_env.Append(FRAMEWORKS = "OpenGL")
client_env.AppendUnique(LIBS = ["GLEW"])
elif env["PLATFORM"] == 'posix':
opengl_config = check_output(["pkg-config", "--libs", "--cflags", "gl", "glew"])
opengl_flags = client_env.ParseFlags(opengl_config)
client_env.MergeFlags(opengl_flags)

if env["forum_user_handler"]:
mysql_config = check_output(["mysql_config", "--libs", "--cflags"]).replace("\n", " ").replace("-DNDEBUG", "")
mysql_flags = env.ParseFlags(mysql_config)
Expand Down Expand Up @@ -864,7 +872,7 @@ env.Command("wesnoth-deps.dot", [],
env.Command("wesnoth-deps.png", "wesnoth-deps.dot",
"dot -Tpng -o ${TARGET} ${SOURCE}")
env.Clean(all, ["wesnoth-deps.dot", "wesnoth-deps.png"])

print(env.Dump())
# Local variables:
# mode: python
# end:
69 changes: 69 additions & 0 deletions cmake/FindGLEW.make
@@ -0,0 +1,69 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.

#.rst:
# FindGLEW
# --------
#
# Find the OpenGL Extension Wrangler Library (GLEW)
#
# IMPORTED Targets
# ^^^^^^^^^^^^^^^^
#
# This module defines the :prop_tgt:`IMPORTED` target ``GLEW::GLEW``,
# if GLEW has been found.
#
# Result Variables
# ^^^^^^^^^^^^^^^^
#
# This module defines the following variables:
#
# ::
#
# GLEW_INCLUDE_DIRS - include directories for GLEW
# GLEW_LIBRARIES - libraries to link against GLEW
# GLEW_FOUND - true if GLEW has been found and can be used

find_path(GLEW_INCLUDE_DIR GL/glew.h)

if(NOT GLEW_LIBRARY)
find_library(GLEW_LIBRARY_RELEASE NAMES GLEW glew32 glew glew32s PATH_SUFFIXES lib64 libx32)
find_library(GLEW_LIBRARY_DEBUG NAMES GLEWd glew32d glewd PATH_SUFFIXES lib64)

include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake)
select_library_configurations(GLEW)
endif ()

include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
find_package_handle_standard_args(GLEW
REQUIRED_VARS GLEW_INCLUDE_DIR GLEW_LIBRARY)

if(GLEW_FOUND)
set(GLEW_INCLUDE_DIRS ${GLEW_INCLUDE_DIR})

if(NOT GLEW_LIBRARIES)
set(GLEW_LIBRARIES ${GLEW_LIBRARY})
endif()

if (NOT TARGET GLEW::GLEW)
add_library(GLEW::GLEW UNKNOWN IMPORTED)
set_target_properties(GLEW::GLEW PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${GLEW_INCLUDE_DIRS}")

if(GLEW_LIBRARY_RELEASE)
set_property(TARGET GLEW::GLEW APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
set_target_properties(GLEW::GLEW PROPERTIES IMPORTED_LOCATION_RELEASE "${GLEW_LIBRARY_RELEASE}")
endif()

if(GLEW_LIBRARY_DEBUG)
set_property(TARGET GLEW::GLEW APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
set_target_properties(GLEW::GLEW PROPERTIES IMPORTED_LOCATION_DEBUG "${GLEW_LIBRARY_DEBUG}")
endif()

if(NOT GLEW_LIBRARY_RELEASE AND NOT GLEW_LIBRARY_DEBUG)
set_property(TARGET GLEW::GLEW APPEND PROPERTY IMPORTED_LOCATION "${GLEW_LIBRARY}")
endif()
endif()
endif()

mark_as_advanced(GLEW_INCLUDE_DIR)

0 comments on commit 4db3d91

Please sign in to comment.