cmake_minimum_required(VERSION 3.1)
project(codon_optimizer CXX)
if (APPLE) 
  cmake_policy(SET CMP0063 NEW)
  set(CMAKE_CXX_STANDARD 11)
  set(CMAKE_OSX_ARCHITECTURES "arm64;x86_64")
  set(CMAKE_OSX_DEPLOYMENT_TARGET 10.15)
  set(Boost_LIBRARY_DIR ${PROJECT_SOURCE_DIR}/boost_1_69_0/stage/lib/mac)
else()
  set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
  set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
  set(Boost_LIBRARY_DIR ${PROJECT_SOURCE_DIR}/boost_1_69_0/stage/lib/win)
endif()
set(Boost_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/boost_1_69_0)
set(Boost_USE_STATIC_LIBS ON)
find_package(Boost COMPONENTS system program_options chrono timer REQUIRED)
include_directories(${Boost_INCLUDE_DIR})
link_directories(${Boost_LIBRARY_DIR})
add_executable(codon_optimizer src/codon_optimizer.cc)
set_property(TARGET codon_optimizer PROPERTY CXX_VISIBILITY_PRESET hidden)
set_property(TARGET codon_optimizer PROPERTY VISIBILITY_INLINES_HIDDEN ON)
target_link_libraries(codon_optimizer LINK_PUBLIC ${Boost_LIBRARIES})
