mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-11-23 13:07:16 +00:00
Clean up the autotools.
It still seems to work on MinGW mainly by accident, but at least it's a lot shorter and clearer and more portable at this point. We can start testing it in TravisCI and then work on making it work "less by accident" incrementally.
This commit is contained in:
parent
23a3cb4a53
commit
0946300663
46
Makefile.am
46
Makefile.am
@ -1,57 +1,45 @@
|
||||
# Hyperrogue binairy rules
|
||||
bin_PROGRAMS = hyperrogue
|
||||
hyperroguedir = $(datadir)/hyperrogue
|
||||
dist_hyperrogue_DATA = hyperrogue-music.txt DejaVuSans-Bold.ttf
|
||||
dist_doc_DATA = README.md
|
||||
hyperrogue_SOURCES = hyper.cpp savepng.cpp
|
||||
|
||||
# Some definitions used in graph.cpp
|
||||
hyperrogue_CPPFLAGS = -DFONTDESTDIR=\"$(pkgdatadir)/DejaVuSans-Bold.ttf\" -DMUSICDESTDIR=\"$(pkgdatadir)/hyperrogue-music.txt\" -DSOUNDDESTDIR=\"$(pkgdatadir)/sounds/\"
|
||||
hyperrogue_CXXFLAGS = -std=c++11
|
||||
hyperrogue_CXXFLAGS = -O2 -std=c++11 ${AM_CXXFLAGS}
|
||||
dist_hyperrogue_DATA = hyperrogue-music.txt DejaVuSans-Bold.ttf
|
||||
|
||||
# Musicdir
|
||||
# docdir
|
||||
dist_doc_DATA = README.md
|
||||
|
||||
# musicdir
|
||||
musicdir=$(datadir)/hyperrogue/music
|
||||
dist_music_DATA = music/hr3-caves.ogg music/hr3-desert.ogg music/hr3-hell.ogg music/hr3-jungle.ogg music/hr3-mirror.ogg music/hr3-rlyeh.ogg music/hr3-crossroads.ogg music/hr3-graveyard.ogg music/hr3-icyland.ogg music/hr3-laboratory.ogg music/hr3-motion.ogg
|
||||
|
||||
# Soundsdir
|
||||
# soundsdir
|
||||
soundsdir=$(datadir)/hyperrogue/sounds
|
||||
dist_sounds_DATA = sounds/*
|
||||
|
||||
# Langen binary rules
|
||||
noinst_PROGRAMS = langen
|
||||
langen_SOURCES = langen.cpp
|
||||
# Disable optimization, not needed
|
||||
langen_CXXFLAGS = -O0 -std=c++11
|
||||
langen_CXXFLAGS = -O0 -std=c++11 ${AM_CXXFLAGS}
|
||||
BUILT_SOURCES = language-data.cpp
|
||||
|
||||
# Generation of language-data.cpp
|
||||
language-data.cpp: langen
|
||||
./langen > language-data.cpp
|
||||
|
||||
# Generation of savepng
|
||||
#noinst_PROGRAMS += savepng
|
||||
#savepng_SOURCES = savepng.c
|
||||
|
||||
# Local clean rules
|
||||
clean-local:
|
||||
rm -rf language-data.cpp
|
||||
|
||||
# First target made
|
||||
BUILT_SOURCES = language-data.cpp graph.cpp
|
||||
|
||||
#############################
|
||||
# Platform specific setup
|
||||
#############################
|
||||
windres_prefix=""
|
||||
if MINGW
|
||||
hyperrogue_SOURCES += hyper.res
|
||||
hyperrogue_CPPFLAGS += ${wincppflags}
|
||||
#hyperrogue_LDFLAGS = "-static-libgcc -static-libstdc++"
|
||||
windres_prefix += "${host_cpu}-w64-mingw32-"
|
||||
|
||||
if MAC
|
||||
hyperrogue_LDFLAGS = -lSDLmain -framework AppKit -framework OpenGL
|
||||
endif MAC
|
||||
|
||||
if MINGW
|
||||
nodist_hyperrogue_SOURCES = hyper.res
|
||||
windres_prefix = ${host_cpu}-w64-mingw32-
|
||||
endif MINGW
|
||||
|
||||
#############################
|
||||
# Arch specific setup
|
||||
#############################
|
||||
|
||||
hyper.res: hyper.rc hr-icon.ico
|
||||
${windres_prefix}windres hyper.rc -O coff -o hyper.res
|
||||
|
63
configure.ac
63
configure.ac
@ -1,60 +1,33 @@
|
||||
# -*- Autoconf -*-
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ([2.68])
|
||||
AC_INIT([hyperrogue], [10.4b])
|
||||
AC_INIT([hyperrogue], [10.4i])
|
||||
AC_LANG([C++])
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
|
||||
${CXXFLAGS=""}
|
||||
AC_CONFIG_SRCDIR([hyperpoint.cpp])
|
||||
#AC_CONFIG_HEADERS([config.h])
|
||||
|
||||
# Checks for programs.
|
||||
AC_PROG_CXX
|
||||
AC_PROG_CC
|
||||
|
||||
# Check for which host we are on and setup a few things
|
||||
# specifically based on the host
|
||||
AC_CANONICAL_HOST
|
||||
AM_CONDITIONAL(DARWIN, test ["${host_os#*darwin}" != "$host_os"])
|
||||
|
||||
AM_CONDITIONAL(LINUX, test ["${host_os#*linux}" != "$host_os"])
|
||||
|
||||
AM_CONDITIONAL(MAC, test ["${host_os#*darwin}" != "$host_os"])
|
||||
AM_CONDITIONAL(MINGW, test ["${host_os#*mingw}" != "$host_os"])
|
||||
export wincppflags=""
|
||||
AS_IF( test ["${host_os#*mingw}" != "$host_os"], [export EXEEXT=".exe"],[])
|
||||
AM_COND_IF(LINUX, AC_DEFINE([LINUX], [1]))
|
||||
AM_COND_IF(MAC, AC_DEFINE([MAC], [1]))
|
||||
AM_COND_IF(MINGW, AC_DEFINE([WINDOWS], [1]))
|
||||
|
||||
# Checks for libraries.
|
||||
# FIXME: Replace `main' with a function in `-lGL':
|
||||
AC_CHECK_LIB([GL], [main], [], AC_MSG_ERROR([GL library was not found]))
|
||||
# FIXME: Replace `main' with a function in `-lSDL':
|
||||
AC_CHECK_LIB([SDL], [main], [], AC_MSG_ERROR([SDL library was not found]))
|
||||
# FIXME: Replace `main' with a function in `-lSDL_mixer':
|
||||
AC_CHECK_LIB([SDL_mixer], [main], [], AC_MSG_ERROR([SDL_mixer library was not found]))
|
||||
# FIXME: Replace `main' with a function in `-lSDL_gfx':
|
||||
AC_CHECK_LIB([SDL_gfx], [main], [], [AS_IF( test ["${host_os#*mingw}" != "$host_os"], [export wincppflags=$wincppflags" dll/SDL_gfx.dll" && AC_MSG_RESULT([Building for windows, ignoring])] ,AC_MSG_ERROR([SDL_gfx library was not found]))])
|
||||
# FIXME: Replace `main' with a function in `-lSDL_ttf':
|
||||
AC_CHECK_LIB([SDL_ttf], [main], [], [AS_IF( test ["${host_os#*mingw}" != "$host_os"], [export wincppflags=$wincppflags" dll/SDL_ttf.dll" && AC_MSG_RESULT([Building for windows, ignoring])] ,AC_MSG_ERROR([SDL_ttf library was not found]))])
|
||||
# Test for libpng
|
||||
AC_CHECK_LIB([png], [main], [], AC_MSG_ERROR([png library was not found]))
|
||||
# Test for glew
|
||||
AC_CHECK_LIB([GLEW], [main], [], AC_MSG_ERROR([Glew library was not found]))
|
||||
|
||||
# Checks for header files.
|
||||
AC_CHECK_HEADERS([stdlib.h unistd.h])
|
||||
AC_CHECK_HEADERS([GL/gl.h OpenGL/gl.h], break, AC_MSG_RESULT([OpenGL header was not found]))
|
||||
AC_CHECK_HEADERS([GL/glew.h], [], AC_MSG_RESULT([GLEW header was not found]))
|
||||
AC_CHECK_HEADERS([png.h], [], AC_MSG_RESULT([png.h header was not found]))
|
||||
AC_CHECK_HEADERS([SDL/SDL.h], [], AC_MSG_ERROR([SDL/SDL.h header was not found]))
|
||||
#AC_CHECK_HEADERS([SDL/SDL_gfx.h], [], [AC_MSG_ERROR([SDL/SDL_gfx.h header was not found])])
|
||||
AC_CHECK_HEADERS([SDL/SDL_gfxPrimitives.h], [], AC_MSG_RESULT([SDL/SDL_gfxPrimitives.h header was not found]))
|
||||
AC_CHECK_HEADERS([SDL/SDL_mixer.h], [], AC_MSG_ERROR([SDL/SDL_mixer.h header was not found]))
|
||||
AC_CHECK_HEADERS([SDL/SDL_ttf.h], [], AS_IF( test ["${host_os#*mingw}" != "$host_os"], [] ,AC_MSG_ERROR([SDL/SDL_ttf.h header was not found])))
|
||||
AC_CHECK_HEADERS([SDL/SDL_ttf.h], [], AC_MSG_RESULT([SDL/SDL_ttf.h header was not found]))
|
||||
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
# AC_CHECK_HEADER_STDBOOL
|
||||
AC_C_INLINE
|
||||
AC_TYPE_SIZE_T
|
||||
|
||||
# Checks for library functions.
|
||||
AC_CHECK_FUNCS([memset sqrt strstr])
|
||||
|
||||
AC_SUBST([wincppflags])
|
||||
AC_SEARCH_LIBS([glBegin], [GL opengl32], [], AC_MSG_RESULT([OpenGL library was not found]))
|
||||
AC_SEARCH_LIBS([glewInit], [GLEW glew32], [], AC_MSG_RESULT([GLEW library was not found]))
|
||||
AC_SEARCH_LIBS([png_create_info_struct], [png], [], AC_MSG_RESULT([png library was not found]))
|
||||
AC_SEARCH_LIBS([SDL_SetVideoMode], [SDL], [], AC_MSG_ERROR([SDL library was not found]))
|
||||
AC_SEARCH_LIBS([aacircleColor], [SDL_gfx], [], AC_MSG_RESULT([SDL_gfx library was not found]))
|
||||
AC_SEARCH_LIBS([Mix_LoadMUS], [SDL_mixer], [], AC_MSG_ERROR([SDL_mixer library was not found]))
|
||||
AC_SEARCH_LIBS([TTF_OpenFont], [SDL_ttf], [], AC_MSG_RESULT([SDL_ttf library was not found]))
|
||||
|
||||
AC_CONFIG_FILES([Makefile])
|
||||
AC_OUTPUT
|
||||
|
Loading…
Reference in New Issue
Block a user