CMake: Difference between revisions

From Armagetron Advanced
Epsy (talk | contribs)
→What needs to be done/tested: added configure-like wrapper suggestion
Epsy (talk | contribs)
updated
Line 9: Line 9:
** Resource sorting
** Resource sorting
* Installing
* Installing
* Build options
* BASIC ./configure-like wrapper: only stuff for packagers:
**--prefix (PREFIX)
**--sysconfdir (AA_SYSCONFDIR)
**--mandir (AA_MANDIT)
**--enable-dedicated (DEDICATED)
**--enable-sysinstall
**--enable-games


==What needs to be done/tested==
==What needs to be done/tested==
Line 33: Line 43:
* BASIC ./configure-like wrapper: only stuff for packagers:
* BASIC ./configure-like wrapper: only stuff for packagers:
** http://repos.archlinux.org/wsvn/community/armagetronad/repos/community-i686/PKGBUILD
** http://repos.archlinux.org/wsvn/community/armagetronad/repos/community-i686/PKGBUILD
** --prefix, --sysconfdir, --mandir, --disable-games, --enable-dedicated
** --enable-multiver, --disable-useradd, --disable-etc, --disable-initscripts
** --disable-sysinstall, --enable-multiver, --disable-useradd, --disable-etc, --disable-initscripts

Revision as of 10:08, 23 January 2010

The CMake branch implements CMake as build files generator instead of autotools.

What Works

  • Building Client OR Dedicated (DEDICATED cmake var)
  • Building Master
  • Running them in a non-outsourced build
    • Version tags
      • Releasing (RELEASE cmake var)
    • Resource sorting
  • Installing
  • Build options
  • BASIC ./configure-like wrapper: only stuff for packagers:
    • --prefix (PREFIX)
    • --sysconfdir (AA_SYSCONFDIR)
    • --mandir (AA_MANDIT)
    • --enable-dedicated (DEDICATED)
    • --enable-sysinstall
    • --enable-games


What needs to be done/tested

  • Windows/Mac support and cross-compilation
  • Debug targets
  • Tarball'ing
  • Build options:
    • Sound support enable/disable
    • Particle system
    • Joystick support
    • Respawn support
    • Authentication support
    • Zones v1 support
    • Zones v2 support
      • Plugins: Fortress, <more to come>...
    • --enable-{sysinstall,useradd,etc,desktop,initscripts,restoreold,migratestate}
    • Ruby/Python support (currently exclusive?)
    • Uninstall (optionally via a package manager)
    • Multiple Versions
    • binreloc support
    • MAXCLIENTS
    • GLEW support
    • FTGL support
  • BASIC ./configure-like wrapper: only stuff for packagers: