mirror of
https://github.com/blendogames/quadrilateralcowboy.git
synced 2024-11-10 06:41:36 +00:00
505 lines
13 KiB
Text
505 lines
13 KiB
Text
|
# CMake File for Quadrilateral Cowboy (Because scons and Xcode are butt)
|
||
|
# Written by Ethan "flibitijibibo" Lee
|
||
|
|
||
|
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12)
|
||
|
PROJECT(QuadrilateralCowboy)
|
||
|
|
||
|
# CMake Options
|
||
|
OPTION(STEAM "Enable Steamworks" OFF)
|
||
|
|
||
|
# Compiler Flags
|
||
|
ADD_COMPILE_OPTIONS(
|
||
|
-pipe
|
||
|
-Wno-unknown-pragmas
|
||
|
-Wno-write-strings
|
||
|
-fmessage-length=0
|
||
|
-fpermissive
|
||
|
-fvisibility=hidden
|
||
|
-fno-strict-aliasing
|
||
|
)
|
||
|
ADD_DEFINITIONS(-D_D3XP -DCTF -DID_ENABLE_CURL=0 -DUSE_SDL -DXTHREADS)
|
||
|
IF(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||
|
ADD_DEFINITIONS(-D_DEBUG -DID_MCHECK)
|
||
|
ELSEIF(CMAKE_BUILD_TYPE STREQUAL "Release")
|
||
|
ADD_COMPILE_OPTIONS(
|
||
|
-Winline
|
||
|
-ffast-math
|
||
|
-fno-unsafe-math-optimizations
|
||
|
-fomit-frame-pointer
|
||
|
)
|
||
|
ENDIF()
|
||
|
IF(STEAM)
|
||
|
ADD_DEFINITIONS(-DSTEAM)
|
||
|
INCLUDE_DIRECTORIES(steam)
|
||
|
LINK_DIRECTORIES(steam)
|
||
|
ENDIF()
|
||
|
|
||
|
# RPATH
|
||
|
IF(APPLE)
|
||
|
SET(CMAKE_OSX_SYSROOT /Library/Developer/CommandLineTools/SDKs/MacOSX10.8.sdk)
|
||
|
SET(CMAKE_OSX_DEPLOYMENT_TARGET 10.8)
|
||
|
SET(BIN_LIBROOT "osx")
|
||
|
SET(BIN_RPATH "@executable_path/osx")
|
||
|
ADD_DEFINITIONS(-DMACOS_X) # WTF? -flibit
|
||
|
ELSE()
|
||
|
SET(BIN_LIBROOT "lib64")
|
||
|
SET(BIN_RPATH "\$ORIGIN/lib64")
|
||
|
ENDIF()
|
||
|
SET(CMAKE_SKIP_BUILD_RPATH TRUE)
|
||
|
SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
|
||
|
SET(CMAKE_INSTALL_RPATH ${BIN_RPATH})
|
||
|
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
|
||
|
|
||
|
# Include Directories
|
||
|
INCLUDE_DIRECTORIES(. sound/OggVorbis/vorbissrc/)
|
||
|
|
||
|
# Source Lists
|
||
|
SET(QC_SRC
|
||
|
renderer/jpeg-6/jcapimin.c
|
||
|
renderer/jpeg-6/jccoefct.c
|
||
|
renderer/jpeg-6/jccolor.c
|
||
|
renderer/jpeg-6/jcdctmgr.c
|
||
|
renderer/jpeg-6/jchuff.c
|
||
|
renderer/jpeg-6/jcinit.c
|
||
|
renderer/jpeg-6/jcmainct.c
|
||
|
renderer/jpeg-6/jcmarker.c
|
||
|
renderer/jpeg-6/jcmaster.c
|
||
|
renderer/jpeg-6/jcomapi.c
|
||
|
renderer/jpeg-6/jcparam.c
|
||
|
renderer/jpeg-6/jcphuff.c
|
||
|
renderer/jpeg-6/jcprepct.c
|
||
|
renderer/jpeg-6/jcsample.c
|
||
|
renderer/jpeg-6/jdapimin.c
|
||
|
renderer/jpeg-6/jdapistd.c
|
||
|
renderer/jpeg-6/jdatadst.c
|
||
|
renderer/jpeg-6/jdatasrc.c
|
||
|
renderer/jpeg-6/jdcoefct.c
|
||
|
renderer/jpeg-6/jdcolor.c
|
||
|
renderer/jpeg-6/jddctmgr.c
|
||
|
renderer/jpeg-6/jdhuff.c
|
||
|
renderer/jpeg-6/jdinput.c
|
||
|
renderer/jpeg-6/jdmainct.c
|
||
|
renderer/jpeg-6/jdmarker.c
|
||
|
renderer/jpeg-6/jdmaster.c
|
||
|
renderer/jpeg-6/jdmerge.c
|
||
|
renderer/jpeg-6/jdphuff.c
|
||
|
renderer/jpeg-6/jdpostct.c
|
||
|
renderer/jpeg-6/jdsample.c
|
||
|
renderer/jpeg-6/jdtrans.c
|
||
|
renderer/jpeg-6/jerror.c
|
||
|
renderer/jpeg-6/jfdctflt.c
|
||
|
renderer/jpeg-6/jfdctfst.c
|
||
|
renderer/jpeg-6/jfdctint.c
|
||
|
renderer/jpeg-6/jidctflt.c
|
||
|
renderer/jpeg-6/jidctfst.c
|
||
|
renderer/jpeg-6/jidctint.c
|
||
|
renderer/jpeg-6/jidctred.c
|
||
|
renderer/jpeg-6/jmemmgr.c
|
||
|
renderer/jpeg-6/jmemnobs.c
|
||
|
renderer/jpeg-6/jquant1.c
|
||
|
renderer/jpeg-6/jquant2.c
|
||
|
renderer/jpeg-6/jutils.c
|
||
|
sound/OggVorbis/oggsrc/bitwise.c
|
||
|
sound/OggVorbis/oggsrc/framing.c
|
||
|
sound/OggVorbis/vorbissrc/analysis.c
|
||
|
sound/OggVorbis/vorbissrc/bitrate.c
|
||
|
sound/OggVorbis/vorbissrc/block.c
|
||
|
sound/OggVorbis/vorbissrc/codebook.c
|
||
|
sound/OggVorbis/vorbissrc/envelope.c
|
||
|
sound/OggVorbis/vorbissrc/floor0.c
|
||
|
sound/OggVorbis/vorbissrc/floor1.c
|
||
|
sound/OggVorbis/vorbissrc/info.c
|
||
|
sound/OggVorbis/vorbissrc/lookup.c
|
||
|
sound/OggVorbis/vorbissrc/lpc.c
|
||
|
sound/OggVorbis/vorbissrc/lsp.c
|
||
|
sound/OggVorbis/vorbissrc/mapping0.c
|
||
|
sound/OggVorbis/vorbissrc/mdct.c
|
||
|
sound/OggVorbis/vorbissrc/psy.c
|
||
|
sound/OggVorbis/vorbissrc/registry.c
|
||
|
sound/OggVorbis/vorbissrc/res0.c
|
||
|
sound/OggVorbis/vorbissrc/sharedbook.c
|
||
|
sound/OggVorbis/vorbissrc/smallft.c
|
||
|
sound/OggVorbis/vorbissrc/synthesis.c
|
||
|
sound/OggVorbis/vorbissrc/vorbisenc.c
|
||
|
sound/OggVorbis/vorbissrc/vorbisfile.c
|
||
|
sound/OggVorbis/vorbissrc/windowvb.c
|
||
|
renderer/Cinematic.cpp
|
||
|
renderer/GuiModel.cpp
|
||
|
renderer/Image_files.cpp
|
||
|
renderer/Image_init.cpp
|
||
|
renderer/Image_load.cpp
|
||
|
renderer/Image_process.cpp
|
||
|
renderer/Image_program.cpp
|
||
|
renderer/Interaction.cpp
|
||
|
renderer/Material.cpp
|
||
|
renderer/MegaTexture.cpp
|
||
|
renderer/Model.cpp
|
||
|
renderer/ModelDecal.cpp
|
||
|
renderer/ModelManager.cpp
|
||
|
renderer/ModelOverlay.cpp
|
||
|
renderer/Model_beam.cpp
|
||
|
renderer/Model_ase.cpp
|
||
|
renderer/Model_liquid.cpp
|
||
|
renderer/Model_lwo.cpp
|
||
|
renderer/Model_ma.cpp
|
||
|
renderer/Model_md3.cpp
|
||
|
renderer/Model_md5.cpp
|
||
|
renderer/Model_prt.cpp
|
||
|
renderer/Model_sprite.cpp
|
||
|
renderer/RenderEntity.cpp
|
||
|
renderer/RenderSystem.cpp
|
||
|
renderer/RenderSystem_init.cpp
|
||
|
renderer/RenderWorld.cpp
|
||
|
renderer/RenderWorld_demo.cpp
|
||
|
renderer/RenderWorld_load.cpp
|
||
|
renderer/RenderWorld_portals.cpp
|
||
|
renderer/VertexCache.cpp
|
||
|
renderer/cg_explicit.cpp
|
||
|
renderer/draw_arb.cpp
|
||
|
renderer/draw_arb2.cpp
|
||
|
renderer/draw_common.cpp
|
||
|
renderer/draw_exp_stub.cpp
|
||
|
renderer/draw_nv10.cpp
|
||
|
renderer/draw_nv20.cpp
|
||
|
renderer/draw_r200.cpp
|
||
|
renderer/tr_backend.cpp
|
||
|
renderer/tr_deform.cpp
|
||
|
renderer/tr_font.cpp
|
||
|
renderer/tr_guisurf.cpp
|
||
|
renderer/tr_light.cpp
|
||
|
renderer/tr_lightrun.cpp
|
||
|
renderer/tr_main.cpp
|
||
|
renderer/tr_orderIndexes.cpp
|
||
|
renderer/tr_polytope.cpp
|
||
|
renderer/tr_render.cpp
|
||
|
renderer/tr_rendertools.cpp
|
||
|
renderer/tr_shadowbounds.cpp
|
||
|
renderer/tr_stencilshadow.cpp
|
||
|
renderer/tr_subview.cpp
|
||
|
renderer/tr_trace.cpp
|
||
|
renderer/tr_trisurf.cpp
|
||
|
renderer/tr_turboshadow.cpp
|
||
|
framework/CVarSystem.cpp
|
||
|
framework/CmdSystem.cpp
|
||
|
framework/Common.cpp
|
||
|
framework/Compressor.cpp
|
||
|
framework/Console.cpp
|
||
|
framework/DemoFile.cpp
|
||
|
framework/DeclAF.cpp
|
||
|
framework/DeclEntityDef.cpp
|
||
|
framework/DeclFX.cpp
|
||
|
framework/DeclManager.cpp
|
||
|
framework/DeclParticle.cpp
|
||
|
framework/DeclPDA.cpp
|
||
|
framework/DeclSkin.cpp
|
||
|
framework/DeclTable.cpp
|
||
|
framework/EditField.cpp
|
||
|
framework/EventLoop.cpp
|
||
|
framework/File.cpp
|
||
|
framework/FileSystem.cpp
|
||
|
framework/KeyInput.cpp
|
||
|
framework/Unzip.cpp
|
||
|
framework/UsercmdGen.cpp
|
||
|
framework/Session_menu.cpp
|
||
|
framework/Session.cpp
|
||
|
framework/async/AsyncClient.cpp
|
||
|
framework/async/AsyncNetwork.cpp
|
||
|
framework/async/AsyncServer.cpp
|
||
|
framework/async/MsgChannel.cpp
|
||
|
framework/async/NetworkSystem.cpp
|
||
|
framework/async/ServerScan.cpp
|
||
|
cm/CollisionModel_contacts.cpp
|
||
|
cm/CollisionModel_contents.cpp
|
||
|
cm/CollisionModel_debug.cpp
|
||
|
cm/CollisionModel_files.cpp
|
||
|
cm/CollisionModel_load.cpp
|
||
|
cm/CollisionModel_rotate.cpp
|
||
|
cm/CollisionModel_trace.cpp
|
||
|
cm/CollisionModel_translate.cpp
|
||
|
tools/compilers/dmap/dmap.cpp
|
||
|
tools/compilers/dmap/facebsp.cpp
|
||
|
tools/compilers/dmap/gldraw.cpp
|
||
|
tools/compilers/dmap/glfile.cpp
|
||
|
tools/compilers/dmap/leakfile.cpp
|
||
|
tools/compilers/dmap/map.cpp
|
||
|
tools/compilers/dmap/optimize.cpp
|
||
|
tools/compilers/dmap/output.cpp
|
||
|
tools/compilers/dmap/portals.cpp
|
||
|
tools/compilers/dmap/shadowopt3.cpp
|
||
|
tools/compilers/dmap/tritjunction.cpp
|
||
|
tools/compilers/dmap/tritools.cpp
|
||
|
tools/compilers/dmap/ubrush.cpp
|
||
|
tools/compilers/dmap/usurface.cpp
|
||
|
tools/compilers/dmap/optimize_gcc.cpp
|
||
|
tools/compilers/aas/AASBuild.cpp
|
||
|
tools/compilers/aas/AASBuild_file.cpp
|
||
|
tools/compilers/aas/AASBuild_gravity.cpp
|
||
|
tools/compilers/aas/AASBuild_ledge.cpp
|
||
|
tools/compilers/aas/AASBuild_merge.cpp
|
||
|
tools/compilers/aas/AASCluster.cpp
|
||
|
tools/compilers/aas/AASFile.cpp
|
||
|
tools/compilers/aas/AASFile_optimize.cpp
|
||
|
tools/compilers/aas/AASFile_sample.cpp
|
||
|
tools/compilers/aas/AASReach.cpp
|
||
|
tools/compilers/aas/AASFileManager.cpp
|
||
|
tools/compilers/aas/Brush.cpp
|
||
|
tools/compilers/aas/BrushBSP.cpp
|
||
|
tools/compilers/roqvq/NSBitmapImageRep.cpp
|
||
|
tools/compilers/roqvq/codec.cpp
|
||
|
tools/compilers/roqvq/roq.cpp
|
||
|
tools/compilers/roqvq/roqParam.cpp
|
||
|
tools/compilers/renderbump/renderbump.cpp
|
||
|
sound/snd_cache.cpp
|
||
|
sound/snd_decoder.cpp
|
||
|
sound/snd_efxfile.cpp
|
||
|
sound/snd_emitter.cpp
|
||
|
sound/snd_shader.cpp
|
||
|
sound/snd_system.cpp
|
||
|
sound/snd_wavefile.cpp
|
||
|
sound/snd_world.cpp
|
||
|
ui/BindWindow.cpp
|
||
|
ui/ChoiceWindow.cpp
|
||
|
ui/DeviceContext.cpp
|
||
|
ui/EditWindow.cpp
|
||
|
ui/FieldWindow.cpp
|
||
|
ui/GameBearShootWindow.cpp
|
||
|
ui/GameBustOutWindow.cpp
|
||
|
ui/GameSSDWindow.cpp
|
||
|
ui/gamelaserduckwindow.cpp
|
||
|
ui/GuiScript.cpp
|
||
|
ui/ListGUI.cpp
|
||
|
ui/ListWindow.cpp
|
||
|
ui/MarkerWindow.cpp
|
||
|
ui/RegExp.cpp
|
||
|
ui/RenderWindow.cpp
|
||
|
ui/SimpleWindow.cpp
|
||
|
ui/SliderWindow.cpp
|
||
|
ui/UserInterface.cpp
|
||
|
ui/Window.cpp
|
||
|
ui/Winvar.cpp
|
||
|
idlib/bv/Bounds.cpp
|
||
|
idlib/bv/Frustum.cpp
|
||
|
idlib/bv/Sphere.cpp
|
||
|
idlib/bv/Box.cpp
|
||
|
idlib/geometry/DrawVert.cpp
|
||
|
idlib/geometry/Winding2D.cpp
|
||
|
idlib/geometry/Surface_SweptSpline.cpp
|
||
|
idlib/geometry/Winding.cpp
|
||
|
idlib/geometry/Surface.cpp
|
||
|
idlib/geometry/Surface_Patch.cpp
|
||
|
idlib/geometry/TraceModel.cpp
|
||
|
idlib/geometry/JointTransform.cpp
|
||
|
idlib/hashing/CRC32.cpp
|
||
|
idlib/hashing/MD4.cpp
|
||
|
idlib/hashing/MD5.cpp
|
||
|
idlib/math/Angles.cpp
|
||
|
idlib/math/Lcp.cpp
|
||
|
idlib/math/idMath.cpp
|
||
|
idlib/math/Matrix.cpp
|
||
|
idlib/math/Ode.cpp
|
||
|
idlib/math/Plane.cpp
|
||
|
idlib/math/Pluecker.cpp
|
||
|
idlib/math/Polynomial.cpp
|
||
|
idlib/math/Quat.cpp
|
||
|
idlib/math/Rotation.cpp
|
||
|
idlib/math/Simd.cpp
|
||
|
idlib/math/Simd_Generic.cpp
|
||
|
idlib/math/Vector.cpp
|
||
|
idlib/BitMsg.cpp
|
||
|
idlib/LangDict.cpp
|
||
|
idlib/Lexer.cpp
|
||
|
idlib/Lib.cpp
|
||
|
idlib/containers/HashIndex.cpp
|
||
|
idlib/Dict.cpp
|
||
|
idlib/Str.cpp
|
||
|
idlib/Parser.cpp
|
||
|
idlib/MapFile.cpp
|
||
|
idlib/CmdArgs.cpp
|
||
|
idlib/Token.cpp
|
||
|
idlib/Base64.cpp
|
||
|
idlib/Timer.cpp
|
||
|
idlib/Heap.cpp
|
||
|
d3xp/AF.cpp
|
||
|
d3xp/AFEntity.cpp
|
||
|
d3xp/Actor.cpp
|
||
|
d3xp/Camera.cpp
|
||
|
d3xp/Entity.cpp
|
||
|
d3xp/BrittleFracture.cpp
|
||
|
d3xp/Fx.cpp
|
||
|
d3xp/GameEdit.cpp
|
||
|
d3xp/Game_local.cpp
|
||
|
d3xp/Game_network.cpp
|
||
|
d3xp/Item.cpp
|
||
|
d3xp/IK.cpp
|
||
|
d3xp/Light.cpp
|
||
|
d3xp/Misc.cpp
|
||
|
d3xp/Mover.cpp
|
||
|
d3xp/Moveable.cpp
|
||
|
d3xp/MultiplayerGame.cpp
|
||
|
d3xp/Player.cpp
|
||
|
d3xp/PlayerIcon.cpp
|
||
|
d3xp/PlayerView.cpp
|
||
|
d3xp/Projectile.cpp
|
||
|
d3xp/Pvs.cpp
|
||
|
d3xp/SecurityCamera.cpp
|
||
|
d3xp/SmokeParticles.cpp
|
||
|
d3xp/Sound.cpp
|
||
|
d3xp/Target.cpp
|
||
|
d3xp/Trigger.cpp
|
||
|
d3xp/Weapon.cpp
|
||
|
d3xp/WorldSpawn.cpp
|
||
|
d3xp/ai/AAS.cpp
|
||
|
d3xp/ai/AAS_debug.cpp
|
||
|
d3xp/ai/AAS_pathing.cpp
|
||
|
d3xp/ai/AAS_routing.cpp
|
||
|
d3xp/ai/AI.cpp
|
||
|
d3xp/ai/AI_events.cpp
|
||
|
d3xp/ai/AI_pathing.cpp
|
||
|
d3xp/ai/AI_Vagary.cpp
|
||
|
d3xp/gamesys/DebugGraph.cpp
|
||
|
d3xp/gamesys/Class.cpp
|
||
|
d3xp/gamesys/Event.cpp
|
||
|
d3xp/gamesys/SaveGame.cpp
|
||
|
d3xp/gamesys/SysCmds.cpp
|
||
|
d3xp/gamesys/SysCvar.cpp
|
||
|
d3xp/gamesys/TypeInfo.cpp
|
||
|
d3xp/anim/Anim.cpp
|
||
|
d3xp/anim/Anim_Blend.cpp
|
||
|
d3xp/anim/Anim_Import.cpp
|
||
|
d3xp/anim/Anim_Testmodel.cpp
|
||
|
d3xp/script/Script_Compiler.cpp
|
||
|
d3xp/script/Script_Interpreter.cpp
|
||
|
d3xp/script/Script_Program.cpp
|
||
|
d3xp/script/Script_Thread.cpp
|
||
|
d3xp/physics/Clip.cpp
|
||
|
d3xp/physics/Force.cpp
|
||
|
d3xp/physics/Force_Constant.cpp
|
||
|
d3xp/physics/Force_Drag.cpp
|
||
|
d3xp/physics/Force_Field.cpp
|
||
|
d3xp/physics/Force_Spring.cpp
|
||
|
d3xp/physics/Physics.cpp
|
||
|
d3xp/physics/Physics_AF.cpp
|
||
|
d3xp/physics/Physics_Actor.cpp
|
||
|
d3xp/physics/Physics_Base.cpp
|
||
|
d3xp/physics/Physics_Monster.cpp
|
||
|
d3xp/physics/Physics_Parametric.cpp
|
||
|
d3xp/physics/Physics_Player.cpp
|
||
|
d3xp/physics/Physics_RigidBody.cpp
|
||
|
d3xp/physics/Physics_Static.cpp
|
||
|
d3xp/physics/Physics_StaticMulti.cpp
|
||
|
d3xp/physics/Push.cpp
|
||
|
d3xp/Grabber.cpp
|
||
|
d3xp/physics/Force_Grab.cpp
|
||
|
d3xp/laserwire.cpp
|
||
|
d3xp/panel.cpp
|
||
|
d3xp/picker.cpp
|
||
|
d3xp/turret.cpp
|
||
|
d3xp/rotdoor.cpp
|
||
|
d3xp/sentry.cpp
|
||
|
d3xp/lever.cpp
|
||
|
d3xp/steamstats.cpp
|
||
|
d3xp/itemgate.cpp
|
||
|
d3xp/worldmanager.cpp
|
||
|
d3xp/powerscrewgeneric.cpp
|
||
|
d3xp/camturret.cpp
|
||
|
d3xp/zeppelinbig.cpp
|
||
|
d3xp/keypad.cpp
|
||
|
d3xp/screw.cpp
|
||
|
d3xp/airlock.cpp
|
||
|
d3xp/powersawgeneric.cpp
|
||
|
d3xp/frobcube.cpp
|
||
|
d3xp/weevil.cpp
|
||
|
d3xp/clock.cpp
|
||
|
d3xp/contractcamera.cpp
|
||
|
d3xp/steamleaderboard.cpp
|
||
|
d3xp/steamremote.cpp
|
||
|
d3xp/qglass.cpp
|
||
|
d3xp/trembler.cpp
|
||
|
d3xp/button_switcher.cpp
|
||
|
d3xp/commentary.cpp
|
||
|
d3xp/cybervendor.cpp
|
||
|
d3xp/launcher.cpp
|
||
|
d3xp/bluebox.cpp
|
||
|
d3xp/camerapoint.cpp
|
||
|
d3xp/jellypoint.cpp
|
||
|
d3xp/worldman_moveable.cpp
|
||
|
d3xp/doorfolding.cpp
|
||
|
d3xp/countdowntimer.cpp
|
||
|
d3xp/animloop.cpp
|
||
|
d3xp/tablefold.cpp
|
||
|
TypeInfo/TypeInfoGen.cpp
|
||
|
sys/glimp.cpp
|
||
|
sys/events.cpp
|
||
|
sys/sys_local.cpp
|
||
|
sys/stub/util_stub.cpp
|
||
|
sys/posix/posix_net.cpp
|
||
|
sys/posix/posix_main.cpp
|
||
|
sys/posix/posix_input.cpp
|
||
|
sys/posix/posix_signal.cpp
|
||
|
sys/posix/posix_threads.cpp
|
||
|
sys/linux/stack.cpp
|
||
|
)
|
||
|
IF(APPLE)
|
||
|
SET(QC_SRC
|
||
|
${QC_SRC}
|
||
|
sys/osx/DOOMController.mm
|
||
|
sys/osx/macosx_event.mm
|
||
|
sys/osx/macosx_glimp.mm
|
||
|
sys/osx/macosx_guids.cpp
|
||
|
sys/osx/macosx_misc.mm
|
||
|
sys/osx/macosx_sound.cpp
|
||
|
sys/osx/PickMonitor.cpp
|
||
|
sys/osx/PreferencesDialog.cpp
|
||
|
)
|
||
|
ELSE()
|
||
|
SET(QC_SRC
|
||
|
${QC_SRC}
|
||
|
idlib/bv/Frustum_gcc.cpp
|
||
|
sys/linux/sound_oal.cpp
|
||
|
sys/linux/input.cpp
|
||
|
sys/linux/glimp.cpp
|
||
|
sys/linux/glimp_dlopen.cpp
|
||
|
sys/linux/main.cpp
|
||
|
)
|
||
|
ENDIF()
|
||
|
|
||
|
# Executable information
|
||
|
ADD_EXECUTABLE(qc ${QC_SRC})
|
||
|
|
||
|
# SDL2 Dependency (Detection pulled from FAudio)
|
||
|
if (DEFINED SDL2_INCLUDE_DIRS AND DEFINED SDL2_LIBRARIES)
|
||
|
message(STATUS "using pre-defined SDL2 variables SDL2_INCLUDE_DIRS and SDL2_LIBRARIES")
|
||
|
target_include_directories(qc PUBLIC "$<BUILD_INTERFACE:${SDL2_INCLUDE_DIRS}>")
|
||
|
target_link_libraries(qc PUBLIC ${SDL2_LIBRARIES})
|
||
|
else()
|
||
|
# Only try to autodetect if both SDL2 variables aren't explicitly set
|
||
|
find_package(SDL2 CONFIG)
|
||
|
if (TARGET SDL2::SDL2)
|
||
|
message(STATUS "using TARGET SDL2::SDL2")
|
||
|
target_link_libraries(qc PUBLIC SDL2::SDL2)
|
||
|
elseif (TARGET SDL2)
|
||
|
message(STATUS "using TARGET SDL2")
|
||
|
target_link_libraries(qc PUBLIC SDL2)
|
||
|
else()
|
||
|
message(STATUS "no TARGET SDL2::SDL2, or SDL2, using variables")
|
||
|
target_include_directories(qc PUBLIC "$<BUILD_INTERFACE:${SDL2_INCLUDE_DIRS}>")
|
||
|
target_link_libraries(qc PUBLIC ${SDL2_LIBRARIES})
|
||
|
endif()
|
||
|
endif()
|
||
|
|
||
|
# Other Dependencies
|
||
|
IF(APPLE)
|
||
|
FIND_LIBRARY(OPENGL NAMES OpenGL)
|
||
|
FIND_LIBRARY(OPENAL NAMES OpenAL)
|
||
|
FIND_LIBRARY(COCOA NAMES Cocoa)
|
||
|
FIND_LIBRARY(IOKIT NAMES IOKit)
|
||
|
FIND_LIBRARY(COREAUDIO NAMES CoreAudio)
|
||
|
TARGET_LINK_LIBRARIES(qc PUBLIC objc ${OPENGL} ${OPENAL} ${COCOA} ${IOKIT} ${COREAUDIO})
|
||
|
ELSE()
|
||
|
TARGET_LINK_LIBRARIES(qc PUBLIC openal)
|
||
|
ENDIF()
|
||
|
TARGET_LINK_LIBRARIES(qc PUBLIC dl pthread)
|
||
|
IF(STEAM)
|
||
|
TARGET_LINK_LIBRARIES(qc PUBLIC steam_api)
|
||
|
ENDIF()
|