2022-02-09 14:27:22 +01:00
|
|
|
export prefix ?= /usr
|
|
|
|
|
sysconfdir ?= /etc
|
|
|
|
|
bindir = $(prefix)/bin
|
|
|
|
|
libdir = $(prefix)/lib
|
|
|
|
|
sharedir = $(prefix)/share
|
|
|
|
|
|
|
|
|
|
BINARY = cosmic-comp
|
2024-07-14 19:06:39 +02:00
|
|
|
CARGO_TARGET_DIR ?= target
|
2022-02-09 14:27:22 +01:00
|
|
|
TARGET = debug
|
|
|
|
|
DEBUG ?= 0
|
|
|
|
|
|
|
|
|
|
.PHONY = all clean install uninstall vendor
|
|
|
|
|
|
|
|
|
|
ifeq ($(DEBUG),0)
|
|
|
|
|
TARGET = release
|
|
|
|
|
ARGS += --release
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
VENDOR ?= 0
|
|
|
|
|
ifneq ($(VENDOR),0)
|
2023-05-24 16:08:37 +02:00
|
|
|
ARGS += --offline --locked
|
2022-02-09 14:27:22 +01:00
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
TARGET_BIN="$(DESTDIR)$(bindir)/$(BINARY)"
|
|
|
|
|
|
2024-04-03 16:02:27 +02:00
|
|
|
KEYBINDINGS_CONF="$(DESTDIR)$(sharedir)/cosmic/com.system76.CosmicSettings.Shortcuts/v1/defaults"
|
2024-08-14 21:56:20 +03:00
|
|
|
TILING_EXCEPTIONS_CONF="$(DESTDIR)$(sharedir)/cosmic/com.system76.CosmicComp/v1/tiling_exceptions"
|
2024-04-03 16:02:27 +02:00
|
|
|
|
2022-02-09 14:27:22 +01:00
|
|
|
all: extract-vendor
|
|
|
|
|
cargo build $(ARGS)
|
|
|
|
|
|
|
|
|
|
clean:
|
|
|
|
|
cargo clean
|
|
|
|
|
|
|
|
|
|
distclean:
|
|
|
|
|
rm -rf .cargo vendor vendor.tar target
|
|
|
|
|
|
|
|
|
|
vendor:
|
|
|
|
|
mkdir -p .cargo
|
|
|
|
|
cargo vendor | head -n -1 > .cargo/config
|
|
|
|
|
echo 'directory = "vendor"' >> .cargo/config
|
|
|
|
|
tar pcf vendor.tar vendor
|
|
|
|
|
rm -rf vendor
|
|
|
|
|
|
|
|
|
|
extract-vendor:
|
|
|
|
|
ifeq ($(VENDOR),1)
|
|
|
|
|
rm -rf vendor; tar pxf vendor.tar
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
install:
|
2024-07-14 19:06:39 +02:00
|
|
|
install -Dm0755 "$(CARGO_TARGET_DIR)/$(TARGET)/$(BINARY)" "$(TARGET_BIN)"
|
2024-04-03 16:02:27 +02:00
|
|
|
install -Dm0644 "data/keybindings.ron" "$(KEYBINDINGS_CONF)"
|
2024-08-14 21:56:20 +03:00
|
|
|
install -Dm0644 "data/tiling-exceptions.ron" "$(TILING_EXCEPTIONS_CONF)"
|
2022-07-07 23:17:35 +02:00
|
|
|
|
|
|
|
|
install-bare-session: install
|
2022-02-09 14:27:22 +01:00
|
|
|
install -Dm0644 "data/cosmic.desktop" "$(DESTDIR)$(sharedir)/wayland-sessions/cosmic.desktop"
|
|
|
|
|
install -Dm0644 "data/cosmic-session.target" "$(DESTDIR)$(libdir)/systemd/user/cosmic-session.target"
|
|
|
|
|
install -Dm0644 "data/cosmic-session-pre.target" "$(DESTDIR)$(libdir)/systemd/user/cosmic-session-pre.target"
|
|
|
|
|
install -Dm0644 "data/cosmic-comp.service" "$(DESTDIR)$(libdir)/systemd/user/cosmic-comp.service"
|
2022-06-09 17:03:45 -06:00
|
|
|
install -Dm0755 "data/cosmic-service" "$(DESTDIR)/$(bindir)/cosmic-service"
|
2022-02-09 14:27:22 +01:00
|
|
|
|
|
|
|
|
uninstall:
|
2024-04-03 16:02:27 +02:00
|
|
|
rm "$(TARGET_BIN)" "$(KEYBINDINGS_CONF)"
|
2022-07-08 13:55:23 +02:00
|
|
|
|
|
|
|
|
uninstall-bare-session:
|
2024-04-03 16:02:27 +02:00
|
|
|
rm "$(DESTDIR)$(sharedir)/wayland-sessions/cosmic.desktop"
|