Git Product home page Git Product logo

kacejot / xray-16 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from openxray/xray-16

0.0 0.0 0.0 120.25 MB

X-Ray Engine 1.6 expansion. Original version was used in S.T.A.L.K.E.R.: Call of Pripyat.

License: Other

CMake 0.68% C++ 77.50% C 18.72% Objective-C 0.39% Cuda 0.09% Makefile 0.35% TeX 0.01% Lua 0.33% Python 0.01% GLSL 0.61% HLSL 0.43% Pascal 0.05% C# 0.28% M4 0.04% Shell 0.44% Perl 0.05% Batchfile 0.02%

xray-16's People

Contributors

a1batross avatar abramcumner avatar andrew-boyarshin avatar avoitishin avatar awdavies avatar casualdev242 avatar crossvr avatar devnexen avatar drug007 avatar eagleivg avatar freezonemods avatar gunslingermod avatar intorr avatar invokr avatar justtails avatar kacejot avatar kaffeine avatar neoanomaly avatar q4a avatar qweasdd136963 avatar rainbowzerg avatar revolucas avatar shokerstlk avatar skyloaderr avatar tamlin-mike avatar vamit611 avatar vincent-t avatar vturbine avatar xottab-duty avatar zegeri avatar

Watchers

 avatar

xray-16's Issues

Add BugTrap and cryptopp as a custom target to CMake tree

Project location: Externals/BugTrap

Feature requirements:

  • BugTrap include directories should be automatically delivered to the target similar to target_include_directories command (If some target is linked with BugTrap, inlude files are added to this target build process automatically)
  • BugTrap binaries should be exported as well: any target that links with BugTrap automatically links necessary libraries.
  • custom target is added only for windows builds

Suggestions:
The best way is to use add_custom_target command similar to this example:

add_custom_target(
    ${PROJECT_NAME} ALL
    COMMAND ${BUILD_SCRIPT}
    WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})

set_property(TARGET  ${PROJECT_NAME} PROPERTY IMPORTED_LOCATION "${BINDIR}/${LIB_NAME}")
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_HEADERS})

Refactor ProblemSolver

  1. Remove problem_solver_inline.h
  2. Move all header files to top
  3. Remove inline qualifier
  4. Decompose this class - it is overloaded

Move to CMake

Now the project has two build systems:

  • CMake - works fine for Linux only
  • Visual Studio solutions and projects

As far as CMake can generate VS projects, the best way will be to use CMake only.

Now CMake on Windows can't even generate project files because of next errors:

CMake Error at CMakeLists.txt:46 (install):
  install called with unknown mode $<TARGET_FILE:luabind>
Call Stack (most recent call first):
  Externals/CMakeLists.txt:3 (xr_install_file)


CMake Error at CMakeLists.txt:52 (install):
  install called with unknown mode $<TARGET_FILE:luabind>
Call Stack (most recent call first):
  Externals/CMakeLists.txt:3 (xr_install_file)

Error occurs here:

install($<TARGET_FILE:${tgt}>
    CONFIGURATIONS Debug
    RUNTIME DESTINATION Debug/)

and here:

install($<TARGET_FILE:${tgt}>
    CONFIGURATIONS Release
    RUNTIME DESTINATION Release/)

I think the reason is that install command requires mode to be filled (source).
So, I need to research which mode is the best one. FILES works, but who knows what the impact is.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.