forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
gui-wm/hikari: update to version 2.1.1
Closes: https://bugs.gentoo.org/733646 Closes: https://bugs.gentoo.org/730550 Package-Manager: Portage-3.0.1, Repoman-2.3.23 Signed-off-by: Aisha Tammy <[email protected]> Closes: gentoo#16999 Signed-off-by: Joonas Niilola <[email protected]>
- Loading branch information
Showing
4 changed files
with
391 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
DIST hikari-1.2.0.tar.gz 98941 BLAKE2B 0b882d483143e307d4b173560f335e85b4c5613b75c51c6b70b68df9b4f70f9a009d95cb8eda1c211f4968b5c8600e7113bca5e014cecfb1917db2acae7e6f3d SHA512 2bd0b6032541ca63a2bd12aee9155e9b0d08e4c541ec2f837073f1498ecb39df969f8821fcbd066e44c5ddaf658e4875bea25f344226b7ea97fe008a0db4d328 | ||
DIST hikari-2.0.2.tar.gz 1003593 BLAKE2B 89a2ec29673e7ac371a7e4f179b3dc398fbacb3daf859a9f1a53cf74aac9dc36ca33f3dc1878360fdae80ef39315a0b06d0988d897c9ce58693404fd3099d6bf SHA512 12e6cf2f1f24a4c0b64e6c035c518bdc5dbfa094a220147c374f599df8b52a4ee4c1f3cdffe1080fe87c665841a6ca018de4a48ec65aaa5b60e9e968087d83d6 | ||
DIST hikari-2.1.1.tar.gz 1012598 BLAKE2B 189e7bd9271ed5af89f5039288334c16a33c049c504f57e05cfa11b20098650165bb655023d016a14f2b13ed94e819bece088ef8517b9114b80d6a5921000780 SHA512 6da547d957cc65ab040647209a865550b0cc2b3d79040fae507591c41e938826861e27034379c21a1b7ce18afa35dbb813e96e661f4bd1232eb932f032271dff |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,332 @@ | ||
explain steps to guide future me and other patchers | ||
(1) define common variables on top | ||
(2) remove conditions for doc and others to define VERSION | ||
(3) replace all ${*} by $(*) | ||
(4) replace pkg-config by $(PKG_CONFIG) | ||
(6) remove .PATH: src | ||
(5) remove main.c from OBJS because it is in different directory | ||
- we will define a separate target for it | ||
(6) add $(OBJS) target + main.o target and add then to the end | ||
of dependencies for hikari | ||
(7) add main.o to be cleaned-up | ||
(8) reorder the library orders in the $(CC) steps because gcc | ||
diff --git a/Makefile b/Makefile | ||
index cab013a..b72e74c 100644 | ||
--- a/Makefile | ||
+++ b/Makefile | ||
@@ -1,7 +1,22 @@ | ||
+TARGET = hikari | ||
+ | ||
+DESTDIR ?= | ||
+ | ||
+prefix ?= /usr/local | ||
+exec_prefix ?= $(prefix) | ||
+bindir ?= $(exec_prefix)/bin | ||
+sysconfdir ?= $(prefix)/etc | ||
+ | ||
+PKG_CONFIG ?= pkg-config | ||
+ | ||
+VERSION ?= "CURRENT" | ||
+ | ||
+### Upstream variables | ||
+PREFIX ?= $(DESTDIR)$(prefix) | ||
+ETC_PREFIX ?= $(DESTDIR)$(sysconfdir) | ||
+ | ||
OS != uname | ||
-VERSION ?= "CURRENT" | ||
-PREFIX ?= /usr/local | ||
-ETC_PREFIX ?= ${PREFIX} | ||
+INSTALL_GROUP != id -gn | ||
|
||
OBJS = \ | ||
action.o \ | ||
@@ -33,7 +48,6 @@ OBJS = \ | ||
layout_select_mode.o \ | ||
lock_indicator.o \ | ||
lock_mode.o \ | ||
- main.o \ | ||
mark.o \ | ||
mark_assign_mode.o \ | ||
mark_select_mode.o \ | ||
@@ -64,109 +78,124 @@ OBJS = \ | ||
|
||
WAYLAND_PROTOCOLS != pkg-config --variable pkgdatadir wayland-protocols | ||
|
||
-.PHONY: distclean clean clean-doc doc dist install uninstall | ||
-.PATH: src | ||
- | ||
# Allow specification of /extra/ CFLAGS and LDFLAGS | ||
-CFLAGS += ${CFLAGS_EXTRA} | ||
-LDFLAGS += ${LDFLAGS_EXTRA} | ||
+CFLAGS += $(CFLAGS_EXTRA) | ||
+LDFLAGS += $(LDFLAGS_EXTRA) | ||
|
||
-.ifdef DEBUG | ||
+ifeq ($(DEBUG),1) | ||
CFLAGS += -g -O0 -fsanitize=address | ||
-.else | ||
+else | ||
CFLAGS += -DNDEBUG | ||
-.endif | ||
+endif | ||
|
||
-.ifdef WITH_POSIX_C_SOURCE | ||
+ifeq ($(WITH_POSIX_C_SOURCE),1) | ||
CFLAGS += -D_POSIX_C_SOURCE=200809L | ||
-.endif | ||
+endif | ||
|
||
-.ifdef WITH_XWAYLAND | ||
+ifeq ($(WITH_XWAYLAND),1) | ||
CFLAGS += -DHAVE_XWAYLAND=1 | ||
-.endif | ||
+endif | ||
|
||
-.ifdef WITH_GAMMACONTROL | ||
+ifeq ($(WITH_GAMMACONTROL),1) | ||
CFLAGS += -DHAVE_GAMMACONTROL=1 | ||
-.endif | ||
+endif | ||
|
||
-.ifdef WITH_SCREENCOPY | ||
+ifeq ($(WITH_SCREENCOPY),1) | ||
CFLAGS += -DHAVE_SCREENCOPY=1 | ||
-.endif | ||
+endif | ||
|
||
-.ifdef WITH_LAYERSHELL | ||
+ifeq ($(WITH_LAYERSHELL),1) | ||
CFLAGS += -DHAVE_LAYERSHELL=1 | ||
-.endif | ||
+endif | ||
+ | ||
+ifeq ($(WITH_VIRTUAL_INPUT),1) | ||
+CFLAGS += -DHAVE_VIRTUAL_INPUT=1 | ||
+endif | ||
|
||
-.ifdef WITHOUT_SUID | ||
+ifeq ($(WITHOUT_SUID),1) | ||
PERMS = 555 | ||
-.else | ||
+else | ||
PERMS = 4555 | ||
-.endif | ||
+endif | ||
|
||
-CFLAGS += -Wall -I. -Iinclude -DHIKARI_ETC_PREFIX=${ETC_PREFIX} | ||
+CFLAGS += -Wall -I. -Iinclude -DHIKARI_ETC_PREFIX=$(ETC_PREFIX) | ||
|
||
-WLROOTS_CFLAGS != pkg-config --cflags wlroots | ||
-WLROOTS_LIBS != pkg-config --libs wlroots | ||
+WLROOTS_CFLAGS != $(PKG_CONFIG) --cflags wlroots | ||
+WLROOTS_LIBS != $(PKG_CONFIG) --libs wlroots | ||
|
||
WLROOTS_CFLAGS += -DWLR_USE_UNSTABLE=1 | ||
|
||
-PANGO_CFLAGS != pkg-config --cflags pangocairo | ||
-PANGO_LIBS != pkg-config --libs pangocairo | ||
+PANGO_CFLAGS != $(PKG_CONFIG) --cflags pangocairo | ||
+PANGO_LIBS != $(PKG_CONFIG) --libs pangocairo | ||
|
||
-CAIRO_CFLAGS != pkg-config --cflags cairo | ||
-CAIRO_LIBS != pkg-config --libs cairo | ||
+CAIRO_CFLAGS != $(PKG_CONFIG) --cflags cairo | ||
+CAIRO_LIBS != $(PKG_CONFIG) --libs cairo | ||
|
||
-PIXMAN_CFLAGS != pkg-config --cflags pixman-1 | ||
-PIXMAN_LIBS != pkg-config --libs pixman-1 | ||
+PIXMAN_CFLAGS != $(PKG_CONFIG) --cflags pixman-1 | ||
+PIXMAN_LIBS != $(PKG_CONFIG) --libs pixman-1 | ||
|
||
-XKBCOMMON_CFLAGS != pkg-config --cflags xkbcommon | ||
-XKBCOMMON_LIBS != pkg-config --libs xkbcommon | ||
+XKBCOMMON_CFLAGS != $(PKG_CONFIG) --cflags xkbcommon | ||
+XKBCOMMON_LIBS != $(PKG_CONFIG) --libs xkbcommon | ||
|
||
-WAYLAND_CFLAGS != pkg-config --cflags wayland-server | ||
-WAYLAND_LIBS != pkg-config --libs wayland-server | ||
+WAYLAND_CFLAGS != $(PKG_CONFIG) --cflags wayland-server | ||
+WAYLAND_LIBS != $(PKG_CONFIG) --libs wayland-server | ||
|
||
-LIBINPUT_CFLAGS != pkg-config --cflags libinput | ||
-LIBINPUT_LIBS != pkg-config --libs libinput | ||
+LIBINPUT_CFLAGS != $(PKG_CONFIG) --cflags libinput | ||
+LIBINPUT_LIBS != $(PKG_CONFIG) --libs libinput | ||
|
||
-UCL_CFLAGS != pkg-config --cflags libucl | ||
-UCL_LIBS != pkg-config --libs libucl | ||
+UCL_CFLAGS != $(PKG_CONFIG) --cflags libucl | ||
+UCL_LIBS != $(PKG_CONFIG) --libs libucl | ||
|
||
CFLAGS += \ | ||
- ${WLROOTS_CFLAGS} \ | ||
- ${PANGO_CFLAGS} \ | ||
- ${CAIRO_CFLAGS} \ | ||
- ${PIXMAN_CFLAGS} \ | ||
- ${XKBCOMMON_CFLAGS} \ | ||
- ${WAYLAND_CFLAGS} \ | ||
- ${LIBINPUT_CFLAGS} \ | ||
- ${UCL_CFLAGS} | ||
+ $(WLROOTS_CFLAGS) \ | ||
+ $(PANGO_CFLAGS) \ | ||
+ $(CAIRO_CFLAGS) \ | ||
+ $(PIXMAN_CFLAGS) \ | ||
+ $(XKBCOMMON_CFLAGS) \ | ||
+ $(WAYLAND_CFLAGS) \ | ||
+ $(LIBINPUT_CFLAGS) \ | ||
+ $(UCL_CFLAGS) | ||
|
||
LIBS = \ | ||
- ${WLROOTS_LIBS} \ | ||
- ${PANGO_LIBS} \ | ||
- ${CAIRO_LIBS} \ | ||
- ${PIXMAN_LIBS} \ | ||
- ${XKBCOMMON_LIBS} \ | ||
- ${WAYLAND_LIBS} \ | ||
- ${LIBINPUT_LIBS} \ | ||
- ${UCL_LIBS} | ||
+ $(WLROOTS_LIBS) \ | ||
+ $(PANGO_LIBS) \ | ||
+ $(CAIRO_LIBS) \ | ||
+ $(PIXMAN_LIBS) \ | ||
+ $(XKBCOMMON_LIBS) \ | ||
+ $(WAYLAND_LIBS) \ | ||
+ $(LIBINPUT_LIBS) \ | ||
+ $(UCL_LIBS) | ||
|
||
-all: hikari hikari-unlocker | ||
+.PHONY: distclean clean clean-doc doc dist install uninstall | ||
|
||
version.h: | ||
- echo "#define HIKARI_VERSION \"${VERSION}\"" >> version.h | ||
+ echo "#define HIKARI_VERSION \"$(VERSION)\"" >> version.h | ||
|
||
-hikari: version.h xdg-shell-protocol.h wlr-layer-shell-unstable-v1-protocol.h ${OBJS} | ||
- ${CC} ${LDFLAGS} ${CFLAGS} ${INCLUDES} -o ${.TARGET} ${OBJS} ${LIBS} | ||
+$(OBJS): %.o: src/%.c | ||
+ $(CC) $(CFLAGS) $(INCLUDES) -c $< -o $@ | ||
+ | ||
+main.o: | ||
+ $(CC) $(CFLAGS) $(INCLUDES) -c main.c -o main.o | ||
|
||
xdg-shell-protocol.h: | ||
- wayland-scanner server-header ${WAYLAND_PROTOCOLS}/stable/xdg-shell/xdg-shell.xml ${.TARGET} | ||
+ wayland-scanner server-header $(WAYLAND_PROTOCOLS)/stable/xdg-shell/xdg-shell.xml xdg-shell-protocol.h | ||
|
||
wlr-layer-shell-unstable-v1-protocol.h: | ||
- wayland-scanner server-header protocol/wlr-layer-shell-unstable-v1.xml ${.TARGET} | ||
+ wayland-scanner server-header protocol/wlr-layer-shell-unstable-v1.xml wlr-layer-shell-unstable-v1-protocol.h | ||
+ | ||
+hikari: version.h xdg-shell-protocol.h wlr-layer-shell-unstable-v1-protocol.h $(OBJS) main.o | ||
+ $(CC) $(LDFLAGS) $(CFLAGS) $(INCLUDES) $(OBJS) main.o $(LIBS) -o $(TARGET) | ||
|
||
hikari-unlocker: hikari_unlocker.c | ||
- ${CC} ${CFLAGS_EXTRA} ${LDFLAGS_EXTRA} -o hikari-unlocker hikari_unlocker.c -lpam | ||
+ $(CC) $(LDFLAGS) $(CFLAGS) $(INCLUDES) hikari_unlocker.c -lpam $(LIBS) -o hikari-unlocker | ||
+ | ||
+share/man/man1/hikari.1: | ||
+ pandoc -M title:"HIKARI(1) $(VERSION) | hikari - Wayland Compositor" -s \ | ||
+ --to man -o share/man/man1/hikari.1 share/man/man1/hikari.md | ||
+ | ||
+doc: share/man/man1/hikari.1 | ||
+ | ||
+all: hikari hikari-unlocker | ||
|
||
clean-doc: | ||
@test -e _darcs && echo "cleaning manpage" ||: | ||
@@ -178,66 +207,38 @@ clean: clean-doc | ||
@rm xdg-shell-protocol.h 2> /dev/null ||: | ||
@rm wlr-layer-shell-unstable-v1-protocol.h 2> /dev/null ||: | ||
@echo "cleaning object files" | ||
- @rm ${OBJS} 2> /dev/null ||: | ||
+ @rm $(OBJS) 2> /dev/null ||: | ||
+ @rm main.o 2> /dev/null ||: | ||
@echo "cleaning executables" | ||
@rm hikari 2> /dev/null ||: | ||
@rm hikari-unlocker 2> /dev/null ||: | ||
|
||
-share/man/man1/hikari.1: | ||
- pandoc -M title:"HIKARI(1) ${VERSION} | hikari - Wayland Compositor" -s \ | ||
- --to man -o share/man/man1/hikari.1 share/man/man1/hikari.md | ||
- | ||
-doc: share/man/man1/hikari.1 | ||
- | ||
-hikari-${VERSION}.tar.gz: version.h share/man/man1/hikari.1 | ||
- @darcs revert | ||
- @tar -s "#^#hikari-${VERSION}/#" -czf hikari-${VERSION}.tar.gz \ | ||
- version.h \ | ||
- main.c \ | ||
- hikari_unlocker.c \ | ||
- include/hikari/*.h \ | ||
- src/*.c \ | ||
- protocol/*.xml \ | ||
- Makefile \ | ||
- LICENSE \ | ||
- README.md \ | ||
- CHANGELOG.md \ | ||
- share/man/man1/hikari.md \ | ||
- share/man/man1/hikari.1 \ | ||
- share/backgrounds/hikari/hikari_wallpaper.png \ | ||
- share/wayland-sessions/hikari.desktop \ | ||
- etc/hikari/hikari.conf \ | ||
- etc/pam.d/hikari-unlocker.* | ||
- | ||
-distclean: clean-doc | ||
- @test -e _darcs && echo "cleaning version.h" ||: | ||
- @test -e _darcs && rm version.h ||: | ||
- | ||
-dist: distclean hikari-${VERSION}.tar.gz | ||
- | ||
-install: hikari hikari-unlocker share/man/man1/hikari.1 | ||
- mkdir -p ${DESTDIR}/${PREFIX}/bin | ||
- mkdir -p ${DESTDIR}/${PREFIX}/share/man/man1 | ||
- mkdir -p ${DESTDIR}/${PREFIX}/share/backgrounds/hikari | ||
- mkdir -p ${DESTDIR}/${PREFIX}/share/wayland-sessions | ||
- mkdir -p ${DESTDIR}/${ETC_PREFIX}/etc/hikari | ||
- mkdir -p ${DESTDIR}/${ETC_PREFIX}/etc/pam.d | ||
- sed "s,PREFIX,${PREFIX}," etc/hikari/hikari.conf > ${DESTDIR}/${ETC_PREFIX}/etc/hikari/hikari.conf | ||
- chmod 644 ${DESTDIR}/${ETC_PREFIX}/etc/hikari/hikari.conf | ||
- install -m ${PERMS} hikari ${DESTDIR}/${PREFIX}/bin | ||
- install -m 4555 hikari-unlocker ${DESTDIR}/${PREFIX}/bin | ||
- install -m 644 share/man/man1/hikari.1 ${DESTDIR}/${PREFIX}/share/man/man1 | ||
- install -m 644 share/backgrounds/hikari/hikari_wallpaper.png ${DESTDIR}/${PREFIX}/share/backgrounds/hikari/hikari_wallpaper.png | ||
- install -m 644 share/wayland-sessions/hikari.desktop ${DESTDIR}/${PREFIX}/share/wayland-sessions/hikari.desktop | ||
- install -m 644 etc/pam.d/hikari-unlocker.${OS} ${DESTDIR}/${ETC_PREFIX}/etc/pam.d/hikari-unlocker | ||
+install-doc: | ||
+ install -m 644 share/man/man1/hikari.1 $(PREFIX)/share/man/man1 | ||
+ | ||
+install: | ||
+ mkdir -p $(PREFIX)/bin | ||
+ mkdir -p $(PREFIX)/share/man/man1 | ||
+ mkdir -p $(PREFIX)/share/backgrounds/hikari | ||
+ mkdir -p $(PREFIX)/share/wayland-sessions | ||
+ mkdir -p $(ETC_PREFIX)/etc/hikari | ||
+ mkdir -p $(ETC_PREFIX)/etc/pam.d | ||
+ sed "s,PREFIX,$(prefix)," etc/hikari/hikari.conf > $(ETC_PREFIX)/etc/hikari/hikari.conf | ||
+ chmod 644 $(ETC_PREFIX)/etc/hikari/hikari.conf | ||
+ install -m $(PERMS) hikari $(PREFIX)/bin | ||
+ install -m 4555 hikari-unlocker $(PREFIX)/bin | ||
+ install -m 644 share/backgrounds/hikari/hikari_wallpaper.png $(PREFIX)/share/backgrounds/hikari/hikari_wallpaper.png | ||
+ install -m 644 share/wayland-sessions/hikari.desktop $(PREFIX)/share/wayland-sessions/hikari.desktop | ||
+ install -m 644 etc/pam.d/hikari-unlocker.$(OS) $(ETC_PREFIX)/etc/pam.d/hikari-unlocker | ||
|
||
uninstall: | ||
- -rm ${DESTDIR}/${PREFIX}/bin/hikari | ||
- -rm ${DESTDIR}/${PREFIX}/bin/hikari-unlocker | ||
- -rm ${DESTDIR}/${PREFIX}/share/man/man1/hikari.1 | ||
- -rm ${DESTDIR}/${PREFIX}/share/backgrounds/hikari/hikari_wallpaper.png | ||
- -rm ${DESTDIR}/${PREFIX}/share/wayland-sessions/hikari.desktop | ||
- -rm ${DESTDIR}/${ETC_PREFIX}/etc/pam.d/hikari-unlocker | ||
- -rm ${DESTDIR}/${ETC_PREFIX}/etc/hikari/hikari.conf | ||
- -rmdir ${DESTDIR}/${ETC_PREFIX}/etc/hikari | ||
- -rmdir ${DESTDIR}/${PREFIX}/share/backgrounds/hikari | ||
+ -rm $(PREFIX)/bin/hikari | ||
+ -rm $(PREFIX)/bin/hikari-unlocker | ||
+ -rm $(PREFIX)/share/man/man1/hikari.1 | ||
+ -rm $(PREFIX)/share/backgrounds/hikari/hikari_wallpaper.png | ||
+ -rm $(PREFIX)/share/wayland-sessions/hikari.desktop | ||
+ -rm $(ETC_PREFIX)/etc/pam.d/hikari-unlocker | ||
+ -rm $(ETC_PREFIX)/etc/hikari/hikari.conf | ||
+ -rmdir $(ETC_PREFIX)/etc/hikari | ||
+ -rmdir $(PREFIX)/share/backgrounds/hikari | ||
+ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
# Copyright 2019-2020 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
|
||
DESCRIPTION="Wayland compositor inspired by CWM" | ||
HOMEPAGE="https://hikari.acmelabs.space/" | ||
SRC_URI="https://hikari.acmelabs.space/releases/${P}.tar.gz" | ||
KEYWORDS="~amd64 ~x86" | ||
|
||
LICENSE="MIT" | ||
SLOT="0" | ||
IUSE="gamma layershell screencopy suid virtual-io +X" | ||
|
||
DEPEND=" | ||
dev-libs/libinput:= | ||
dev-libs/libucl | ||
>=gui-libs/wlroots-0.11.0 | ||
media-libs/libglvnd | ||
x11-libs/cairo[X?,svg] | ||
x11-libs/libxkbcommon[X?] | ||
x11-libs/pango[X?] | ||
x11-libs/pixman | ||
sys-libs/pam | ||
" | ||
|
||
RDEPEND=" | ||
${DEPEND} | ||
x11-misc/xkeyboard-config | ||
" | ||
|
||
BDEPEND=" | ||
dev-libs/wayland-protocols | ||
virtual/pkgconfig | ||
" | ||
|
||
# keep this as others OS's are using this as reference | ||
PATCHES=( | ||
"${FILESDIR}/${P}-gnu-make.patch" | ||
) | ||
|
||
src_compile() { | ||
emake VERSION="{PV}" \ | ||
WITH_POSIX_C_SOURCE=1 \ | ||
WITH_GAMMACONTROL=$(usex gamma 1 0) \ | ||
WITH_LAYERSHELL=$(usex layershell 1 0) \ | ||
WITH_SCREENCOPY=$(usex screencopy 1 0) \ | ||
WITH_SUID=$(usex suid 1 0) \ | ||
WITH_VIRTUAL_INPUT=$(usex virtual-io 1 0) \ | ||
WITH_XWAYLAND=$(usex X 1 0) \ | ||
all | ||
} | ||
|
||
src_install() { | ||
emake PREFIX="${D}/usr" ETC_PREFIX="${D}" prefix="${SYSROOT}/usr" install install-doc | ||
doman share/man/man1/hikari.1 | ||
} |
Oops, something went wrong.