Commit graph

1214 commits

Author SHA1 Message Date
Andrea Bolognani
092e5c269f linux: Enable PIE
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.
2016-07-31 19:05:10 +02:00
Andrea Bolognani
2c2034e3bf linux: Use -fPIC instead of -fpic
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.
2016-07-31 19:03:38 +02:00
Andrea Bolognani
ac945112ba linux: Use --as-needed when linking
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 https://bugs.debian.org/829709), 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.
2016-07-05 16:40:48 +02:00
Andrea Bolognani
857820719e linux: Use pkg-config for dependencies' CPPFLAGS and LDLIBS
Instead of hardcoding the information needed to compile and link
against libraries, call pkg-config to retrieve them at runtime.
2016-07-03 22:48:18 +02:00
Andrea Bolognani
831173e62a linux: Split off dependencies' CPPFLAGS
Use MAINT_CPPFLAGS only for stuff used directly by spectrwm, and
move all the stuff needed by dependencies to the newly-defined
BIN_CPPFLAGS and LIB_CPPFLAGS.
2016-07-03 22:46:16 +02:00
Andrea Bolognani
c85236d67f linux: Reduce linking for libswmhack
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
pointless.

Split MAINT_LDLIBS into BIN_LDLIBS and LIB_LDLIBS, and use them
for spectrwm and libswmhack respectively.
2016-07-03 22:45:04 +02:00
James Campos
ef627eb8aa update man page link 2016-06-23 16:09:29 -07:00
Reginald Kennedy
26d564b750 Add .gitattributes to exclude some files from release archives. 2016-06-10 12:02:07 +08:00
Marco Peereboom
9bd9b9f49f Prepare for release 3.0.2. 2016-05-23 11:45:08 -05:00
Reginald Kennedy
96a9efc6dd Ensure iconic windows stay iconic when reparenting. 2016-05-18 00:39:01 +08:00
Reginald Kennedy
68a43ba16a Fix workspace cleanup on RandR screenchange.
Fixes #127 and #120
2016-05-09 23:21:01 +08:00
Marco Peereboom
7880c3b0d7 Prepare for release 3.0.1. 2016-05-05 09:15:14 -05:00
Reginald Kennedy
0fb39f91df Redraw the focus window frame when changing regions with the pointer.
fixes #126
2016-05-05 01:20:24 +08:00
Reginald Kennedy
7e685eaa4c Prepend SWM_LIB to LD_PRELOAD instead of clobbering.
closes #124
2016-05-04 22:29:26 +08:00
Marco Peereboom
86268c60a5 retire unmaintained man pages harder 2016-05-03 14:51:17 -05:00
Marco Peereboom
bb0d4973d3 right link and add feedback heading 2016-05-02 17:43:45 -05:00
Marco Peereboom
98659e296b Prepare for release 3.0.0. 2016-05-02 17:32:42 -05:00
Marco Peereboom
ab4a7e9f2f stray ] 2016-05-02 17:24:15 -05:00
Marco Peereboom
562c9a6d64 attempt to add html doco 2016-05-02 17:23:18 -05:00
Marco Peereboom
1bc0a49dc3 add html man page 2016-05-02 17:15:59 -05:00
Marco Peereboom
a3149150e0 retire man pages that are way outdated and add html target for english man page 2016-05-02 17:14:52 -05:00
Marco Peereboom
03c9b0e203 add screenshots 2016-05-02 16:58:25 -05:00
Marco Peereboom
e6e4a86e55 commit this for test 2016-05-02 16:31:16 -05:00
Marco Peereboom
c9ecae3aca got to love md moving target... 2016-05-02 16:27:08 -05:00
Marco Peereboom
3573095bf0 start reworking wiki/front page 2016-05-02 16:21:11 -05:00
Reginald Kennedy
6b0c4d1493 Add new fullscreen_toggle action.
Toggles _NET_WM_STATE_FULLSCREEN on the current window.
Default binding: M-S-e
2016-05-03 04:15:23 +08:00
Reginald Kennedy
f82969b59c Rename raise_focused to raise and set default binding to M-r.
Rename mvws_next and mvws_prev to mvrg_next and mvrg_prev, respectively.

