Switched the build system from a hand-made makefile to Autotools.
That actually took quite some time, but it's finally finished now. It's missing only a couple minor things from the old Makefile.
This commit is contained in:
parent
9cc2fe8253
commit
e3c2e2fddc
|
@ -3,6 +3,7 @@ dist
|
|||
*.o
|
||||
*.pak
|
||||
starfighter
|
||||
src/starfighter
|
||||
|
||||
# Autoconf / Automake
|
||||
aclocal.m4
|
||||
|
@ -23,18 +24,6 @@ config.h.in~
|
|||
src/Makefile
|
||||
src/Makefile.in
|
||||
src/.deps
|
||||
data/Makefile
|
||||
data/Makefile.in
|
||||
data/.deps
|
||||
gfx/Makefile
|
||||
gfx/Makefile.in
|
||||
gfx/.deps
|
||||
music/Makefile
|
||||
music/Makefile.in
|
||||
music/.deps
|
||||
sound/Makefile
|
||||
sound/Makefile.in
|
||||
sound/.deps
|
||||
|
||||
# Mac OS X
|
||||
*.DS_Store
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
# This file has been dedicated to the public domain, to the extent
|
||||
# possible under applicable law, via CC0. See
|
||||
# http://creativecommons.org/publicdomain/zero/1.0/ for more
|
||||
# information. This file is offered as-is, without any warranty.
|
||||
|
||||
SUBDIRS = src
|
||||
|
||||
dist_doc_DATA = README.txt COPYING LICENSES
|
||||
nobase_dist_doc_DATA = docs/*
|
||||
|
||||
nobase_pkgdata_DATA = data/* gfx/* music/* sound/*
|
11
README.txt
11
README.txt
|
@ -55,14 +55,15 @@ Project: Starfighter depends on the following libraries to build:
|
|||
* SDL2_image <http://www.libsdl.org/projects/SDL_image/>
|
||||
* SDL2_mixer <http://www.libsdl.org/projects/SDL_mixer/>
|
||||
|
||||
Once you have all dependencies installed, simply run:
|
||||
Once you have all dependencies installed, you can do the following:
|
||||
|
||||
./configure
|
||||
make
|
||||
|
||||
And optionally (as root):
|
||||
|
||||
make install
|
||||
|
||||
If this doesn't work, you may need to tweak the makefile.
|
||||
Run "./configure --help" to see more options.
|
||||
|
||||
The third step ("make install") is technically optional, but highly
|
||||
recommended.
|
||||
|
||||
To play, simply run the starfighter binary.
|
|
@ -0,0 +1,48 @@
|
|||
# -*- Autoconf -*-
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
#
|
||||
# This file has been dedicated to the public domain, to the extent
|
||||
# possible under applicable law, via CC0. See
|
||||
# http://creativecommons.org/publicdomain/zero/1.0/ for more
|
||||
# information. This file is offered as-is, without any warranty.
|
||||
|
||||
AC_PREREQ([2.69])
|
||||
AC_INIT([Project: Starfighter], [1.7-dev], [onpon4@riseup.net], [starfighter])
|
||||
AM_INIT_AUTOMAKE([foreign -Wall -Werror])
|
||||
AC_CONFIG_SRCDIR([src/Starfighter.cpp])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
PKG_PROG_PKG_CONFIG
|
||||
|
||||
# Checks for programs.
|
||||
AC_PROG_CXX
|
||||
AC_PROG_CC
|
||||
AC_PROG_INSTALL
|
||||
|
||||
STARFIGHTER_CFLAGS="-DVERSION=\\\"$PACKAGE_VERSION\\\""
|
||||
|
||||
# Checks for libraries.
|
||||
PKG_CHECK_EXISTS([SDL2_mixer], [
|
||||
PKG_CHECK_MODULES([SDL], [sdl2 SDL2_image SDL2_mixer])
|
||||
], [
|
||||
PKG_CHECK_MODULES([SDL], [sdl2 SDL2_image])
|
||||
STARFIGHTER_CFLAGS="$STARFIGHTER_CFLAGS -DNOSOUND"
|
||||
echo "Note: SDL_mixer not found; audio will not be supported."
|
||||
])
|
||||
|
||||
AC_SUBST([STARFIGHTER_CFLAGS])
|
||||
|
||||
# Checks for header files.
|
||||
AC_CHECK_HEADERS([ctype.h errno.h stdio.h stdlib.h string.h time.h math.h pwd.h sys/stat.h unistd.h])
|
||||
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_C_INLINE
|
||||
|
||||
# Checks for library functions.
|
||||
AC_FUNC_MALLOC
|
||||
AC_CHECK_FUNCS([atexit mkdir])
|
||||
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
src/Makefile
|
||||
])
|
||||
AC_OUTPUT
|
|
@ -0,0 +1,7 @@
|
|||
# This file has been dedicated to the public domain, to the extent
|
||||
# possible under applicable law, via CC0. See
|
||||
# http://creativecommons.org/publicdomain/zero/1.0/ for more
|
||||
# information. This file is offered as-is, without any warranty.
|
||||
|
||||
nobase_pkgdata_DATA = \
|
||||
credits.txt
|
|
@ -0,0 +1,18 @@
|
|||
# This file has been dedicated to the public domain, to the extent
|
||||
# possible under applicable law, via CC0. See
|
||||
# http://creativecommons.org/publicdomain/zero/1.0/ for more
|
||||
# information. This file is offered as-is, without any warranty.
|
||||
|
||||
nobase_dist_doc_DATA = \
|
||||
arrowNorthEast.png \
|
||||
COPYING \
|
||||
dollar.png \
|
||||
heart.png \
|
||||
index.html \
|
||||
plasmaAmmo.png \
|
||||
plasmaDamage.png \
|
||||
plasmaRate.png \
|
||||
rocket.png \
|
||||
rocketAmmo.png \
|
||||
sflogo.png \
|
||||
superCharge.png
|
|
@ -0,0 +1,195 @@
|
|||
# This file has been dedicated to the public domain, to the extent
|
||||
# possible under applicable law, via CC0. See
|
||||
# http://creativecommons.org/publicdomain/zero/1.0/ for more
|
||||
# information. This file is offered as-is, without any warranty.
|
||||
|
||||
nobase_pkgdata_DATA = \
|
||||
aimFighter1.png \
|
||||
aimFighter2.png \
|
||||
alienDevice.png \
|
||||
arrowEast.png \
|
||||
arrowNorth.png \
|
||||
arrowNorthEast.png \
|
||||
arrowNorthWest.png \
|
||||
arrowSouth.png \
|
||||
arrowSouthEast.png \
|
||||
arrowSouthWest.png \
|
||||
arrowWest.png \
|
||||
asteroid1.png \
|
||||
asteroid2.png \
|
||||
asteroid3.png \
|
||||
barrier.png \
|
||||
buyIcon.png \
|
||||
cargo1.png \
|
||||
chainLink.png \
|
||||
cloakShip1.png \
|
||||
cloakShip2.png \
|
||||
credits.jpg \
|
||||
cursor.png \
|
||||
dollar.png \
|
||||
drone1.png \
|
||||
drone2.png \
|
||||
dualFighter1.png \
|
||||
dualFighter2.png \
|
||||
elec1.png \
|
||||
elec2.png \
|
||||
elec3.png \
|
||||
elec4.png \
|
||||
eliteFighter1.png \
|
||||
eliteFighter2.png \
|
||||
escort1.png \
|
||||
escort2.png \
|
||||
evilUrsula1.png \
|
||||
evilUrsula2.png \
|
||||
execTrans1.png \
|
||||
execTrans2.png \
|
||||
explode1.png \
|
||||
explode2.png \
|
||||
explode3.png \
|
||||
explode4.png \
|
||||
explode05.png \
|
||||
explode06.png \
|
||||
explode07.png \
|
||||
explode08.png \
|
||||
explode9.png \
|
||||
explode10.png \
|
||||
explode11.png \
|
||||
explode12.png \
|
||||
explode13.png \
|
||||
explode14.png \
|
||||
explode15.png \
|
||||
explode16.png \
|
||||
eyananth.jpg \
|
||||
face_chris.png \
|
||||
face_crew.png \
|
||||
face_kline.png \
|
||||
face_krass.png \
|
||||
face_phoebe.png \
|
||||
face_sid.png \
|
||||
face_ursula.png \
|
||||
firefly1.png \
|
||||
firefly2.png \
|
||||
firefly-big.png \
|
||||
friendArrowEast.png \
|
||||
friendArrowNorth.png \
|
||||
friendArrowNorthEast.png \
|
||||
friendArrowNorthWest.png \
|
||||
friendArrowSouth.png \
|
||||
friendArrowSouthEast.png \
|
||||
friendArrowSouthWest.png \
|
||||
friendArrowWest.png \
|
||||
frigateBody1.png \
|
||||
frigateBody2.png \
|
||||
frigateGun11.png \
|
||||
frigateGun12.png \
|
||||
frigateGun21.png \
|
||||
frigateGun22.png \
|
||||
gameover.png \
|
||||
goodTrans1.png \
|
||||
goodTrans2.png \
|
||||
greenDir.png \
|
||||
heart.png \
|
||||
icon1.png \
|
||||
icon2.png \
|
||||
icon3.png \
|
||||
icon4.png \
|
||||
icon5.png \
|
||||
icon6.png \
|
||||
icon7.png \
|
||||
icon8.png \
|
||||
icon9.png \
|
||||
icon10.png \
|
||||
icon11.png \
|
||||
icon12.png \
|
||||
icon13.png \
|
||||
icon14.png \
|
||||
icon15.png \
|
||||
icon16.png \
|
||||
icon17.png \
|
||||
icon18.png \
|
||||
icon19.png \
|
||||
icon20.png \
|
||||
icon21.png \
|
||||
icon22.png \
|
||||
icon23.png \
|
||||
icon24.png \
|
||||
icon25.png \
|
||||
icon26.png \
|
||||
iconBase.png \
|
||||
kline11.png \
|
||||
kline12.png \
|
||||
klineText.png \
|
||||
merc1.png \
|
||||
merc2.png \
|
||||
mine.png \
|
||||
mineBoss1.png \
|
||||
mineBoss2.png \
|
||||
mineBossWing11.png \
|
||||
mineBossWing12.png \
|
||||
mineBossWing21.png \
|
||||
mineBossWing22.png \
|
||||
mineBossWing31.png \
|
||||
mineBossWing32.png \
|
||||
mineBossWing41.png \
|
||||
mineBossWing42.png \
|
||||
miner1.png \
|
||||
miner2.png \
|
||||
missileBoat1.png \
|
||||
missileBoat2.png \
|
||||
mobileCannon1.png \
|
||||
mobileCannon2.png \
|
||||
mobileShield1.png \
|
||||
mobileShield2.png \
|
||||
mordor.jpg \
|
||||
ore1.png \
|
||||
ore2.png \
|
||||
ore3.png \
|
||||
phoebeText.png \
|
||||
planet_blue.png \
|
||||
planet_green.png \
|
||||
planet_orange.png \
|
||||
planet_red.png \
|
||||
planet_sun.png \
|
||||
plasmaAmmo.png \
|
||||
plasmaDamage.png \
|
||||
plasmaGreen.png \
|
||||
plasmaRate.png \
|
||||
plasmaRed.png \
|
||||
plutoBoss1.png \
|
||||
plutoBoss2.png \
|
||||
pod.png \
|
||||
prlogo.png \
|
||||
rebelCarrier1.png \
|
||||
rebelCarrier2.png \
|
||||
redDir.png \
|
||||
rocket.png \
|
||||
rocket1.png \
|
||||
rocket2.png \
|
||||
rocketAmmo.png \
|
||||
sellIcon.png \
|
||||
sflogo.png \
|
||||
sid1.png \
|
||||
sid2.png \
|
||||
sidText.png \
|
||||
slaveTrans1.png \
|
||||
slaveTrans2.png \
|
||||
smallFont.png \
|
||||
sol.jpg \
|
||||
spirit.jpg \
|
||||
splitBoss11.png \
|
||||
splitBoss12.png \
|
||||
splitBoss21.png \
|
||||
splitBoss22.png \
|
||||
splitBoss31.png \
|
||||
splitBoss32.png \
|
||||
startUp.jpg \
|
||||
stunBolt.png \
|
||||
superCharge.png \
|
||||
targetText.png \
|
||||
transport1.png \
|
||||
transport2.png \
|
||||
tug1.png \
|
||||
tug2.png \
|
||||
ursulaText.png \
|
||||
wingmate1.png \
|
||||
wingmate2.png
|
|
@ -0,0 +1,17 @@
|
|||
# This file has been dedicated to the public domain, to the extent
|
||||
# possible under applicable law, via CC0. See
|
||||
# http://creativecommons.org/publicdomain/zero/1.0/ for more
|
||||
# information. This file is offered as-is, without any warranty.
|
||||
|
||||
nobase_pkgdata_DATA = \
|
||||
death.ogg \
|
||||
frozen_jam.ogg \
|
||||
last_cyber_dance.ogg \
|
||||
orbital_colossus.ogg \
|
||||
railjet_short.ogg \
|
||||
RE.ogg \
|
||||
rise_of_spirit.ogg \
|
||||
sound_and_silence.ogg \
|
||||
space_dimensions.ogg \
|
||||
through_space.ogg \
|
||||
walking_among_androids.ogg
|
|
@ -0,0 +1,24 @@
|
|||
# This file has been dedicated to the public domain, to the extent
|
||||
# possible under applicable law, via CC0. See
|
||||
# http://creativecommons.org/publicdomain/zero/1.0/ for more
|
||||
# information. This file is offered as-is, without any warranty.
|
||||
|
||||
nobase_pkgdata_DATA = \
|
||||
beamLaser.ogg \
|
||||
cloak.ogg \
|
||||
clock.ogg \
|
||||
explode.ogg \
|
||||
explode2.ogg \
|
||||
explode3.ogg \
|
||||
explode4.ogg \
|
||||
flyby.ogg \
|
||||
hyperSpace.ogg \
|
||||
item.ogg \
|
||||
laser.ogg \
|
||||
maledeath.ogg \
|
||||
missile.ogg \
|
||||
missile2.ogg \
|
||||
plasma.ogg \
|
||||
plasma2.ogg \
|
||||
plasma3.ogg \
|
||||
shield.ogg
|
|
@ -0,0 +1,65 @@
|
|||
# This file has been dedicated to the public domain, to the extent
|
||||
# possible under applicable law, via CC0. See
|
||||
# http://creativecommons.org/publicdomain/zero/1.0/ for more
|
||||
# information. This file is offered as-is, without any warranty.
|
||||
|
||||
bin_PROGRAMS = starfighter
|
||||
|
||||
starfighter_CPPFLAGS = $(STARFIGHTER_CFLAGS) -Wall -O2 -DDATADIR=\"$(pkgdatadir)\"
|
||||
starfighter_CXXFLAGS = $(SDL_CFLAGS)
|
||||
starfighter_LDADD = $(SDL_LIBS)
|
||||
|
||||
starfighter_SOURCES = \
|
||||
Starfighter.cpp \
|
||||
alien.cpp \
|
||||
alien.h \
|
||||
audio.cpp \
|
||||
audio.h \
|
||||
bullet.cpp \
|
||||
bullet.h \
|
||||
cargo.cpp \
|
||||
cargo.h \
|
||||
collectable.cpp \
|
||||
collectable.h \
|
||||
colors.cpp \
|
||||
colors.h \
|
||||
cutscene.cpp \
|
||||
cutscene.h \
|
||||
defs.h \
|
||||
engine.cpp \
|
||||
engine.h \
|
||||
event.cpp \
|
||||
event.h \
|
||||
explosion.cpp \
|
||||
explosion.h \
|
||||
game.cpp \
|
||||
game.h \
|
||||
gfx.cpp \
|
||||
gfx.h \
|
||||
info.cpp \
|
||||
info.h \
|
||||
intermission.cpp \
|
||||
intermission.h \
|
||||
mission.cpp \
|
||||
mission.h \
|
||||
player.cpp \
|
||||
player.h \
|
||||
radio.cpp \
|
||||
radio.h \
|
||||
renderer.cpp \
|
||||
renderer.h \
|
||||
save.cpp \
|
||||
save.h \
|
||||
screen.cpp \
|
||||
screen.h \
|
||||
ship.cpp \
|
||||
ship.h \
|
||||
shop.cpp \
|
||||
shop.h \
|
||||
structs.h \
|
||||
title.cpp \
|
||||
title.h \
|
||||
weapons.cpp \
|
||||
weapons.h \
|
||||
window.cpp \
|
||||
window.h
|
Loading…
Reference in New Issue