Commit Graph

80 Commits

Author SHA1 Message Date
Michael Stapelberg
3f5a0f0024 Switch to xcb-xkb and libxkbcommon
This removes our last dependency on Xlib! :)

(Okay, an Xlib dependency still comes in through other libraries that we
 link against, but it’s not us. Our code is simpler by this change and
 uses one less connection to X11.)
2014-06-21 19:10:37 +02:00
Tony Crisci
13db562551 Remove yajl major version conditionals
Yajl version ≥ 2 is required.

fixes #1156
2014-05-04 22:52:37 +02:00
David Coppa
2ba0d1ea49 OpenBSD does not have librt 2014-03-31 22:53:39 +02:00
Michael Stapelberg
2326ebfd63 enable shmlog when invoked as i3-with-shmlog, install symlink + .desktop file 2014-01-04 12:18:45 +01:00
Jean-Philippe Ouellet
454f11755e Remove flex/bison from common.mk since they aren't used anymore 2013-11-30 14:02:34 +01:00
Lancelot SIX
eca5e4598a libi3/root_atom_contents: handle data of arbitrary length
Handle data fetched from xcb_get_property_unchecked with arbitrary
length. This avoids having to rely on PATH_MAX macro where it is not
necessary.
2013-11-26 19:58:35 +01:00
Michael Stapelberg
da20cd397c switch from libXcursor to xcb-util-cursor 2013-08-17 09:44:20 +02:00
Michael Stapelberg
18e46ffae5 install i3-dmenu-desktop 2012-12-11 22:31:44 +01:00
Michael Stapelberg
5bea7cb7df docs: generate HTML from testsuite POD documentation 2012-09-10 12:03:14 +02:00
Michael Stapelberg
4636eb840d fix compilation with older xcb-util with -DXCB_COMPAT (Thanks okraits) 2012-09-03 14:55:27 +02:00
Quentin Glidic
f06161b58a common.mk: Check for Pango 2012-08-13 11:39:30 +02:00
Michael Stapelberg
884627ef20 use I3__FILE__ for DLOG, leave __FILE__ as is
See also commit 0e752070ac, which broke
source code listings in gdb unless you cd into i3/src. This should give
us best of both :-).
2012-08-12 12:19:47 +02:00
Michael Stapelberg
acdd5287a9 unbreak the build 2012-08-05 14:38:52 +02:00
Michael Stapelberg
78f5f2204d ipc: implement GET_VERSION to find out the i3 version
This is useful for third-party scripts which require certain features
and want to error out cleanly when they are run with an old i3 version.

Additionally, i3 --version might be different from what’s actually
running (an old version of the binary), so i3-msg -t get_version will be
the best way to figure out the i3 version you are actually running from
this commit on.
2012-08-05 14:30:05 +02:00
Quentin Glidic
395a6aaee5 common.mk: Rework version usage 2012-07-30 21:13:03 +02:00
Quentin Glidic
eb66337020 common.mk: Little reordering 2012-07-23 00:13:16 +02:00
Quentin Glidic
0b4ee7a1da common.mk: Split XCB common flags 2012-07-23 00:12:55 +02:00
Quentin Glidic
5e0cd52f10 common.mk: Split XCB keyboard flags 2012-07-23 00:06:37 +02:00
Quentin Glidic
51a0f312f2 common.mk: Split WM XCB flags 2012-07-23 00:04:01 +02:00
Quentin Glidic
fde8c0dd85 common.mk: Split Xlib flags 2012-07-23 00:04:01 +02:00
Quentin Glidic
5cf3751482 common.mk: Move -lm to i3_LIBS 2012-07-22 23:53:51 +02:00
Quentin Glidic
60bc6b0400 common.mk: Split Xcursor flags 2012-07-22 23:53:51 +02:00
Quentin Glidic
85b261c162 common.mk: Split yajl flags 2012-07-22 23:53:51 +02:00
Quentin Glidic
30934ea316 common.mk: Split libev flags 2012-07-22 23:53:51 +02:00
Quentin Glidic
79fc8462c0 common.mk: Split libpcre flags 2012-07-22 23:53:51 +02:00
Quentin Glidic
e232c06885 common.mk: Split libstartup-notification flags 2012-07-22 23:53:51 +02:00
Quentin Glidic
c7029a5e21 common.mk: Introduce I3_*FLAGS
CPPFLGES, CFLAGS and LDFLAGS should be user variables
We now provide default flags but use I3_*FLAGS flags for our own needed
flags

