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
|
*.o
|
||||||
*.pak
|
*.pak
|
||||||
starfighter
|
starfighter
|
||||||
|
src/starfighter
|
||||||
|
|
||||||
# Autoconf / Automake
|
# Autoconf / Automake
|
||||||
aclocal.m4
|
aclocal.m4
|
||||||
|
@ -23,18 +24,6 @@ config.h.in~
|
||||||
src/Makefile
|
src/Makefile
|
||||||
src/Makefile.in
|
src/Makefile.in
|
||||||
src/.deps
|
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
|
# Mac OS X
|
||||||
*.DS_Store
|
*.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/*
|
13
README.txt
13
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_image <http://www.libsdl.org/projects/SDL_image/>
|
||||||
* SDL2_mixer <http://www.libsdl.org/projects/SDL_mixer/>
|
* 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
|
make
|
||||||
|
|
||||||
And optionally (as root):
|
|
||||||
|
|
||||||
make install
|
make install
|
||||||
|
|
||||||
If this doesn't work, you may need to tweak the makefile.
|
Run "./configure --help" to see more options.
|
||||||
|
|
||||||
To play, simply run the starfighter binary.
|
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