cmake_minimum_required(VERSION 3.5)

set(CMAKE_AUTOUIC OFF)
set(CMAKE_AUTOMOC OFF)
set(CMAKE_AUTORCC OFF)

# Target "polaris"
project(polaris VERSION 0.1 LANGUAGES C)

# Preprocessor macros
add_compile_definitions(
  USE_EDITOR
  USE_QT
)

# Use libraries
include_directories(/usr/include/libpng)
include_directories(/usr/include/freetype2)
include_directories(/usr/local/include)
include_directories(/usr/local/include/freetype2)

# Base source files
set(PROJECT_SOURCES
  # HAL
  glrender.h
  glrender.c
  asound.h
  asound.c

  # CORE
  anime.h
  anime.c
  conf.h
  conf.c
  ciel.h
  ciel.c
  event.h
  event.c
  file.h
  file.c
  glyph.h
  glyph.c
  gui.h
  gui.c
  history.h
  history.c
  image.h
  image.c
  log.h
  log.c
  main.h
  main.c
  mixer.c
  package.h
  package.c
  readimage.c
  readpng.c
  readjpeg.c
  readwebp.c
  save.h
  save.c
  scbuf.h
  scbuf.c
  script.h
  script.c
  seen.h
  seen.c
  stage.h
  stage.c
  uimsg.h
  uimsg.c
  vars.h
  vars.c
  wave.h
  wave.c
  wms.h
  wms_core.c
  wms_impl.c
  wms_lexer.yy.c
  wms_parser.tab.h
  wms_parser.tab.c
  cmd_anime.c
  cmd_bg.c
  cmd_bgm.c
  cmd_ch.c
  cmd_cha.c
  cmd_chapter.c
  cmd_chs.c
  cmd_click.c
  cmd_gosub.c
  cmd_goto.c
  cmd_gui.c
  cmd_if.c
  cmd_layer.c
  cmd_load.c
  cmd_message.c
  cmd_pencil.c
  cmd_return.c
  cmd_se.c
  cmd_set.c
  cmd_setconfig.c
  cmd_setsave.c
  cmd_shake.c
  cmd_skip.c
  cmd_switch.c
  cmd_video.c
  cmd_vol.c
  cmd_wait.c
  cmd_wms.c
)

# Target
add_library(
  polaris
  STATIC
  ${PROJECT_SOURCES}
)

# libogg
add_subdirectory(libogg)
include_directories(libogg/include)

# libvorbis
set(OGG_INCLUDE_DIR libogg/include)
add_subdirectory(libvorbis)
include_directories(libvorbis/include)