Also reoder lib flags a bit
2012-07-22 23:53:49 +02:00
Quentin Glidic
8029fae6a9 Move mans to the new Makefile layout 2012-07-22 20:27:13 +02:00
Quentin Glidic
66adb62e1f Move docs to the new Makefile layout 2012-07-22 19:57:48 +02:00
Quentin Glidic
e3b9ffe381 Move libi3 to the new Makefile layout 2012-07-22 19:57:21 +02:00
Quentin Glidic
97d857a5d0 commom.mk: Support V make variable (verbose build) 2012-07-22 18:45:12 +02:00
Michael Stapelberg
07a385bb7a don’t link against librt on Mac OS X (Thanks Marcus) 2012-05-02 20:06:57 +02:00
Michael Stapelberg
fbaa6d4a3d revert the debugging changes
Building a non-optimized (-O0 vs. -O2) Debian package required:

    echo 'export DEB_BUILD_OPTIONS=noopt' >> ~/.pbuilderrc
2012-01-23 22:21:44 +00:00
Michael Stapelberg
79d28f84c1 debug commit for the autobuilder, please ignore 2012-01-23 19:58:30 +00:00
Michael Stapelberg
e65ee63763 Implement logging to a SHM ringbuffer
This feature is automatically enabled when running a debug version of i3.
The logfile will use 1% of your physical RAM size, but at max 25 MiB.
2011-12-10 10:50:33 +00:00
Michael Stapelberg
acf29dbfd5 Makefiles: introduce $(FLEX) and $(BISON) 2011-11-22 00:01:01 +00:00
Michael Stapelberg
98baa222f7 remove obsolete TERM_EMU build option 2011-10-23 12:00:56 +01:00
Michael Stapelberg
b9db72dc8a Implement support for startup notifications
This only sets up startup notifications for the 'exec' commands and directives.

Monitoring startups follows later.
2011-10-10 15:54:17 +01:00
Raphael Kubo da Costa
99825ff268 common.mk: Silence some remaining pkg-config calls.
Some pkg-config calls still didn't redirect stderr to /dev/null, causing
the gnome-config error messages to be printed.
2011-10-10 11:43:02 +01:00
Michael Stapelberg
1942594ae9 makefile: redirect stderr to /dev/null when invoking pkg-config
This silences an error about gnome-config not being installed (pkg-config seems
to use gnome-config as a fall-back on some systems).
2011-10-09 18:35:58 +01:00
Michael Stapelberg
45a9eeb29d Bugfix: Don’t use a blank after comma in ldflags_for_lib calls (Thanks Raphael)
'-l foo' instead of '-lfoo' is a problem on FreeBSD.
2011-10-09 18:24:06 +01:00
Michael Stapelberg
094c26556e Introduce libi3, an *internal* library to eliminate code duplication 2011-10-02 16:11:30 +01:00
Michael Stapelberg
3629934b0a Check for PCRE version and disable PCRE_UCP for <= 8.10 2011-09-30 20:31:32 +01:00
Michael Stapelberg
6420b2b102 Introduce the i3-sensible-{pager,editor,terminal} scripts
The former two provide fallbacks in case $PAGER or $EDITOR is not set (which
might be more common than you think, because they have to be set in
~/.xsession, not in the shell configuration!) while the latter tries to launch
a terminal emulator. The scripts are most prominently used in i3-nagbar, which
alerts the user when the configuration is broken for some reason. Also,
i3-sensible-terminal is used in the default configuration.

This commit does not rely on the shell supporting ${PAGER:-less} anymore, which
is not the case for 'fish'.
2011-09-25 18:46:37 +01:00
Michael Stapelberg
2fc54aadf1 Implement support for PCRE regular expressions for all criteria (for_window, commands, assignments) 2011-09-10 23:53:11 +01:00
Michael Stapelberg
32ce533d54 enable -Wl,--as-needed only on Linux (doesn’t work on Mac OS X) 2011-08-01 18:09:27 +02:00
Michael Stapelberg
3c68a9158c LDFLAGS: add -Wl,--as-needed. reduces .so dependencies
Let’s see if that works on all systems :)
2011-08-01 16:13:38 +02:00
Michael Stapelberg
339a7cb8c3 make i3bar use i3’s common.mk 2011-08-01 16:13:19 +02:00
Michael Stapelberg
44f46a5ee6 Makefile: don’t set PREFIX/SYSCONFDIR (necessary for OpenBSD ports framework) (Thanks madroach) 2011-07-23 22:24:23 +02:00
Michael Stapelberg
fc583adb99 makefile: link -liconv on Darwin (Thanks Marcus) 2011-07-17 15:18:30 +02:00