mirror of
https://codeberg.org/dwl/dwl.git
synced 2026-03-27 07:58:11 -04:00
move util.c to util.h
This allows single-source compilation and whole-program optimization using something like: make CFLAGS='-flto -ffunction-sections -fdata-sections -Wl,--gc-sections' Furthermore, move more compositor-agnostic utility functions/macros to util.h, similar to the original dwm sources.
This commit is contained in:
parent
a2d03cf618
commit
0928b2115e
5 changed files with 61 additions and 69 deletions
14
Makefile
14
Makefile
|
|
@ -5,7 +5,7 @@ include config.mk
|
|||
|
||||
# flags for compiling
|
||||
DWLCPPFLAGS = -I. -DWLR_USE_UNSTABLE -D_POSIX_C_SOURCE=200809L \
|
||||
-DVERSION=\"$(VERSION)\" $(XWAYLAND)
|
||||
-DVERSION=\"$(VERSION)\" $(XWAYLAND) $(CPPFLAGS)
|
||||
DWLDEVCFLAGS = -g -Wpedantic -Wall -Wextra -Wdeclaration-after-statement \
|
||||
-Wno-unused-parameter -Wshadow -Wunused-macros -Werror=strict-prototypes \
|
||||
-Werror=implicit -Werror=return-type -Werror=incompatible-pointer-types \
|
||||
|
|
@ -17,12 +17,10 @@ DWLCFLAGS = `$(PKG_CONFIG) --cflags $(PKGS)` $(WLR_INCS) $(DWLCPPFLAGS) $(DWLDEV
|
|||
LDLIBS = `$(PKG_CONFIG) --libs $(PKGS)` $(WLR_LIBS) -lm $(LIBS)
|
||||
|
||||
all: dwl
|
||||
dwl: dwl.o util.o
|
||||
$(CC) dwl.o util.o $(DWLCFLAGS) $(LDFLAGS) $(LDLIBS) -o $@
|
||||
dwl.o: dwl.c client.h config.h config.mk cursor-shape-v1-protocol.h \
|
||||
dwl: dwl.c client.h config.h util.h config.mk cursor-shape-v1-protocol.h \
|
||||
pointer-constraints-unstable-v1-protocol.h wlr-layer-shell-unstable-v1-protocol.h \
|
||||
wlr-output-power-management-unstable-v1-protocol.h xdg-shell-protocol.h
|
||||
util.o: util.c util.h
|
||||
$(CC) dwl.c $(DWLCFLAGS) $(LDFLAGS) $(LDLIBS) -o $@
|
||||
|
||||
# wayland-scanner is a tool which generates C headers and rigging for Wayland
|
||||
# protocols, which are specified in XML. wlroots requires you to rig these up
|
||||
|
|
@ -54,7 +52,7 @@ clean:
|
|||
dist: clean
|
||||
mkdir -p dwl-$(VERSION)
|
||||
cp -R LICENSE* Makefile CHANGELOG.md README.md client.h config.def.h \
|
||||
config.mk protocols dwl.1 dwl.c util.c util.h dwl.desktop \
|
||||
config.mk protocols dwl.1 dwl.c util.h dwl.desktop \
|
||||
dwl-$(VERSION)
|
||||
tar -caf dwl-$(VERSION).tar.gz dwl-$(VERSION)
|
||||
rm -rf dwl-$(VERSION)
|
||||
|
|
@ -73,7 +71,3 @@ install: dwl
|
|||
uninstall:
|
||||
rm -f $(DESTDIR)$(PREFIX)/bin/dwl $(DESTDIR)$(MANDIR)/man1/dwl.1 \
|
||||
$(DESTDIR)$(DATADIR)/wayland-sessions/dwl.desktop
|
||||
|
||||
.SUFFIXES: .c .o
|
||||
.c.o:
|
||||
$(CC) $(CPPFLAGS) $(DWLCFLAGS) -o $@ -c $<
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue