diff --git a/COMPILING.txt b/COMPILING.txt index b049f58d2..17139577e 100644 --- a/COMPILING.txt +++ b/COMPILING.txt @@ -1,16 +1,11 @@ Table of Contents ================= 1 How to compile Pioneer - 1.1 Linux - 1.1.a Autotools - 1.1.b CMake + 1.1 Linux - CMake 1.2 Windows - MSVC 1.3 Windows - CMake and MSYS2 (and MinGW-w64) - 1.4 Windows - Autotools (Linux cross-compile) - 1.5 OS X - Autotools - 1.6 OS X - Homebrew - 1.7 OS X - CMake and XCode - 1.8 Nix - Autotools + 1.4 OS X - Homebrew + 1.5 OS X - CMake and XCode 2 pioneer-thirdparty 2.1 Linux - Autotools 2.2 Windows - MSVC @@ -28,28 +23,22 @@ Table of Contents Pioneer is known to build on the following platforms and build systems: -Linux: GNU Autotools with GCC or Clang - CMake with GCC or Clang +Linux: CMake with GCC or Clang Windows: Microsoft Visual C++ 2015 (Community or Pro) Microsoft Visual C++ 2017 (Community or Pro) CMake with MSYS2 (and MinGW-w64) -Windows: GNU Autotools with MXE (MinGW GCC) (cross-compile on Linux) -OS X: XCode 4 or Homebrew or GNU Autotools - -The Autotools build system is usually the most up-to-date, and is what is used -to produce the Linux and Windows builds. The others typically lag behind, -depending on the motivation of those using them to keep them up too date with -source file changes. +OS X: XCode 4 or Homebrew or CMake There is an additional repository called pioneer-thirdparty that contains various files that may assist with building. If the instructions for your platforms indicates you may need it, then read the section below for details. If you're having trouble compiling, please ask in #pioneer on -irc.freenode.net. +irc.freenode.net. Most users are available to answer during CET daytime, but +questions are welcome anytime. -1.1 Linux +1.1 Linux - CMake --------- 1. Install the following libraries (with development headers) for your system. @@ -58,47 +47,28 @@ irc.freenode.net. Debian/Ubuntu ------------- g++ - automake - pkg-config - libcurl-dev - libsigc++-dev + cmake + mesa-common-dev + libfreeimage-dev + libglew-dev + libsigc++-2.0 libsigc++-2.0-dev + libvorbis-dev + libassimp-dev >= 3.2 libsdl2-dev libsdl2-image-dev - libfreetype6-dev - libvorbis-dev - libpng-dev - libassimp-dev >= 3.2 - mesa-common-dev - - If you are building with CMake instead of Autotools, you'll need to install - the cmake package instead of the automake package. If your platform doesn't have assimp 3.2, you'll need to build it from source. It's available in pioneer-thirdparty, see below. -1.1.a Linux - Autotools ------------------------ +2. Run './bootstrap' to generate CMake build files in the 'build' folder. + For advanced users, this command passes any additional arguments to the + CMake process. -1. Run ./bootstrap to generate your 'configure' file +3. Run 'make -C build -jX', where X is the number of CPU cores you have. If in + doubt, 4 is a good default. This will compile the pioneer executable. -2. Run ./configure to configure the build. If you're using the - pioneer-thirdparty repository, pass - --with-thirdparty=/path/to/pioneer-thirdparty to configure. - -3. Run make to build everything - -1.1.b Linux - CMake -------------------- - -1. Run './bootstrap cmake' to generate CMake build files in the 'build' folder. - -2. Either run 'cd build; make -jX' or 'cmake --build ./build -j X', where X is - the number of CPU cores you have. If in doubt, 4 is a good default. - -3. To run pioneer, you will need to use the invocation './build/pioneer' from - the project root. Just running ./pioneer will invoke the autotools build - process. +4. Run `./pioneer` to start the game! 1.2 Windows - MSVC ------------------ @@ -122,7 +92,7 @@ irc.freenode.net. 2. Install MinGW-w64 from MSYS2. Use the mingw64 shell. 3. Install the dependencies (similar to dependencies of Linux) using the - 'pacman' command. Note: you should install the dependencies from the + 'pacman' command. Note: you should install the dependencies from the MinGW-w64 repository. 4. Additionally, install GLEW. @@ -137,70 +107,7 @@ irc.freenode.net. 7. Now, you can go back to the root directory of Pioneer and do './build/pioneer.exe' to play the game. -1.4 Windows - Autotools (Linux cross-compile) ---------------------------------------------- - -1. First you need a cross-compiling environment. We use MXE (http://mxe.cc). - - git clone git://github.com/mxe/mxe.git - - Now compile GCC and the dependencies needed for Pioneer: - - make gcc freetype sdl2 sdl2_image vorbis libsigc++ assimp curl - -2. Now you can build Pioneer. Run ./bootstrap to generate your 'configure' - file. - -3. Run configure to configure the build: - - ./configure --with-mxe=/path/to/mxe - -4. Run make to build everything - - -1.5 OS X - Autotools --------------------- - -1. Install XCode (free download from apple). This will install the required - compilers and other commandline tools. - -2. You will need the following libraries installed. The best method I found - was to install macports (http://www.macports.org/) and install the - following ports (sudo port install xxxx): - - assimp - pkgconfig - freetype - libsdl2 - libsdl2_image - libsdl2_sound - libsigcxx2 - libvorbis - autoconf - automake - -3. Run ./bootstrap to generate your 'configure' file - -4. By default the OpenGL frameworks don't seem to be visible to 'automake' - way so I did a few tricks to get it working: - - Create a symlink from the OpenGL framework to your /usr/local/include - directory - - sudo ln -s /System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/ /usr/local/include/GL - -5. Instead of running ./configure run it with this command line: - - LDFLAGS="-L/System/Library/Frameworks/OpenGL.framework/Libraries -L/System/Library/Frameworks/GLUT.framework" ./configure - -6. Now you can run make as per normal. :) - -Note: Compiling from source this way isn't recommended as it doesn't allow you - to 'install' the application into a different location (pioneer.app - bundle). It also isn't the 'Apple way', To do that you need to use XCode. - - -1.6 OS X - Homebrew +1.4 OS X - Homebrew ------------------- 1. Install Homebrew package manager (http://brew.sh/) if you don't have one yet. @@ -219,7 +126,7 @@ Note: Compiling from source this way isn't recommended as it doesn't allow you brew install --HEAD pioneer -1.7 OS X - CMake and XCode +1.5 OS X - CMake and XCode -------------------------- THESE INSTRUCTIONS ARE APPROXIMATE AND ARE UNTESTED; PLEASE SUBMIT CORRECTIONS! @@ -236,26 +143,6 @@ THESE INSTRUCTIONS ARE APPROXIMATE AND ARE UNTESTED; PLEASE SUBMIT CORRECTIONS! 5. Open the project in XCode and build 'pioneer'. -1.8 Nix - Autotools -------------------- - -1. Install nix-shell. - -2. Install and load the development environment using the included expressions. - - nix-shell nix/env.nix # build, install and load the environment - -3. Run ./bootstrap to generate your 'configure' file. - -4. Run ./configure to configure the build. - -5. Run make to build everything - -6. Exit the development environment by exiting the shell. - -Executing ./pioneer requires the development environment to be loaded, -executing ./src/pioneer does not. - 2 pioneer-thirdparty ==================== @@ -267,16 +154,21 @@ The pioneer-thirdparty repository contains: To get it, clone git://github.com/pioneerspacesim/pioneer-thirdparty.git. -2.1 Linux - Autotools +2.1 Linux - Autotools and CMake --------------------- -1. After cloning the repo, run autoconf to generate 'configure'. +1. Clone the thirdparty repo to './pioneer-thirdparty' and 'cd' into it. -2. Run ./configure to configure the build +2. Run 'autoconf' to generate configuration files, then run './configure' to + configure the build. 3. Run make to compile and prepare the named package for use with Pioneer, or just run make alone to build everything. +4. From the pioneer directory, run `./bootstrap thirdparty` to generate a CMake + configuration that builds with the thirdparty libraries. + +5. Build pioneer as described in section 1.1. 2.2 Windows - MSVC ------------------ diff --git a/Makefile.am b/Makefile.am deleted file mode 100644 index 583a38cce..000000000 --- a/Makefile.am +++ /dev/null @@ -1,35 +0,0 @@ -## Process this file with automake to produce Makefile.in -SUBDIRS = contrib $(PLATFORM_SUBDIRS) src data - -PATH := @MXE_PATH@:$(PATH) - -include $(top_srcdir)/Makefile.common - -.PHONY: codedoc -codedoc: - @mkdir -p codedoc - @naturaldocs -i ${top_srcdir}/src/ -i ${top_srcdir}/data/libs/ -xi ${top_srcdir}/src/data/ -o HTML codedoc/ -p ${top_srcdir}/nd/ -do -ro -s Default Local - -.PHONY: enums -enums: - python scripts/scan_enums.py -r --pattern=*.h -o src/enum_table.cpp src - -.PHONY: sgm -sgm: - env SDL_VIDEODRIVER=dummy ./src/modelcompiler$(EXEEXT) -b inplace - -EXTRA_DIST = \ - AUTHORS.txt \ - COMPILING.OSX.txt \ - Changelog.txt \ - Modelviewer.txt \ - Quickstart.txt \ - README.txt \ - licenses/CC-BY-SA-3.0.txt \ - licenses/GPL-3.txt \ - licenses/SIL-1.1.txt \ - bootstrap \ - generic-exec \ - Makefile.common \ - modelviewer \ - pioneer diff --git a/Makefile.common b/Makefile.common deleted file mode 100644 index 3a99490ee..000000000 --- a/Makefile.common +++ /dev/null @@ -1,15 +0,0 @@ -AM_CPPFLAGS = $(EXTRA_CPPFLAGS) -AM_CFLAGS = $(GL_CFLAGS) $(EXTRA_CFLAGS) $(GLEW_CFLAGS) -AM_CXXFLAGS = $(FREETYPE_CFLAGS) $(GL_CFLAGS) \ - $(LUA_CFLAGS) $(SDL2_CFLAGS) $(SIGC_CFLAGS) $(EXTRA_CXXFLAGS) \ - $(LIBPNG_CFLAGS) $(ASSIMP_CFLAGS) $(CURL_CFLAGS) $(GLEW_CFLAGS) \ - -Wno-old-style-cast -CFLAGS += $(OPTIMISE) -CXXFLAGS += $(OPTIMISE) - -if !HAVE_GLEW -AM_CPPFLAGS += -I @top_srcdir@/contrib/glew -endif - -GNU_VERBOSITY := $(if $(findstring GNU,$(shell $(MAKE) -v)),0,1) -V ?= $(GNU_VERBOSITY) diff --git a/bootstrap b/bootstrap index eed5e9d50..4f782c47a 100755 --- a/bootstrap +++ b/bootstrap @@ -1,12 +1,16 @@ #! /bin/bash -if [ -z "$1" ] || [ "$1" == "automake" ]; then - autoreconf -fvi -elif [ "$1" == "cmake" ]; then - shift 1 - mkdir -p build; cd build - cmake .. "$@" -else - echo "Unknown build method $1" - echo "Available options are 'automake' (default) or 'cmake'" +CMAKE_OPTS=("-DCMAKE_EXPORT_COMPILE_COMMANDS=1") + +if [ "$1" = "thirdparty" ]; then + shift 1 + cd pioneer-thirdparty/ && autoconf && ./configure && make assimp && make sdl2 && make sdl2_image && cd ../ + CMAKE_OPTS+=("-DUSE_PIONEER_THIRDPARTY=1") +elif [ "$1" = "cmake" ]; then + shift 1 fi + +CMAKE_OPTS+=("$@") + +mkdir -p build; cd build +cmake .. "${CMAKE_OPTS[@]}" diff --git a/configure.ac b/configure.ac deleted file mode 100644 index 2cdbea525..000000000 --- a/configure.ac +++ /dev/null @@ -1,457 +0,0 @@ -dnl Copyright © 2008-2019 Pioneer Developers. See AUTHORS.txt for details -dnl Licensed under the terms of the GPL v3. See COPYING.txt for details - -dnl Process this file with autoconf to create configure. - -dnl ########################################################################### -dnl Setup -dnl ########################################################################### -AC_PREREQ(2.59) - -AC_INIT([pioneer], [0.00], [pioneer-dev@pioneerspacesim.net]) -dnl AC_CONFIG_HEADERS([config.h]) - -AC_DEFUN([MXE_SETUP], [ - AC_ARG_WITH([mxe], AS_HELP_STRING([--with-mxe], [Path to MXE MinGW environment for cross-building]), [MXE_BASE=$withval], [MXE_BASE=]) - MXE_CROSS= - MXE_CMAKE_TOOLCHAIN_FILE="" - if test "x$MXE_BASE" != "x" ; then - if test "x$host" != "x" ; then - AC_MSG_ERROR([Cannot specify --host with --with-mxe]) - fi - AC_MSG_CHECKING([for MXE]) - MXE_CMAKE_TOOLCHAIN_FILE="$MXE_BASE/usr/i686-w64-mingw32.static/share/cmake/mxe-conf.cmake" - if ! test -f "$MXE_CMAKE_TOOLCHAIN_FILE" ; then - AC_MSG_RESULT([no]) - AC_MSG_ERROR([MXE not found in $MXE_BASE]) - fi - AC_MSG_RESULT([$MXE_BASE]) - MXE_CROSS=yes - MXE_PATH="$MXE_BASE/usr/bin" - PATH="$MXE_PATH:$PATH" - host_alias=i686-w64-mingw32.static - ac_tool_prefix=$host_alias- - cross_compiling=yes - HAVE_WINDRES=yes - MXE_WINDRES="$MXE_BASE/usr/bin/${ac_tool_prefix}windres" - fi - AM_CONDITIONAL([HAVE_WINDRES], [test "$HAVE_WINDRES" = yes]) - AC_SUBST(MXE_BASE) - AC_SUBST(MXE_CROSS) - AC_SUBST(MXE_PATH) - AC_SUBST(MXE_CMAKE_TOOLCHAIN_FILE) - AC_SUBST(MXE_WINDRES) -]) - -MXE_SETUP - -AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2 dist-xz dist-zip subdir-objects]) - -AC_CANONICAL_HOST - -AC_PROG_CC -AC_PROG_CXX -AC_C_CONST -AC_PROG_RANLIB - -AC_DEFUN([AC_PROG_STRIP], [AC_CHECK_TOOL(STRIP, strip, :)]) -AC_PROG_STRIP - -#AC_PROG_LIBTOOL - -dnl Silent compilation by default -AM_SILENT_RULES([yes]) - -dnl ########################################################################### -dnl Flags and options -dnl ########################################################################### - -STD_CXXFLAGS= - -dnl allow extra stuff from environment too -EXTRA_CFLAGS="$CFLAGS" -EXTRA_CXXFLAGS="$CXXFLAGS" -EXTRA_CPPFLAGS="$CPPFLAGS" -EXTRA_LIBS="$LIBS" - -WARN_CFLAGS= -WARN_CXXFLAGS= -WARN_CPPFLAGS= - -AC_SUBST(ARFLAGS) -if test -z "$ARFLAGS" -then - case "${host_os}" in - darwin*) - # darwin uses it's own version of ar with different flags to what GNU uses - ARFLAGS="r" - ;; - *) - ARFLAGS="rcD" - ;; - esac -fi -dnl Check for ccache if they want it -AC_ARG_WITH([ccache], AS_HELP_STRING([--with-ccache], [Compile using ccache]), [AC_PATH_PROG([CCACHE], [ccache])]) -if test "x$with_ccache" = xyes; then - if test "x$CCACHE" = x; then - AC_MSG_WARN([ccache was requested but was not found. Build will proceed as normal]) - fi -fi - -dnl Add a flag, if supported by the compiler or preprocessor -dnl Assumes that -Werror works -AC_DEFUN([_PIONEER_COMPILER_FLAG], dnl Language, prefix (EXTRA), flags variable 'foo' (EXTRA_fooFLAGS), flag, $CC/$CXX/$CPP/similar, if yes, if no - [AC_LANG_PUSH([$1]) - saved_flags="$][$3][FLAGS" - ][$3][FLAGS="$saved_flags -Werror $4" - AC_MSG_CHECKING([to see if $5 supports $4]) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [][$2][_][$3][FLAGS="$][$2][_][$3][FLAGS $4"; AC_MSG_RESULT([yes])]m4_default([; $6], []), [AC_MSG_RESULT([no])]m4_default([; $7], [])) - ][$3][FLAGS="$saved_flags" - AC_LANG_POP([$1]) - ]) - -AC_DEFUN([PIONEER_CFLAG], [_PIONEER_COMPILER_FLAG([C], [EXTRA], [C], [$1], [$CC], [$2], [$3])]) -AC_DEFUN([PIONEER_CXXFLAG], [_PIONEER_COMPILER_FLAG([C++], [EXTRA], [CXX], [$1], [$CXX], [$2], [$3])]) -AC_DEFUN([PIONEER_CPPFLAG], [_PIONEER_COMPILER_FLAG([CPP], [EXTRA], [CPP], [$1], [$CPP], [$2], [$3])]) - -AC_DEFUN([PIONEER_C_CXX_FLAG], - [_PIONEER_COMPILER_FLAG([C], [EXTRA], [C], [$1], [$CC/$CXX], [EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $1"])]) - -AC_DEFUN([PIONEER_WARN_CFLAG], [_PIONEER_COMPILER_FLAG([C], [WARN], [C], [$1], [$CC], [$2], [$3])]) -AC_DEFUN([PIONEER_WARN_CXXFLAG], [_PIONEER_COMPILER_FLAG([C++], [WARN], [CXX], [$1], [$CXX], [$2], [$3])]) -AC_DEFUN([PIONEER_WARN_CPPFLAG], [_PIONEER_COMPILER_FLAG([CPP], [WARN], [CPP], [$1], [$CPP], [$2], [$3])]) - -AC_DEFUN([PIONEER_WARN_C_CXX_FLAG], - [_PIONEER_COMPILER_FLAG([C], [WARN], [C], [$1], [$CC/$CXX], [WARN_CXXFLAGS="$WARN_CXXFLAGS $1"])]) - -dnl Early check for C++11 -dnl -std=c++11 defines __STRICT_ANSI__, which causes MinGW some problems so use gnu++11 on it instead -case "$host" in - i686-w64-mingw32.static) - _PIONEER_COMPILER_FLAG([C++], [STD], [CXX], [-std=gnu++11], [$CXX], [], [AC_MSG_ERROR([No compiler support for C++11. Unable to build])]) - ;; - *) - _PIONEER_COMPILER_FLAG([C++], [STD], [CXX], [-std=c++11], [$CXX], [], [AC_MSG_ERROR([No compiler support for C++11. Unable to build])]) -esac - - -dnl Always add -Wall, where supported -PIONEER_WARN_C_CXX_FLAG([-Wall]) - -dnl Add -O0 if requested -OPTIMISE=-O3 -AC_ARG_WITH([no-optimise], AS_HELP_STRING([--with-no-optimise], [Compile without optimisation]), [test "$withval" != no && OPTIMISE=-O0], []) -AC_SUBST([OPTIMISE]) - -dnl Debug stuff -AC_ARG_ENABLE([debug], AS_HELP_STRING([--enable-debug], [Enable debugging code (stack checks, debug tools features, etc)]), [EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -DDEBUG"]) -AC_ARG_ENABLE([remote-lua-repl], AS_HELP_STRING([--enable-remote-lua-repl], [Enable remote lua repl (tcp port 12345 or -DREMOTE_LUA_REPL_PORT=54321]), [EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -DREMOTE_LUA_REPL"]) -AC_ARG_ENABLE([profiler], AS_HELP_STRING([--enable-profiler], [Enable internal profiler]), [EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -DPIONEER_PROFILER"]) - -AC_ARG_WITH([fno-inline], AS_HELP_STRING([--with-fno-inline], [Compile without inlining. Helps debugging segaults that occur in STL code]), [PIONEER_C_CXX_FLAG([-fno-inline])]) -AC_ARG_WITH([gprof], AS_HELP_STRING([--with-gprof], [Compile with gprof profiler]), [PIONEER_C_CXX_FLAG([-pg])]) - -dnl Strip binary after build -DO_STRIP=no -AC_ARG_WITH([strip], AS_HELP_STRING([--with-strip], [Strip binary after build]), [test "$withval" != no && DO_STRIP=yes], []) -AM_CONDITIONAL([DO_STRIP], [test "$DO_STRIP" = yes]) - - -dnl Versioning. If this is a git checkout, try to get details from it -PIONEER_VERSION= -PIONEER_EXTRAVERSION= -if test -d .git ; then - AC_MSG_NOTICE([This is a git checkout]) - PIONEER_VERSION=git - gitbin=`which git` - if test "x$gitbin" != x; then - PIONEER_EXTRAVERSION=`$gitbin log -n1 --format=%h` - AC_MSG_NOTICE([git ref: $PIONEER_EXTRAVERSION]) - fi -fi - -dnl And override with anything on the command line -AC_ARG_WITH([version], AS_HELP_STRING([--with-version], [Game version]), [PIONEER_VERSION=$withval]) -AC_ARG_WITH([extra-version], AS_HELP_STRING([--with-extra-version], [Additional version info]), [PIONEER_EXTRAVERSION=$withval]) - -EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -DPIONEER_VERSION=\\\"$PIONEER_VERSION\\\" -DPIONEER_EXTRAVERSION=\\\"$PIONEER_EXTRAVERSION\\\"" - -dnl __STDC_LIMIT_MACROS is defined so that GCC 4.7 will provide limit macros (eg, INT64_MAX) as part of cstdint -dnl (note, __STDC_LIMIT_MACROS is not needed in GCC 4.8 or later; those macros are part of the C++11 standard) -dnl __STDC_FORMAT_MACROS is the same deal for the (PRI|SCN)[ud](32|64) macros -EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS" - - -dnl Compiler warning options -AC_ARG_WITH([extra-warnings], AS_HELP_STRING([--without-extra-warnings], [Disable lots of extra compiler warnings]), [], [with_extra_warnings=yes]) -if test "x$with_extra_warnings" != xno; then - for warn_opt in \ --Wformat \ --Wstrict-aliasing=2 \ --Wmissing-format-attribute \ --Wmissing-noreturn \ --Wdisabled-optimization \ --Wfloat-equal \ --Wshadow \ --Wcast-qual \ --Wcast-align \ - ; do - PIONEER_WARN_C_CXX_FLAG([$warn_opt]) - done - dnl -Wformat-security requires -Wformat first, so it needs a slightly customised test - dnl we assume that if this test passes then the test (above) for -Wformat passed - dnl and therefore -Wformat should already be in WARN_CXXFLAGS - _PIONEER_COMPILER_FLAG([C], [WARN], [C], [-Wformat -Wformat-security], [$CC/$CXX], [WARN_CXXFLAGS="$WARN_CXXFLAGS -Wformat-security"]) - for warn_opt in \ --Wno-format-zero-length \ --Werror-implicit-function-declaration \ - ; do - PIONEER_WARN_CFLAG([$warn_opt]) - done - for warn_opt in \ --Wstrict-null-sentinel \ --Wold-style-cast \ --Wsign-promo \ - ; do - PIONEER_WARN_CXXFLAG([$warn_opt]) - done -fi - -dnl Add some useful args for clang under ccache -dnl http://petereisentraut.blogspot.com.au/2011/05/ccache-and-clang.html -if test "x$CCACHE" != x; then - PIONEER_C_CXX_FLAG([-Qunused-arguments]) - PIONEER_C_CXX_FLAG([-fcolor-diagnostics]) -fi - -dnl Data files directory -if test "$PIONEER_DATA_DIR" = ''; then - AC_MSG_WARN([Using the default value for PIONEER_DATA_DIR.]) - AC_MSG_WARN([Installing is NOT recommended.]) - AC_MSG_WARN([IF YOU ARE PACKAGING PIONEER, SET THIS VARIABLE!]) - AC_MSG_WARN([To install: make install DESTDIR=/path/to/install/dir/]) - AC_MSG_WARN([The trailing path separator is required.]) - AC_MSG_WARN([The installed Pioneer is only runnable from that directory.]) -fi -PIONEER_DATA_DIR=${PIONEER_DATA_DIR:-data} -AC_ARG_VAR([PIONEER_DATA_DIR], [where Pioneer expects its data files to be [data]. Packagers MUST set this!]) - -dnl ########################################################################### -dnl Library checks -dnl ########################################################################### - -dnl FIXME: should really check for headers (if no pkgconfig) -AC_DEFUN([PIONEER_CHECK_LIB], - [PKG_CHECK_MODULES([$1], [$2], [], - [AC_CHECK_LIB([$3], [$4], [], [AC_MSG_ERROR([$1 is required])]) - ][$1][_CFLAGS= - ][$1][_LIBS="-l$3" - AC_SUBST([$1][_CFLAGS]) - AC_SUBST([$1][_LIBS]) - ]) - ]) - -AC_ARG_WITH([thirdparty], AS_HELP_STRING([--with-thirdparty], [Location of pioneer-thirdparty repository]), [ - AC_MSG_NOTICE([using pioneer-thirdparty repository in $withval]) - if test "x$MXE_CROSS" = "xyes" ; then - PKG_CONFIG_PATH_i686-w64-mingw32.static="$withval/usr/lib/pkgconfig:$PKG_CONFIG_PATH" - export PKG_CONFIG_PATH_i686-w64-mingw32.static - else - PKG_CONFIG_PATH="$withval/usr/lib/pkgconfig:$PKG_CONFIG_PATH" - export PKG_CONFIG_PATH - EXTRA_LIBS="$EXTRA_LIBS -ldl -lrt -lz" - fi - CFLAGS="-isystem $withval/usr/include" - LIBS="-L$withval/usr/lib -Wl,-rpath,$withval/usr/lib" -]) - -dnl Check for sigc++ -PKG_CHECK_MODULES([SIGC], [sigc++-2.0]) - -dnl Check for SDL -PKG_CHECK_MODULES([SDL2], [sdl2 SDL2_image]) - -dnl Check for Freetype -PKG_CHECK_MODULES([FREETYPE], [freetype2]) - -dnl Check for libvorbis -PKG_CHECK_MODULES([VORBIS], [vorbisfile]) - -dnl Check for libpng -PKG_CHECK_MODULES([PNG], [libpng]) - -dnl Check for assimp -PKG_CHECK_MODULES([ASSIMP], [assimp]) - -dnl assimp's pkg-config file has a broken include path. Until upstream fixes -dnl it we work around it here -ASSIMP_CFLAGS=`echo $ASSIMP_CFLAGS | sed -e 's/\/assimp$//'` - -if test "x$cross_compiling" = "xno" ; then - - dnl Extra version checks for assimp. Last release was 2.0, we need - dnl 3.2+. The .pc file is unversioned, so we need extra tests - AC_MSG_CHECKING(for ASSIMP version >= 3.2) - dnl Convert -Lfoo to -rpath=, as the wanted dir might not be visible to the dynamic linker - assimp_rpath=`echo $ASSIMP_LIBS | sed -e 's/-[^L] *[^ ]\+ *//g' | sed -e 's/-L */-Wl,-rpath,/g'` - old_cxxflags="$CXXFLAGS" - old_libs="$LIBS" - CXXFLAGS="$ASSIMP_CFLAGS $EXTRA_CXXFLAGS" - LIBS="$ASSIMP_LIBS $EXTRA_LIBS $assimp_rpath" - AC_LANG_PUSH([C++]) - AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include - #include ]], - [[do { - if (aiGetVersionMajor() > 3) - return 0; - else if (aiGetVersionMajor() == 3 && aiGetVersionMinor() >= 2) - return 0; - return 1; - } while(0)]])], - [AC_MSG_RESULT(yes) - have_assimp_version=yes], - [AC_MSG_RESULT(no)]) - AC_LANG_POP - if test "x$have_assimp_version" != "xyes" ; then - AC_MSG_ERROR("assimp version >= 3.2 not found. Get it from https://assimp.sourceforge.net/") - fi - CXXFLAGS="$old_cxxflags" - LIBS="$old_libs" - -fi - -dnl Check for libcurl -AC_ARG_WITH([server-agent], AS_HELP_STRING([--with-server-agent], [Compile in our server agent, adding libcurl as a dependency]), [], [with_server_agent=no]) -if test "$with_server_agent" = yes; then - EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -DENABLE_SERVER_AGENT" - PKG_CHECK_MODULES([CURL], [libcurl]) -fi - -dnl Optionally use external liblua -AC_ARG_WITH([external-liblua], AS_HELP_STRING([--with-external-liblua], [Use external liblua in place of our internal copy]), [], [with_external_liblua=no; HAVE_LUA=no]) -if test "$with_external_liblua" = yes; then - PKG_CHECK_MODULES([LUA], [lua >= 5.2 lua < 5.3], [HAVE_LUA=yes], [foundlua=no]) - if test "$foundlua" = no; then - dnl On ArchLinux at least, Lua 5.2 is provided through pkg-config lua52.pc. - PKG_CHECK_MODULES([LUA], [lua52 >= 5.2], [HAVE_LUA=yes], - [PKG_CHECK_MODULES([LUA], [lua5.2 >= 5.2], [HAVE_LUA=yes], - [AC_MSG_ERROR([External liblua was requested but is not available])])]) - fi -fi -AM_CONDITIONAL([HAVE_LUA], [test "$HAVE_LUA" = yes]) - -dnl Optionally use external libglew -AC_ARG_WITH([external-libglew], AS_HELP_STRING([--with-external-libglew], [Use external libglew in place of our internal copy]), [], [with_external_libglew=no; HAVE_GLEW=no]) -if test "$with_external_libglew" = yes; then - PKG_CHECK_MODULES([GLEW], [glew >= 2.0.0], [HAVE_GLEW=yes], [AC_MSG_ERROR(["External libglew was requested but is not available"])]) -fi -AM_CONDITIONAL([HAVE_GLEW], [test "$HAVE_GLEW" = yes]) - -AM_COND_IF([HAVE_GLEW], - [], - [GLEW_CFLAGS="-DGLEW_STATIC"]) - -LUA_CFLAGS="$LUA_CFLAGS -DLUA_USE_APICHECK" -case "$host" in - i686-w64-mingw32.static) - LUA_CFLAGS="$LUA_CFLAGS -DLUA_USE_WIN" - ;; - *) - LUA_CFLAGS="$LUA_CFLAGS -DLUA_USE_POSIX" - ;; -esac - -dnl Check for OpenGL libs -if test "x$MXE_CROSS" = "xyes" ; then - AC_SUBST([GL_CFLAGS], []) - AC_SUBST([GL_LIBS], [-lopengl32]) -else - PIONEER_CHECK_LIB([GL], [gl], [GL], [glBegin]) -fi - -dnl ########################################################################### -dnl Platform selection -dnl ########################################################################### - -AC_MSG_CHECKING([platform type]) -case "$host" in - i686-w64-mingw32.static) - PLATFORM=win32 - ;; - *) - PLATFORM=posix - ;; -esac -AC_SUBST([PLATFORM]) -AC_MSG_RESULT($PLATFORM) - -AM_CONDITIONAL([BUILD_WIN32], [test "x-$PLATFORM" = "x-win32"]) -AM_CONDITIONAL([BUILD_POSIX], [test "x-$PLATFORM" = "x-posix"]) - -dnl ########################################################################### -dnl System-specific stuff not covered above -dnl ########################################################################### - -case "$host" in - i686-w64-mingw32.static) - MINGW_LIBS="-lshlwapi" - SDL_LIBS="$SDL_LIBS -ltiff -lpng -ljpeg -lz" - ;; - *) - MINGW_LIBS= - ;; -esac -AC_SUBST([MINGW_LIBS]) - -dnl ########################################################################### -dnl Finished :-) -dnl ########################################################################### - -dnl if ccache was wanted, update the compiler vars to match -dnl this is done late so that configure tests aren't run under ccache -if test "x$CCACHE" != x; then - CC="$CCACHE $CC" - CXX="$CCACHE $CXX" -fi - -AC_SUBST([STD_CXXFLAGS]) - -AC_SUBST([EXTRA_CFLAGS]) -AC_SUBST([EXTRA_CXXFLAGS]) -AC_SUBST([EXTRA_CPPFLAGS]) -AC_SUBST([EXTRA_LIBS]) - -AC_SUBST([WARN_CFLAGS]) -AC_SUBST([WARN_CXXFLAGS]) -AC_SUBST([WARN_CPPFLAGS]) - -AC_CONFIG_FILES([ - Makefile - data/Makefile - src/Makefile - src/collider/Makefile - src/gameui/Makefile - src/gui/Makefile - src/graphics/Makefile - src/graphics/opengl/Makefile - src/graphics/dummy/Makefile - src/scenegraph/Makefile - src/galaxy/Makefile - src/terrain/Makefile - src/text/Makefile - src/ui/Makefile - src/win32/Makefile - src/posix/Makefile - contrib/Makefile - contrib/lua/Makefile - contrib/miniz/Makefile - contrib/jenkins/Makefile - contrib/imgui/Makefile - contrib/nanosvg/Makefile - contrib/PicoDDS/Makefile - contrib/vcacheopt/Makefile - contrib/glew/Makefile - contrib/profiler/Makefile - win32/Makefile]) -AC_OUTPUT diff --git a/data/Makefile.am b/data/Makefile.am deleted file mode 100644 index 4bd3c8e4d..000000000 --- a/data/Makefile.am +++ /dev/null @@ -1,5 +0,0 @@ -pioneerdatadir = @PIONEER_DATA_DIR@ -nobase_pioneerdata_DATA = $(shell $(srcdir)/listdata.sh) -EXTRA_DIST = $(nobase_pioneerdata_DATA) listdata.sh listdata.exclude - -include $(top_srcdir)/Makefile.common diff --git a/src/Makefile.am b/src/Makefile.am deleted file mode 100644 index 17f25ab4f..000000000 --- a/src/Makefile.am +++ /dev/null @@ -1,520 +0,0 @@ -## Process this file with automake to produce Makefile.in -if BUILD_WIN32 - PLATFORM_SUBDIRS = win32 -endif -if BUILD_POSIX - PLATFORM_SUBDIRS = posix -endif -SUBDIRS = collider gui graphics galaxy scenegraph terrain text ui gameui $(PLATFORM_SUBDIRS) - -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -bin_PROGRAMS = pioneer modelcompiler -noinst_HEADERS = \ - Aabb.h \ - AmbientSounds.h \ - AnimationCurves.h \ - Background.h \ - BaseSphere.h \ - Beam.h \ - Body.h \ - ByteRange.h \ - Camera.h \ - CameraController.h \ - CargoBody.h \ - CityOnPlanet.h \ - Color.h \ - Cutscene.h \ - CRC32.h \ - DateTime.h \ - DeathView.h \ - DeleteEmitter.h \ - DynamicBody.h \ - Easing.h \ - EnumStrings.h \ - FaceParts.h \ - Factions.h \ - FileSystem.h \ - FixedGuns.h \ - FontCache.h \ - Frame.h \ - Game.h \ - GameLog.h \ - GasGiant.h \ - GasGiantJobs.h \ - GeoSphere.h \ - GZipFormat.h \ - HudTrail.h \ - HyperspaceCloud.h \ - IniConfig.h \ - Input.h \ - Intro.h \ - IterationProxy.h \ - JobQueue.h \ - JsonUtils.h \ - GameConfig.h \ - GameSaveError.h \ - KeyBindings.h \ - Lang.h \ - LangStrings.inc.h \ - Lua.h \ - LuaComms.h \ - LuaConsole.h \ - LuaConstants.h \ - LuaDev.h \ - LuaEngine.h \ - LuaEvent.h \ - LuaFileSystem.h \ - LuaFormat.h \ - LuaGame.h \ - LuaInput.h \ - LuaJson.h \ - LuaLang.h \ - LuaMatrix.h \ - LuaVector.h \ - LuaFixed.h \ - LuaManager.h \ - LuaMissile.h \ - LuaMusic.h \ - LuaNameGen.h \ - LuaObject.h \ - LuaPiGui.h \ - LuaPushPull.h \ - LuaRef.h \ - LuaSerializer.h \ - LuaShipDef.h \ - LuaServerAgent.h \ - LuaSpace.h \ - LuaTable.h \ - LuaTimer.h \ - LuaUtils.h \ - LuaWrappable.h \ - MathUtil.h \ - Missile.h \ - ModelBody.h \ - ModelCache.h \ - ModManager.h \ - ModelViewer.h \ - NavLights.h \ - Object.h \ - ObjectViewerView.h \ - Orbit.h \ - OS.h \ - Pi.h \ - PiGui.h \ - Plane.h \ - Planet.h \ - Player.h \ - PngWriter.h \ - Polit.h \ - Projectile.h \ - PropertiedObject.h \ - PropertyMap.h \ - Propulsion.h \ - Quaternion.h \ - Random.h \ - RandomColor.h \ - Range.h \ - RefCounted.h \ - SDLWrappers.h \ - SectorView.h \ - Sensors.h \ - Serializer.h \ - StringF.h \ - StringRange.h \ - Sfx.h \ - Shields.h \ - Ship.h \ - ShipAICmd.h \ - ShipCockpit.h \ - ShipController.h \ - ShipCpanel.h \ - ShipCpanelMultiFuncDisplays.h \ - ShipType.h \ - Sound.h \ - SoundMusic.h \ - Space.h \ - SpaceStation.h \ - SpaceStationType.h \ - SpeedLines.h \ - Sphere.h \ - Star.h \ - SystemInfoView.h \ - SystemView.h \ - TerrainBody.h \ - Tombstone.h \ - UIView.h \ - versioningInfo.h \ - VideoLink.h \ - View.h \ - WorldView.h \ - ServerAgent.h \ - SmartPtr.h \ - buildopts.h \ - fixed.h \ - gameconsts.h \ - libs.h \ - matrix4x4.h \ - perlin.h \ - utils.h \ - vector2.h \ - vector3.h \ - enum_table.h - -pioneer_SOURCES = \ - AmbientSounds.cpp \ - Background.cpp \ - BaseSphere.cpp \ - Beam.cpp \ - Body.cpp \ - Camera.cpp \ - CameraController.cpp \ - CargoBody.cpp \ - Color.cpp \ - CollMesh.cpp \ - CityOnPlanet.cpp \ - CRC32.cpp \ - DateTime.cpp \ - DeathView.cpp \ - DynamicBody.cpp \ - EnumStrings.cpp \ - FaceParts.cpp \ - Factions.cpp \ - FileSourceZip.cpp \ - FileSystem.cpp \ - FixedGuns.cpp \ - FontCache.cpp \ - Frame.cpp \ - Game.cpp \ - GameLog.cpp \ - GasGiant.cpp \ - GasGiantJobs.cpp \ - GeoPatch.cpp \ - GeoPatchContext.cpp \ - GeoPatchID.cpp \ - GeoPatchJobs.cpp \ - GeoSphere.cpp \ - GZipFormat.cpp \ - HudTrail.cpp \ - HyperspaceCloud.cpp \ - IniConfig.cpp \ - Input.cpp \ - Intro.cpp \ - JobQueue.cpp \ - JsonUtils.cpp \ - GameConfig.cpp \ - KeyBindings.cpp \ - Lang.cpp \ - Lua.cpp \ - LuaBody.cpp \ - LuaCargoBody.cpp \ - LuaComms.cpp \ - LuaConsole.cpp \ - LuaConstants.cpp \ - LuaDev.cpp \ - LuaEngine.cpp \ - LuaEvent.cpp \ - LuaFaction.cpp \ - LuaFileSystem.cpp \ - LuaFormat.cpp \ - LuaGame.cpp \ - LuaHyperspaceCloud.cpp \ - LuaInput.cpp \ - LuaJson.cpp \ - LuaLang.cpp \ - LuaMatrix.cpp \ - LuaVector.cpp \ - LuaFixed.cpp \ - LuaManager.cpp \ - LuaMissile.cpp \ - LuaModelBody.cpp \ - LuaMusic.cpp \ - LuaNameGen.cpp \ - LuaObject.cpp \ - LuaPiGui.cpp \ - LuaPlanet.cpp \ - LuaPlayer.cpp \ - LuaPropertiedObject.cpp \ - LuaRand.cpp \ - LuaRef.cpp \ - LuaServerAgent.cpp \ - LuaSystemBody.cpp \ - LuaSystemPath.cpp \ - LuaSerializer.cpp \ - LuaShip.cpp \ - LuaShipDef.cpp \ - LuaSpace.cpp \ - LuaSpaceStation.cpp \ - LuaStar.cpp \ - LuaStarSystem.cpp \ - LuaTimer.cpp \ - LuaUtils.cpp \ - MathUtil.cpp \ - Missile.cpp \ - ModelBody.cpp \ - ModelCache.cpp \ - ModManager.cpp \ - ModelViewer.cpp \ - NavLights.cpp \ - ObjectViewerView.cpp \ - Orbit.cpp \ - Pi.cpp \ - PiGui.cpp \ - Plane.cpp \ - Planet.cpp \ - Player.cpp \ - PngWriter.cpp \ - Polit.cpp \ - Projectile.cpp \ - PropertyMap.cpp \ - Propulsion.cpp \ - RandomColor.cpp \ - SDLWrappers.cpp \ - SectorView.cpp \ - Sensors.cpp \ - Serializer.cpp \ - ServerAgent.cpp \ - StringF.cpp \ - Sfx.cpp \ - Shields.cpp \ - Ship-AI.cpp \ - Ship.cpp \ - ShipAICmd.cpp \ - ShipCockpit.cpp \ - ShipController.cpp \ - ShipCpanel.cpp \ - ShipCpanelMultiFuncDisplays.cpp \ - ShipType.cpp \ - Sound.cpp \ - SoundMusic.cpp \ - Space.cpp \ - SpaceStation.cpp \ - SpaceStationType.cpp \ - SpeedLines.cpp \ - Sphere.cpp \ - Star.cpp \ - SystemInfoView.cpp \ - SystemView.cpp \ - TerrainBody.cpp \ - Tombstone.cpp \ - UIView.cpp \ - versioningInfo.cpp \ - View.cpp \ - WorldView.cpp \ - main.cpp \ - perlin.cpp \ - utils.cpp \ - enum_table.cpp - -pioneer_LDADD = \ - collider/libcollider.a \ - gui/libgui.a \ - graphics/libgraphics.a \ - graphics/opengl/libgraphicsopengl.a \ - galaxy/libgalaxy.a \ - scenegraph/libscenegraph.a \ - text/libtext.a \ - terrain/libterrain.a \ - ui/libui.a \ - gameui/libgameui.a \ - ../contrib/PicoDDS/libpicodds.a \ - ../contrib/jenkins/libjenkins.a \ - ../contrib/profiler/libprofiler.a \ - ../contrib/imgui/libimgui.a - -pioneer_LDADD += \ - $(FREETYPE_LIBS) $(GL_LIBS) $(GLEW_LIBS) \ - $(SDL2_LIBS) $(SIGC_LIBS) $(LUA_LIBS) $(VORBIS_LIBS) \ - $(PNG_LIBS) $(CURL_LIBS) $(ASSIMP_LIBS) $(EXTRA_LIBS) - -if BUILD_WIN32 -pioneer_LDFLAGS = -Wl,-Map=pioneer.map -modelcompiler_LDFLAGS = -Wl,-Map=modelcompiler.map -endif - -if !HAVE_LUA -pioneer_LDADD += ../contrib/lua/liblua.a -endif - -if !HAVE_GLEW -pioneer_LDADD += ../contrib/glew/libglew.a -endif - -if DO_STRIP -PIONEER_V_STRIP = $(PIONEER_V_STRIP_@AM_V@) -PIONEER_V_STRIP_ = $(PIONEER_V_STRIP_@AM_DEFAULT_V@) -PIONEER_V_STRIP_0 = @echo " STRIP " $<; -PIONEER_V_STRIP_1 = - -all-local: $(bin_PROGRAMS) - $(PIONEER_V_STRIP)$(STRIP) $(bin_PROGRAMS) -endif - - -check_PROGRAMS = tests uitest textstress -tests_SOURCES = \ - StringF.cpp \ - DateTime.cpp \ - tests.cpp \ - test_Frame.cpp \ - test_StringF.cpp \ - test_Random.cpp \ - test_DateTime.cpp -TESTS = tests -tests_LDADD = \ - collider/libcollider.a \ - gui/libgui.a \ - graphics/libgraphics.a \ - terrain/libterrain.a \ - posix/libposix.a \ - ../contrib/PicoDDS/libpicodds.a \ - ../contrib/jenkins/libjenkins.a \ - $(SIGC_LIBS) - -uitest_SOURCES = \ - uitest.cpp \ - Color.cpp \ - DateTime.cpp \ - FileSystem.cpp \ - SDLWrappers.cpp \ - FontCache.cpp \ - IniConfig.cpp \ - StringF.cpp \ - Lang.cpp \ - Lua.cpp \ - LuaManager.cpp \ - LuaUtils.cpp \ - LuaObject.cpp \ - LuaConstants.cpp \ - LuaRef.cpp \ - LuaPropertiedObject.cpp \ - LuaSerializer.cpp \ - PngWriter.cpp \ - EnumStrings.cpp \ - PropertyMap.cpp \ - enum_table.cpp \ - utils.cpp -uitest_LDADD = \ - ui/libui.a \ - gui/libgui.a \ - text/libtext.a \ - graphics/libgraphics.a \ - graphics/opengl/libgraphicsopengl.a \ - posix/libposix.a \ - ../contrib/jenkins/libjenkins.a \ - ../contrib/PicoDDS/libpicodds.a \ - ../contrib/profiler/libprofiler.a - -uitest_LDADD += \ - $(FREETYPE_LIBS) $(GL_LIBS) $(GLEW_LIBS) \ - $(SDL2_LIBS) $(SIGC_LIBS) $(LUA_LIBS) $(PNG_LIBS) - -if !HAVE_LUA -uitest_LDADD += ../contrib/lua/liblua.a -endif - -if !HAVE_GLEW -uitest_LDADD += ../contrib/glew/libglew.a -endif - -textstress_SOURCES = \ - textstress.cpp \ - Color.cpp \ - FileSystem.cpp \ - SDLWrappers.cpp \ - FontCache.cpp \ - IniConfig.cpp \ - StringF.cpp \ - Lang.cpp \ - PngWriter.cpp \ - utils.cpp -textstress_LDADD = \ - gui/libgui.a \ - text/libtext.a \ - graphics/libgraphics.a \ - posix/libposix.a \ - ../contrib/profiler/libprofiler.a - -textstress_LDADD += \ - $(FREETYPE_LIBS) $(GL_LIBS) $(GLEW_LIBS) \ - $(SDL2_LIBS) $(SIGC_LIBS) $(LUA_LIBS) $(PNG_LIBS) - -if !HAVE_LUA -textstress_LDADD += ../contrib/lua/liblua.a -endif - -if !HAVE_GLEW -textstress_LDADD += ../contrib/glew/libglew.a -endif - -modelcompiler_SOURCES = \ - modelcompiler.cpp \ - Color.cpp \ - CollMesh.cpp \ - DateTime.cpp \ - FileSourceZip.cpp \ - FileSystem.cpp \ - FontCache.cpp \ - GZipFormat.cpp \ - IniConfig.cpp \ - GameConfig.cpp \ - JobQueue.cpp \ - JsonUtils.cpp \ - Lang.cpp \ - ModManager.cpp \ - NavLights.cpp \ - PngWriter.cpp \ - SDLWrappers.cpp \ - Serializer.cpp \ - StringF.cpp \ - utils.cpp - -modelcompiler_LDADD = \ - gui/libgui.a \ - graphics/libgraphics.a \ - graphics/dummy/libgraphicsdummy.a \ - scenegraph/libscenegraph.a \ - collider/libcollider.a \ - text/libtext.a \ - ../contrib/PicoDDS/libpicodds.a \ - ../contrib/profiler/libprofiler.a - -modelcompiler_LDADD += \ - $(FREETYPE_LIBS) \ - $(SDL2_LIBS) $(SIGC_LIBS) $(LUA_LIBS) \ - $(PNG_LIBS) $(ASSIMP_LIBS) $(EXTRA_LIBS) - -if !HAVE_LUA -modelcompiler_LDADD += ../contrib/lua/liblua.a -endif - -if !HAVE_GLEW -modelcompiler_LDADD += ../contrib/glew/libglew.a -endif - -AM_CPPFLAGS += -isystem @top_srcdir@/contrib -if !HAVE_LUA -AM_CPPFLAGS += -isystem @top_srcdir@/contrib/lua -endif - -if BUILD_WIN32 - pioneer_LDADD += win32/libwin32.a $(MINGW_LIBS) - modelcompiler_LDADD += win32/libwin32.a $(MINGW_LIBS) -endif - -if BUILD_POSIX - pioneer_LDADD += posix/libposix.a - modelcompiler_LDADD += posix/libposix.a -endif - -if HAVE_WINDRES -# note: this can't be correctly packed into libwin32.a -SUFFIXES = .rc -pioneer_SOURCES += win32/pioneer.rc -.rc.o: - $(AM_V_GEN)$(MXE_WINDRES) $< $@ -endif diff --git a/src/collider/Makefile.am b/src/collider/Makefile.am deleted file mode 100644 index 264325bd2..000000000 --- a/src/collider/Makefile.am +++ /dev/null @@ -1,24 +0,0 @@ -# Process this file with automake to produce Makefile.in - -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(srcdir)/.. -isystem $(top_srcdir)/contrib - -noinst_LIBRARIES = libcollider.a -libcollider_a_SOURCES = \ - BVHTree.cpp \ - CollisionSpace.cpp \ - Geom.cpp \ - GeomTree.cpp - -noinst_HEADERS = \ - BVHTree.h \ - CollisionContact.h \ - CollisionSpace.h \ - Geom.h \ - GeomTree.h \ - collider.h diff --git a/src/galaxy/Makefile.am b/src/galaxy/Makefile.am deleted file mode 100644 index d8052cecd..000000000 --- a/src/galaxy/Makefile.am +++ /dev/null @@ -1,35 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -isystem $(top_srcdir)/contrib -I$(srcdir)/.. -if !HAVE_LUA -AM_CPPFLAGS += -isystem $(top_srcdir)/contrib/lua -endif - -noinst_LIBRARIES = libgalaxy.a -noinst_HEADERS = \ - CustomSystem.h \ - Economy.h \ - Galaxy.h \ - GalaxyCache.h \ - GalaxyGenerator.h \ - Sector.h \ - SectorGenerator.h \ - StarSystem.h \ - StarSystemGenerator.h \ - SystemPath.h - -libgalaxy_a_SOURCES = \ - CustomSystem.cpp \ - Economy.cpp \ - Galaxy.cpp \ - GalaxyCache.cpp \ - GalaxyGenerator.cpp \ - Sector.cpp \ - SectorGenerator.cpp \ - StarSystem.cpp \ - StarSystemGenerator.cpp \ - SystemPath.cpp diff --git a/src/gameui/Makefile.am b/src/gameui/Makefile.am deleted file mode 100644 index f6d0054a9..000000000 --- a/src/gameui/Makefile.am +++ /dev/null @@ -1,34 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -isystem $(top_srcdir)/contrib -I$(srcdir)/.. -if !HAVE_LUA -AM_CPPFLAGS += -isystem $(top_srcdir)/contrib/lua -endif - -noinst_LIBRARIES = libgameui.a -noinst_HEADERS = \ - GameUI.h \ - Lua.h \ - Panel.h \ - Face.h \ - GalaxyMap.h \ - LabelOverlay.h \ - ModelSpinner.h \ - BindingCapture.h - -libgameui_a_SOURCES = \ - Panel.cpp \ - Face.cpp \ - GalaxyMap.cpp \ - LabelOverlay.cpp \ - ModelSpinner.cpp \ - BindingCapture.cpp \ - Lua.cpp \ - LuaFace.cpp \ - LuaGalaxyMap.cpp \ - LuaModelSpinner.cpp \ - LuaBindingCapture.cpp diff --git a/src/graphics/Makefile.am b/src/graphics/Makefile.am deleted file mode 100644 index cdc9f2afd..000000000 --- a/src/graphics/Makefile.am +++ /dev/null @@ -1,41 +0,0 @@ -SUBDIRS = opengl dummy - -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(srcdir)/.. -isystem $(top_srcdir)/contrib -if !HAVE_LUA -AM_CPPFLAGS += -isystem @top_srcdir@/contrib/lua -endif - -noinst_LIBRARIES = libgraphics.a -noinst_HEADERS = \ - Graphics.h \ - Renderer.h \ - RenderTarget.h \ - Frustum.h \ - Light.h \ - Material.h \ - RenderState.h \ - VertexArray.h \ - Texture.h \ - TextureBuilder.h \ - Drawables.h \ - Types.h \ - Stats.h \ - VertexBuffer.h - -libgraphics_a_SOURCES = \ - Graphics.cpp \ - Renderer.cpp \ - Frustum.cpp \ - Light.cpp \ - Material.cpp \ - VertexArray.cpp \ - TextureBuilder.cpp \ - Drawables.cpp \ - Stats.cpp \ - VertexBuffer.cpp diff --git a/src/graphics/dummy/Makefile.am b/src/graphics/dummy/Makefile.am deleted file mode 100644 index c01a3e432..000000000 --- a/src/graphics/dummy/Makefile.am +++ /dev/null @@ -1,19 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(srcdir)/../.. -isystem $(top_srcdir)/contrib - -noinst_LIBRARIES = libgraphicsdummy.a -noinst_HEADERS = \ - RendererDummy.h \ - MaterialDummy.h \ - TextureDummy.h \ - RenderStateDummy.h \ - RenderTargetDummy.h \ - VertexBufferDummy.h - -libgraphicsdummy_a_SOURCES = \ - RendererDummy.cpp diff --git a/src/graphics/opengl/Makefile.am b/src/graphics/opengl/Makefile.am deleted file mode 100644 index 672b5c4fb..000000000 --- a/src/graphics/opengl/Makefile.am +++ /dev/null @@ -1,55 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(srcdir)/../.. -isystem $(top_srcdir)/contrib -if !HAVE_LUA -AM_CPPFLAGS += -isystem @top_srcdir@/contrib/lua -endif - -noinst_LIBRARIES = libgraphicsopengl.a -noinst_HEADERS = \ - OpenGLLibs.h \ - GLDebug.h \ - MaterialGL.h \ - RenderStateGL.h \ - RenderTargetGL.h \ - VertexBufferGL.h \ - FresnelColourMaterial.h \ - GasGiantMaterial.h \ - GenGasGiantColourMaterial.h \ - GeoSphereMaterial.h \ - MultiMaterial.h \ - Program.h \ - RendererGL.h \ - RingMaterial.h \ - ShieldMaterial.h \ - StarfieldMaterial.h \ - SkyboxMaterial.h \ - TextureGL.h \ - UIMaterial.h \ - Uniform.h \ - VtxColorMaterial.h \ - BillboardMaterial.h - -libgraphicsopengl_a_SOURCES = \ - MaterialGL.cpp \ - RenderStateGL.cpp \ - RenderTargetGL.cpp \ - VertexBufferGL.cpp \ - FresnelColourMaterial.cpp \ - GasGiantMaterial.cpp \ - GenGasGiantColourMaterial.cpp \ - GeoSphereMaterial.cpp \ - MultiMaterial.cpp \ - Program.cpp \ - ShieldMaterial.cpp \ - RendererGL.cpp \ - RingMaterial.cpp \ - TextureGL.cpp \ - UIMaterial.cpp \ - Uniform.cpp \ - VtxColorMaterial.cpp \ - BillboardMaterial.cpp diff --git a/src/gui/Makefile.am b/src/gui/Makefile.am deleted file mode 100644 index 5a1df5120..000000000 --- a/src/gui/Makefile.am +++ /dev/null @@ -1,65 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(srcdir)/.. -isystem $(top_srcdir)/contrib - -noinst_LIBRARIES = libgui.a -noinst_HEADERS = \ - Gui.h \ - GuiAdjustment.h \ - GuiBox.h \ - GuiButton.h \ - GuiContainer.h \ - GuiEvents.h \ - GuiFixed.h \ - GuiISelectable.h \ - GuiImage.h \ - GuiImageButton.h \ - GuiImageRadioButton.h \ - GuiLabel.h \ - GuiLabelSet.h \ - GuiMeterBar.h \ - GuiMultiStateImageButton.h \ - GuiRadioButton.h \ - GuiRadioGroup.h \ - GuiScreen.h \ - GuiStack.h \ - GuiTabbed.h \ - GuiTextEntry.h \ - GuiTextLayout.h \ - GuiTexturedQuad.h \ - GuiToggleButton.h \ - GuiToolTip.h \ - GuiVScrollBar.h \ - GuiVScrollPortal.h \ - GuiWidget.h - -libgui_a_SOURCES = \ - Gui.cpp \ - GuiBox.cpp \ - GuiButton.cpp \ - GuiContainer.cpp \ - GuiFixed.cpp \ - GuiImage.cpp \ - GuiImageButton.cpp \ - GuiImageRadioButton.cpp \ - GuiLabel.cpp \ - GuiLabelSet.cpp \ - GuiMeterBar.cpp \ - GuiMultiStateImageButton.cpp \ - GuiRadioButton.cpp \ - GuiRadioGroup.cpp \ - GuiScreen.cpp \ - GuiStack.cpp \ - GuiTabbed.cpp \ - GuiTextEntry.cpp \ - GuiTextLayout.cpp \ - GuiTexturedQuad.cpp \ - GuiToggleButton.cpp \ - GuiToolTip.cpp \ - GuiVScrollBar.cpp \ - GuiVScrollPortal.cpp \ - GuiWidget.cpp diff --git a/src/posix/Makefile.am b/src/posix/Makefile.am deleted file mode 100644 index f5572024b..000000000 --- a/src/posix/Makefile.am +++ /dev/null @@ -1,12 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -DPIONEER_DATA_DIR=\"@PIONEER_DATA_DIR@\" -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(top_srcdir)/src -isystem $(top_srcdir)/contrib - -noinst_LIBRARIES = libposix.a -libposix_a_SOURCES = \ - FileSystemPosix.cpp \ - OSPosix.cpp diff --git a/src/scenegraph/Makefile.am b/src/scenegraph/Makefile.am deleted file mode 100644 index d97550593..000000000 --- a/src/scenegraph/Makefile.am +++ /dev/null @@ -1,72 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(srcdir)/.. - -noinst_LIBRARIES = libscenegraph.a -noinst_HEADERS = \ - AnimationChannel.h \ - Animation.h \ - AnimationKey.h \ - BaseLoader.h \ - Billboard.h \ - BinaryConverter.h \ - CollisionGeometry.h \ - CollisionVisitor.h \ - ColorMap.h \ - DumpVisitor.h \ - FindNodeVisitor.h \ - Group.h \ - Label3D.h \ - LoaderDefinitions.h \ - Loader.h \ - LOD.h \ - MatrixTransform.h \ - ModelNode.h \ - SceneGraph.h \ - Model.h \ - ModelSkin.h \ - Node.h \ - NodeCopyCache.h \ - NodeVisitor.h \ - Parser.h \ - Pattern.h \ - StaticGeometry.h \ - Thruster.h \ - Lua.h - -libscenegraph_a_SOURCES = \ - Animation.cpp \ - BaseLoader.cpp \ - Billboard.cpp \ - BinaryConverter.cpp \ - CollisionGeometry.cpp \ - CollisionVisitor.cpp \ - ColorMap.cpp \ - DumpVisitor.cpp \ - FindNodeVisitor.cpp \ - Group.cpp \ - Label3D.cpp \ - Loader.cpp \ - LOD.cpp \ - MatrixTransform.cpp \ - ModelNode.cpp \ - Model.cpp \ - ModelSkin.cpp \ - Node.cpp \ - NodeVisitor.cpp \ - Parser.cpp \ - Pattern.cpp \ - StaticGeometry.cpp \ - Thruster.cpp \ - Lua.cpp \ - LuaModel.cpp \ - LuaModelSkin.cpp - -AM_CPPFLAGS += -isystem @top_srcdir@/contrib -if !HAVE_LUA -AM_CPPFLAGS += -isystem @top_srcdir@/contrib/lua -endif diff --git a/src/terrain/Makefile.am b/src/terrain/Makefile.am deleted file mode 100644 index 499552bb1..000000000 --- a/src/terrain/Makefile.am +++ /dev/null @@ -1,76 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(srcdir)/.. - -noinst_LIBRARIES = libterrain.a -noinst_HEADERS = \ - Terrain.h \ - TerrainNoise.h \ - TerrainFeature.h - -libterrain_a_SOURCES = \ - Terrain.cpp \ - TerrainFeature.cpp \ - TerrainHeightAsteroid.cpp \ - TerrainHeightAsteroid2.cpp \ - TerrainHeightAsteroid3.cpp \ - TerrainHeightAsteroid4.cpp \ - TerrainHeightBarrenRock.cpp \ - TerrainHeightBarrenRock2.cpp \ - TerrainHeightBarrenRock3.cpp \ - TerrainHeightEllipsoid.cpp \ - TerrainHeightFlat.cpp \ - TerrainHeightHillsCraters2.cpp \ - TerrainHeightHillsCraters.cpp \ - TerrainHeightHillsDunes.cpp \ - TerrainHeightHillsNormal.cpp \ - TerrainHeightHillsRidged.cpp \ - TerrainHeightHillsRivers.cpp \ - TerrainHeightMapped.cpp \ - TerrainHeightMapped2.cpp \ - TerrainHeightMountainsCraters2.cpp \ - TerrainHeightMountainsCraters.cpp \ - TerrainHeightMountainsNormal.cpp \ - TerrainHeightMountainsRidged.cpp \ - TerrainHeightMountainsRivers.cpp \ - TerrainHeightMountainsRiversVolcano.cpp \ - TerrainHeightMountainsVolcano.cpp \ - TerrainHeightRuggedDesert.cpp \ - TerrainHeightRuggedLava.cpp \ - TerrainHeightWaterSolidCanyons.cpp \ - TerrainHeightWaterSolid.cpp \ - TerrainColorAsteroid.cpp \ - TerrainColorBandedRock.cpp \ - TerrainColorBlack.cpp \ - TerrainColorDeadWithWater.cpp \ - TerrainColorDesert.cpp \ - TerrainColorEarthLike.cpp \ - TerrainColorEarthLikeHeightmapped.cpp \ - TerrainColorGGJupiter.cpp \ - TerrainColorGGNeptune2.cpp \ - TerrainColorGGNeptune.cpp \ - TerrainColorGGSaturn2.cpp \ - TerrainColorGGSaturn.cpp \ - TerrainColorGGUranus.cpp \ - TerrainColorIce.cpp \ - TerrainColorMethane.cpp \ - TerrainColorRock2.cpp \ - TerrainColorRock.cpp \ - TerrainColorStarBrownDwarf.cpp \ - TerrainColorStarG.cpp \ - TerrainColorStarK.cpp \ - TerrainColorStarM.cpp \ - TerrainColorStarWhiteDwarf.cpp \ - TerrainColorTFGood.cpp \ - TerrainColorTFPoor.cpp \ - TerrainColorVolcanic.cpp \ - TerrainColorWhite.cpp - -AM_CPPFLAGS += -isystem @top_srcdir@/contrib -if !HAVE_LUA -AM_CPPFLAGS += -isystem @top_srcdir@/contrib/lua -endif diff --git a/src/text/Makefile.am b/src/text/Makefile.am deleted file mode 100644 index aee31f909..000000000 --- a/src/text/Makefile.am +++ /dev/null @@ -1,20 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(srcdir)/.. -isystem $(top_srcdir)/contrib - -noinst_LIBRARIES = libtext.a -noinst_HEADERS = \ - DistanceFieldFont.h \ - FontConfig.h \ - TextSupport.h \ - TextureFont.h - -libtext_a_SOURCES = \ - DistanceFieldFont.cpp \ - FontConfig.cpp \ - TextSupport.cpp \ - TextureFont.cpp diff --git a/src/ui/Makefile.am b/src/ui/Makefile.am deleted file mode 100644 index bad4c6a02..000000000 --- a/src/ui/Makefile.am +++ /dev/null @@ -1,121 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -isystem $(top_srcdir)/contrib -I$(srcdir)/.. -if !HAVE_LUA -AM_CPPFLAGS += -isystem $(top_srcdir)/contrib/lua -endif - -noinst_LIBRARIES = libui.a -noinst_HEADERS = \ - Align.h \ - Animation.h \ - Background.h \ - Box.h \ - Button.h \ - CellSpec.h \ - CheckBox.h \ - ColorBackground.h \ - Container.h \ - Context.h \ - DropDown.h \ - Event.h \ - EventDispatcher.h \ - Expand.h \ - Gauge.h \ - Gradient.h \ - Grid.h \ - Icon.h \ - Image.h \ - Label.h \ - Layer.h \ - List.h \ - Lua.h \ - LuaSignal.h \ - Margin.h \ - MousePointer.h \ - MultiLineText.h \ - NumberLabel.h \ - OverlayStack.h \ - Point.h \ - Scroller.h \ - Single.h \ - Skin.h \ - Slider.h \ - SmallButton.h \ - Table.h \ - TextEntry.h \ - TextLayout.h \ - Widget.h \ - WidgetSet.h - -libui_a_SOURCES = \ - Align.cpp \ - Animation.cpp \ - Background.cpp \ - Box.cpp \ - Button.cpp \ - CellSpec.cpp \ - CheckBox.cpp \ - ColorBackground.cpp \ - Container.cpp \ - Context.cpp \ - DropDown.cpp \ - Event.cpp \ - EventDispatcher.cpp \ - Expand.cpp \ - Gauge.cpp \ - Gradient.cpp \ - Grid.cpp \ - Icon.cpp \ - Image.cpp \ - Label.cpp \ - Layer.cpp \ - List.cpp \ - Margin.cpp \ - MultiLineText.cpp \ - NumberLabel.cpp \ - OverlayStack.cpp \ - Scroller.cpp \ - Single.cpp \ - Skin.cpp \ - Slider.cpp \ - SmallButton.cpp \ - Table.cpp \ - TextEntry.cpp \ - TextLayout.cpp \ - Widget.cpp \ - Lua.cpp \ - LuaAnimation.cpp \ - LuaAlign.cpp \ - LuaBackground.cpp \ - LuaBox.cpp \ - LuaButton.cpp \ - LuaCheckBox.cpp \ - LuaColorBackground.cpp \ - LuaContainer.cpp \ - LuaContext.cpp \ - LuaDropDown.cpp \ - LuaGradient.cpp \ - LuaExpand.cpp \ - LuaGauge.cpp \ - LuaGrid.cpp \ - LuaIcon.cpp \ - LuaImage.cpp \ - LuaLabel.cpp \ - LuaLayer.cpp \ - LuaList.cpp \ - LuaMargin.cpp \ - LuaMultiLineText.cpp \ - LuaNumberLabel.cpp \ - LuaOverlayStack.cpp \ - LuaScroller.cpp \ - LuaSingle.cpp \ - LuaSlider.cpp \ - LuaSmallButton.cpp \ - LuaTable.cpp \ - LuaTextEntry.cpp \ - LuaWidget.cpp diff --git a/src/win32/Makefile.am b/src/win32/Makefile.am deleted file mode 100644 index 76012d0be..000000000 --- a/src/win32/Makefile.am +++ /dev/null @@ -1,13 +0,0 @@ -include $(top_srcdir)/Makefile.common - -AM_CFLAGS += $(WARN_CFLAGS) -AM_CPPFLAGS += $(WARN_CPPFLAGS) -AM_CXXFLAGS += $(STD_CXXFLAGS) $(WARN_CXXFLAGS) - -AM_CPPFLAGS += -I$(srcdir)/.. -isystem $(top_srcdir)/contrib - -noinst_LIBRARIES = libwin32.a -libwin32_a_SOURCES = \ - FileSystemWin32.cpp \ - OSWin32.cpp \ - TextUtils.cpp diff --git a/win32/Makefile.am b/win32/Makefile.am deleted file mode 100644 index 4185265c5..000000000 --- a/win32/Makefile.am +++ /dev/null @@ -1,22 +0,0 @@ -EXTRA_DIST = \ - src/msvc_bug.cpp \ - src/pch.cpp \ - src/pch.h \ - src/perlintest.cpp \ - src/win32-dirent.cpp \ - src/win32-dirent.h \ - vc2008/perlintest.vcproj \ - vc2008/pioneer-msvc-9.0.sln \ - vc2008/pioneer-msvc-9.0.vcproj \ - vc2008/sbreviewer-msvc-9.0.vcproj \ - vc2010/lua.vcxproj \ - vc2010/lua.vcxproj.filters \ - vc2010/modelviewer.vcxproj \ - vc2010/modelviewer.vcxproj.filters \ - vc2010/perlintest.vcxproj \ - vc2010/perlintest.vcxproj.filters \ - vc2010/pioneer.sln \ - vc2010/pioneer.vcxproj \ - vc2010/pioneer.vcxproj.filters - -include $(top_srcdir)/Makefile.common