192 lines
7.3 KiB
Makefile
192 lines
7.3 KiB
Makefile
# speedwm // minimal X window manager designed for productivity and aesthetics.
|
|
# See LICENSE file for copyright and license details.
|
|
|
|
include config.mk
|
|
|
|
SRC = drw.c speedwm.c util.c
|
|
OBJ = ${SRC:.c=.o}
|
|
|
|
ifdef USEIPC
|
|
all: options speedwm speedwm-msg
|
|
else
|
|
all: options speedwm
|
|
endif
|
|
|
|
options:
|
|
@echo speedwm build options:
|
|
@echo "CFLAGS = ${CFLAGS}"
|
|
@echo "LDFLAGS = ${LDFLAGS}"
|
|
@echo "CC = ${CC}"
|
|
|
|
.c.o:
|
|
${CC} -c ${CFLAGS} $<
|
|
|
|
${OBJ}: config.mk
|
|
|
|
speedwm: ${OBJ}
|
|
${CC} -o $@ ${OBJ} ${LDFLAGS} ; rm -f *.o
|
|
|
|
ifdef USEIPC
|
|
speedwm-msg: toggle/ipc-speedwm-msg.o
|
|
${CC} -o $@ toggle/ipc-speedwm-msg.c ${LDFLAGS} ; rm -f ipc-speedwm-msg.o
|
|
endif
|
|
|
|
clean:
|
|
rm -f speedwm ${OBJ} speedwm-spde-${VERSION}.tar.gz && echo "Cleaned!"
|
|
|
|
dist: clean
|
|
mkdir -p speedwm-spde-${VERSION}
|
|
cp -R *.mk *.c *.h *.png docs patches status LICENSE Makefile scripts speedwm-spde-${VERSION}
|
|
tar -cf speedwm-spde-${VERSION}.tar speedwm-spde-${VERSION}
|
|
gzip speedwm-spde-${VERSION}.tar
|
|
rm -rf speedwm-spde-${VERSION} speedwm
|
|
rm -rf speedwm-spde-${VERSION} speedwm-msg
|
|
|
|
install: all
|
|
touch drw.o speedwm.o util.o
|
|
mkdir -p ${DESTDIR}${PREFIX}/bin
|
|
[ -f speedwm-msg ] && cp -f speedwm speedwm-msg ${DESTDIR}${PREFIX}/bin || :
|
|
chmod 755 ${DESTDIR}${PREFIX}/bin/speedwm
|
|
[ -f speedwm-msg ] && chmod 755 ${DESTDIR}${PREFIX}/bin/speedwm-msg || :
|
|
cp -f docs/bindlist ${DESTDIR}${PREFIX}/share/speedwm-bindlist
|
|
cp -f docs/deplist ${DESTDIR}${PREFIX}/share/speedwm-deplist
|
|
cp -f docs/about ${DESTDIR}${PREFIX}/share/speedwm-about
|
|
cp -f docs/about2 ${DESTDIR}${PREFIX}/share/speedwm-about-2
|
|
cp -f docs/about3 ${DESTDIR}${PREFIX}/share/speedwm-about-3
|
|
cp -f docs/about4 ${DESTDIR}${PREFIX}/share/speedwm-about-4
|
|
cp -f docs/about5 ${DESTDIR}${PREFIX}/share/speedwm-about-5
|
|
cp -f docs/example.Xresources ${DESTDIR}${PREFIX}/share/speedwm-xresources
|
|
cp -f docs/example.fsignal ${DESTDIR}${PREFIX}/share/speedwm-fsignal
|
|
cp -f scripts/speedwm-help ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-help
|
|
cp -f scripts/speedwm-shutdown ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-shutdown
|
|
cp -f scripts/speedwm-winnav ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-winnav
|
|
cp -f scripts/speedwm-utils ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-utils
|
|
cp -f scripts/speedwm-swal ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-swal
|
|
cp -f scripts/speedwm-screenshotutil ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-screenshotutil
|
|
cp -f scripts/speedwm-virtualkeyboard ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-virtualkeyboard
|
|
cp -f scripts/speedwm-pdfopen ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-pdfopen
|
|
cp -f scripts/speedwm-audioctrl ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-audioctrl
|
|
cp -f scripts/speedwm-netctrl ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-netctrl
|
|
cp -f scripts/speedwm-btctrl ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-btctrl
|
|
cp -f scripts/speedwm_run ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm_run
|
|
cp -f scripts/speedwm-core ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-core
|
|
cp -f scripts/speedwm-dfmpeg ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/speedwm-dfmpeg
|
|
cp -f status ${DESTDIR}${PREFIX}/bin ; chmod +x ${DESTDIR}${PREFIX}/bin/status
|
|
chmod +x ./scripts/speedwm-compatcheck
|
|
chmod +x ./scripts/speedwm-dm
|
|
mkdir -p /usr/share
|
|
echo "${DESTDIR}${PREFIX}/bin/" > /usr/share/speedwm-bindir
|
|
./scripts/speedwm-compatcheck
|
|
./scripts/speedwm-dm
|
|
[ -f speedwm.png ] && cp -f speedwm.png ${DESTDIR}${PREFIX}/share/pixmaps/speedwm.png || :
|
|
rm -f drw.o speedwm.o util.o speedwm speedwm-msg ; echo "Installed speedwm to ${DESTDIR}${PREFIX}/bin"
|
|
|
|
uninstall:
|
|
rm -f ${DESTDIR}${PREFIX}/bin/speedwm\
|
|
${DESTDIR}${PREFIX}/bin/speedwm-utils \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-audioctrl \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-winnav \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-shutdown \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-swal \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-help \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-netctrl \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-btctrl \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-screenshotutil \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-virtualkeyboard \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-pdfopen \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-core \
|
|
${DESTDIR}${PREFIX}/bin/speedwm-dfmpeg \
|
|
${DESTDIR}${PREFIX}/bin/status \
|
|
${DESTDIR}${PREFIX}/share/speedwm-bindlist \
|
|
${DESTDIR}${PREFIX}/share/speedwm-deplist \
|
|
${DESTDIR}${PREFIX}/share/speedwm-about \
|
|
${DESTDIR}${PREFIX}/share/speedwm-about-2 \
|
|
${DESTDIR}${PREFIX}/share/speedwm-about-3 \
|
|
${DESTDIR}${PREFIX}/share/speedwm-about-4 \
|
|
${DESTDIR}${PREFIX}/share/speedwm-about-5 \
|
|
${DESTDIR}${PREFIX}/share/speedwm-xresources \
|
|
${DESTDIR}${PREFIX}/share/speedwm-fsignal \
|
|
|
|
docs:
|
|
chmod +x scripts/speedwm-help
|
|
./scripts/speedwm-help -a -o
|
|
|
|
help:
|
|
@echo speedwm help
|
|
@echo install: Installs speedwm. You may need to run this as root.
|
|
@echo uninstall: Uninstalls speedwm. You may need to run this as root.
|
|
@echo libxftfix: This option compiles and installs libXft-bgra which is necessary to prevent speedwm from crashing.
|
|
@echo gentoo-libxftfix: This option installs libXft-bgra by patching it for Gentoo only.
|
|
@echo arch-libxftfix: This option installs libXft-bgra using the AUR on Arch Linux only.
|
|
@echo help: Displays this help sheet.
|
|
@echo docs: View documentation for speedwm
|
|
@echo html: Write HTML document based on documentation.
|
|
@echo markdown: Write Markdown document based on documentation.
|
|
@echo readme: Write output of speedwm-help -a to readme.
|
|
@echo upload: git commit and git push this build.
|
|
@echo page: Creates the https://speedie.gq/speedwm page in HTML form.
|
|
@echo page_install: Copy the page to ${HTMLDIR}.
|
|
@echo page_push: git commit and git push the page in ${HTMLDIR}.
|
|
@echo make page page_install page_push to do all of the above page changes instantly.
|
|
@echo make release to run make markdown, make upload, make page, make page_install, make page_push instantly.
|
|
|
|
release:
|
|
make markdown
|
|
make upload
|
|
make page
|
|
make page_install
|
|
make page_push
|
|
rm -f speedwm.html
|
|
rm -f readme.html
|
|
rm -f readme
|
|
@echo "Complete!"
|
|
|
|
upload:
|
|
chmod +x scripts/speedwm-mkpage
|
|
./scripts/speedwm-mkpage -ulspeedwm
|
|
@echo "Uploaded everything."
|
|
|
|
libxftfix:
|
|
chmod +x scripts/libxftfix
|
|
./scripts/libxftfix -source
|
|
|
|
page:
|
|
chmod +x scripts/speedwm-mkpage
|
|
chmod +x scripts/speedwm-help
|
|
./scripts/speedwm-mkpage -mkpage
|
|
|
|
page_install:
|
|
cp speedwm.html ${HTMLDIR}
|
|
@echo "Copied speedwm.html to ${HTMLDIR}."
|
|
|
|
page_push:
|
|
echo ${HTMLDIR} > /tmp/speedwm-htmldir
|
|
chmod +x scripts/speedwm-mkpage
|
|
chmod +x scripts/speedwm-help
|
|
./scripts/speedwm-mkpage -page-push
|
|
|
|
html:
|
|
chmod +x scripts/speedwm-mkpage
|
|
chmod +x scripts/speedwm-help
|
|
./scripts/speedwm-mkpage -mkhtml
|
|
|
|
markdown:
|
|
chmod +x scripts/speedwm-mkpage
|
|
chmod +x scripts/speedwm-help
|
|
./scripts/speedwm-mkpage -mkmd
|
|
|
|
readme:
|
|
chmod +x scripts/speedwm-mkpage
|
|
chmod +x scripts/speedwm-help
|
|
./scripts/speedwm-mkpage -mk
|
|
|
|
gentoo-libxftfix:
|
|
chmod +x scripts/libxftfix
|
|
./scripts/libxftfix -gentoo
|
|
|
|
arch-libxftfix:
|
|
chmod +x scripts/libxftfix
|
|
./scripts/libxftfix -arch
|
|
|
|
.PHONY: all options clean dist install uninstall help libxftfix gentoo-libxftfix arch-libxftfix docs page page_install html markdown readme page_push upload release
|