Fix man page typo.

Tweak styling.
2016-05-03 03:43:53 +08:00
Campbell Barton
bc124ae0b2 Send window to next/previous regions workspace 2016-05-03 02:40:59 +08:00
Yuri D'Elia
df6ae9dcd4 Implement the "raise_focused" function 2016-05-03 01:48:51 +08:00
Yuri D'Elia
a77860696e Always swap regions when using rg_move_next/rg_move_prev
Fixes interaction with the option workspace_clamp
2016-05-03 01:20:27 +08:00
Reginald Kennedy
7a7a5aa571 Remove unused macros. 2016-04-29 23:50:12 +08:00
Reginald Kennedy
8fcba7a479 Update the license in spectrwm.c
spectrwm.c does not contain any 'copy' or 'substantial portion' of dwm.
2016-04-29 22:52:54 +08:00
Marco Peereboom
d4acae1759 Revert "-Werror, because we care"
This reverts commit 962991cc99.

Suggested by LordReg.  Damn him and all his making sense.
2016-04-29 07:25:35 -05:00
Marco Peereboom
962991cc99 -Werror, because we care 2016-04-27 10:56:30 -05:00
David Hill
22faec8354 cleanup warnings 2016-04-27 11:28:11 -04:00
Reginald Kennedy
53fae91f1d Fix segfault when handling RRScreenChangeNotify.
Fixes #118
2016-04-23 04:48:12 +08:00
Reginald Kennedy
77e1075c10 Fix ICCCM 4.2.3 compliance and add special handling for Java.
Fix transient windows blocking focus to respective main windows.

Fix override_redirect window focus issue.

Fix window borders when applications set focus.

Add more details to debug overlay.

Fixes #42
2016-04-22 02:45:13 +08:00
Reginald Kennedy
da92f07e6b Upgrade to window reparenting.
Change X11 window borders to drawn frames.

Add support for _NET_REQUEST_FRAME_EXTENTS.

Disable java_workaround.
We no longer need to spoof the LG3D non-reparenting window manager.
A dummy option is still present to prevent a startup exception.

Remove the use of BORDER() since it is no longer needed.

Fix move_ on tiled.

Add new debug_toggle bind for SWM_DEBUG.

Fix managing of mapped 'withdrawn' windows.

Wait for all x11 events to finish processing on shutdown_cleanup.
2016-04-22 02:41:46 +08:00
Marco Peereboom
0f2ef41b3d give up on printing tag 2016-04-14 09:35:21 -05:00
Reginald Kennedy
37f7ee73cc Fix possible delay on uniconify/search_win/search_workspace. 2016-03-23 10:38:38 +08:00
Marco Peereboom
de026ee5da xcb_aux_sync moved to xcb-util 2016-03-22 11:45:55 -05:00
Reginald Kennedy
e4d823fc43 Fix spectrwm.conf unbind example. 2015-07-04 13:25:39 +08:00
Reginald Kennedy
0e4d41f065 Add SIMPLEQ->STAILQ macros for freebsd. 2015-05-31 07:25:46 +08:00
Marco Peereboom
fdc1517bca Prepare for release 2.7.2. 2015-05-26 17:03:36 -05:00
Marco Peereboom
320dc6342e Revert "Prepare for release 2.8.0."
This reverts commit a7ba4e04cc.
2015-05-26 16:44:49 -05:00
Marco Peereboom
a7ba4e04cc Prepare for release 2.8.0. 2015-05-26 16:41:39 -05:00
Reginald Kennedy
f12e178ce2 Restore Num_Lock workaround.
If Num_Lock is mapped to a modifier, filter the modifier.

closes #103
2015-05-27 04:43:32 +08:00
Marco Peereboom
bcc109d826 Prepare for release 2.7.1. 2015-05-24 09:03:16 -05:00
Reginald Kennedy
19d9110314 Fix autorun.
free() from memory leak fix was too early.
2015-05-24 20:39:37 +08:00
Marco Peereboom
cea3baef91 Prepare for release 2.7.0. 2015-05-22 10:40:59 -05:00