Commits on Sep 10, 2018
  1. CHANGELOG: Add hystorical releases

    andreabolognani authored and LordReg committed Sep 9, 2018
    For each release, the date it taken from the corresponding
    git tag; the one exception is 2.4.0, where the tag was created
    months after the commit it points to.
    Information about releases is taken from [1] and minimally
    edited to work in the new context, along with being fixed when
    While every single release from 1.0.0 onwards is now accounted
    for, several of them lack detailed information: tracking
    existing release notes about them or writing them from scratch
    is left as an exercise to the reader.
  2. CHANGELOG: Fix and tweak existing entries

    andreabolognani authored and LordReg committed Sep 9, 2018
    Reflow the most recent entry to fit into 80 columns, make sure
    there are two empty lines between entries, and fix the release
    date for spectrwm 3.0.0 (the tag was created on May 2, despite
    the "releases" page on GitHub claiming otherwise).
Commits on Aug 17, 2018
  1. NEWS: Add release notes

    andreabolognani authored and marcopeereboom committed Dec 2, 2017
    Since 3.0.0, release notes for spectrwm are already being
    compiled and ultimately published at
    but it would be useful if they were included in the release
    tarball themselves as well.
    The contents of the file are taken straight from the
    page mentioned above, with only very minor editing.
Commits on Feb 20, 2018
  1. Add keywords to desktop file

    andreabolognani authored and LordReg committed Feb 18, 2018
Commits on Aug 26, 2016
  1. Fix man errors

    andreabolognani authored and LordReg committed Jun 26, 2016
    Remove all uses of the .Cm macro that are immediately followed
    by another macro, such as .Ns or .Aq.
    [ tweak commit message; resolves 'man --warnings']
    closes #138
  2. Include the top level header of each xcb module used

    andreabolognani authored and LordReg committed Jul 11, 2016
    One xcb module, one header file: <xcb/xcb.h> should to be
    included directly, instead of relying on other modules dragging
    it in; on the other hand, it's okay to include just the top
    level <xcb/xcb_util.h> instead of the three separate sub-headers.
    [ skip xcb_util.h since it breaks xcb-util < 0.3.8]
    closes #142
Commits on Jul 31, 2016
  1. linux: Enable PIE

    andreabolognani committed Jul 31, 2016
    PIE (position-independent executables) is a security feature
    that has been made reasonably cheap by recent improvements in
    GCC; as a result, more and more Linux distributions are pushing
    for its adoption.
    Unfortunately, PIE and PIC are not compatible, so we have to
    manage the CFLAGS and LDFLAGS used to compile the library and
    the executable indipendently.
  2. linux: Use -fPIC instead of -fpic

    andreabolognani committed Jul 31, 2016
    According to GCC's documentation, -fpic can have compatibility
    issues on some platforms. Use -fPIC instead, which generates
    slightly bigger objects but is generally more likely to work.
    Get rid of -DPIC, since the symbol is not used anywhere.
Commits on Jul 5, 2016
  1. linux: Use --as-needed when linking

    andreabolognani committed Jul 5, 2016
    Using this flag will cause the linker to ignore any libraries
    that have been listed on the command line but whose symbols are
    not actually used.
    Right now, it just gets rid of the unnecessary linking against
    xcb-render (see, but it might
    catch missing dependencies in the future, and it will generally
    keep the resulting binaries nice and tidy.
    Ubuntu and Arch are both using --as-needed by default already,
    and other distributions will probably switch at some point.
Commits on Jul 3, 2016
  1. linux: Use pkg-config for dependencies' CPPFLAGS and LDLIBS

    andreabolognani committed Jul 3, 2016
    Instead of hardcoding the information needed to compile and link
    against libraries, call pkg-config to retrieve them at runtime.
  2. linux: Split off dependencies' CPPFLAGS

    andreabolognani committed Jul 3, 2016
    Use MAINT_CPPFLAGS only for stuff used directly by spectrwm, and
    move all the stuff needed by dependencies to the newly-defined
  3. linux: Reduce linking for libswmhack

    andreabolognani committed Jul 2, 2016
    The libswmhack library uses dlopen() and friends, so it needs
    to link against libdl; on the other hand, it doesn't use nearly
    as many library as spectrwm itself, so linking against them is
    Split MAINT_LDLIBS into BIN_LDLIBS and LIB_LDLIBS, and use them
    for spectrwm and libswmhack respectively.
Commits on Sep 9, 2014
Commits on Sep 4, 2014
Commits on Aug 25, 2014
Commits on Aug 14, 2014
  1. Improve Linux Makefile.

    andreabolognani authored and LordReg committed Aug 11, 2014
    The following changes have been implemented:
      * make sure all standard (eg. $CFLAGS) variables are taken into
        account when compiling;
      * define default compilation flags in separate $MAINT_* variables
        so that user-defined variables can override them;
      * split default flags the expected way, eg. $CPPFLAGS instead of
        $CFLAGS for C preprocessor flags;
      * declare all dependencies, including the ones on header files;
      * install localized man pages in the corresponding locale-qualified
        directories, so that man(1) can pick them up automatically;
      * install .desktop file;
      * support $DESTDIR for downstream maintainers' convenience;
      * provide uninstall target;
      * get rid of symlink hackery.
Commits on Aug 9, 2014
  1. Improve English man page.

    andreabolognani committed Aug 9, 2014
    The improvements fall into three categories:
      1. typos / grammar;
      2. internal consistency, eg. the format of all options is described
         using the same conventions;
      3. better semantics, eg. using .Ar instead of .Pa for arguments.