mirror of
https://github.com/abraunegg/onedrive
synced 2024-04-30 21:22:51 +02:00
f1211a20d1
Remove the creation of /var/log/onedrive directory. The default is not to log, and fall back to logging to home directory. It is the obligation of the system administrator to create these directory. Furthermore, we don't know whether the group "users" is actually present. Remove the owner/group specification from the directory creation. We install the actual service files without owner/group specs anyway. Update USAGE.md to document this.
149 lines
4.3 KiB
Makefile
149 lines
4.3 KiB
Makefile
package = @PACKAGE_NAME@
|
|
version = @PACKAGE_VERSION@
|
|
prefix = @prefix@
|
|
# we don't use @exec_prefix@ because it usually contains '${prefix}' literally
|
|
# but we use @prefix@/bin/onedrive in the systemd unit files which are generated
|
|
# from the configure script.
|
|
# Thus, set exec_prefix unconditionally to prefix
|
|
# Alternative approach would be add dep on sed, and do manual generation in the Makefile.
|
|
# exec_prefix = @exec_prefix@
|
|
exec_prefix = @prefix@
|
|
datarootdir = @datarootdir@
|
|
datadir = @datadir@
|
|
srcdir = @srcdir@
|
|
bindir = @bindir@
|
|
mandir = @mandir@
|
|
sysconfdir = @sysconfdir@
|
|
docdir = $(datadir)/doc/$(package)
|
|
VPATH = @srcdir@
|
|
SED = @SED@
|
|
INSTALL = @INSTALL@
|
|
|
|
NOTIFICATIONS = @NOTIFICATIONS@
|
|
HAVE_SYSTEMD = @HAVE_SYSTEMD@
|
|
systemduserunitdir = @systemduserunitdir@
|
|
systemdsystemunitdir = @systemdsystemunitdir@
|
|
curl_LIBS = @curl_LIBS@
|
|
sqlite_LIBS = @sqlite_LIBS@
|
|
notify_LIBS = @notify_LIBS@
|
|
COMPLETIONS = @COMPLETIONS@
|
|
BASH_COMPLETION_DIR = @BASH_COMPLETION_DIR@
|
|
ZSH_COMPLETION_DIR = @ZSH_COMPLETION_DIR@
|
|
DEBUG = @DEBUG@
|
|
|
|
DC = @DC@
|
|
DC_TYPE = @DC_TYPE@
|
|
DCFLAGS = @DCFLAGS@
|
|
DCFLAGS += -w -g -O -J.
|
|
ifeq ($(DEBUG),yes)
|
|
ifeq ($(DC_TYPE),dmd)
|
|
DCFLAGS += -debug -gs
|
|
else
|
|
DCFLAGS += -d-debug -gc
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(NOTIFICATIONS),yes)
|
|
NOTIF_VERSIONS=-version=NoPragma -version=NoGdk -version=Notifications
|
|
# support ldc2 which needs -d prefix for version specification
|
|
ifeq ($(DC_TYPE),ldc)
|
|
NOTIF_VERSIONS := $(addprefix -d,$(NOTIF_VERSIONS))
|
|
endif
|
|
DCFLAGS += $(NOTIF_VERSIONS)
|
|
endif
|
|
|
|
system_unit_files = contrib/systemd/onedrive@.service
|
|
user_unit_files = contrib/systemd/onedrive.service
|
|
|
|
DOCFILES = README.md config LICENSE CHANGELOG.md docs/Docker.md docs/INSTALL.md docs/Office365.md docs/USAGE.md
|
|
|
|
ifneq ("$(wildcard /etc/redhat-release)","")
|
|
RHEL = $(shell cat /etc/redhat-release | grep -E "(Red Hat Enterprise Linux Server|CentOS)" | wc -l)
|
|
RHEL_VERSION = $(shell rpm --eval "%{centos_ver}")
|
|
else
|
|
RHEL = 0
|
|
RHEL_VERSION = 0
|
|
endif
|
|
|
|
SOURCES = \
|
|
src/config.d \
|
|
src/itemdb.d \
|
|
src/log.d \
|
|
src/main.d \
|
|
src/monitor.d \
|
|
src/onedrive.d \
|
|
src/qxor.d \
|
|
src/selective.d \
|
|
src/sqlite.d \
|
|
src/sync.d \
|
|
src/upload.d \
|
|
src/util.d \
|
|
src/progress.d
|
|
|
|
ifeq ($(NOTIFICATIONS),yes)
|
|
SOURCES += src/notifications/notify.d src/notifications/dnotify.d
|
|
endif
|
|
|
|
all: onedrive
|
|
|
|
clean:
|
|
rm -f onedrive onedrive.o version
|
|
rm -rf autom4te.cache
|
|
rm -f config.log config.status
|
|
|
|
# also remove files generated via ./configure
|
|
distclean: clean
|
|
rm -f Makefile contrib/pacman/PKGBUILD contrib/spec/onedrive.spec onedrive.1 \
|
|
$(system_unit_files) $(user_unit_files)
|
|
|
|
onedrive: version $(SOURCES)
|
|
$(DC) $(DCFLAGS) $(addprefix -L,$(curl_LIBS)) $(addprefix -L,$(sqlite_LIBS)) $(addprefix -L,$(notify_LIBS)) -L-ldl $(SOURCES) -of$@
|
|
|
|
install: all
|
|
$(INSTALL) -D onedrive $(DESTDIR)$(bindir)/onedrive
|
|
$(INSTALL) -D onedrive.1 $(DESTDIR)$(mandir)/man1/onedrive.1
|
|
$(INSTALL) -D -m 644 contrib/logrotate/onedrive.logrotate $(DESTDIR)$(sysconfdir)/logrotate.d/onedrive
|
|
mkdir -p $(DESTDIR)$(docdir)
|
|
$(INSTALL) -D -m 644 $(DOCFILES) $(DESTDIR)$(docdir)
|
|
ifeq ($(HAVE_SYSTEMD),yes)
|
|
$(INSTALL) -d -m 0755 $(DESTDIR)$(systemduserunitdir) $(DESTDIR)$(systemdsystemunitdir)
|
|
ifeq ($(RHEL),1)
|
|
$(INSTALL) -m 0644 $(system_unit_files) $(DESTDIR)$(systemdsystemunitdir)
|
|
$(INSTALL) -m 0644 $(user_unit_files) $(DESTDIR)$(systemdsystemunitdir)
|
|
else
|
|
$(INSTALL) -m 0644 $(system_unit_files) $(DESTDIR)$(systemdsystemunitdir)
|
|
$(INSTALL) -m 0644 $(user_unit_files) $(DESTDIR)$(systemduserunitdir)
|
|
endif
|
|
endif
|
|
ifeq ($(COMPLETIONS),yes)
|
|
$(INSTALL) -D -m 644 contrib/completions/complete.zsh $(DESTDIR)$(ZSH_COMPLETION_DIR)/_onedrive
|
|
$(INSTALL) -D -m 644 contrib/completions/complete.bash $(DESTDIR)$(BASH_COMPLETION_DIR)/onedrive
|
|
endif
|
|
|
|
|
|
uninstall:
|
|
rm -f $(DESTDIR)$(bindir)/onedrive
|
|
rm -f $(DESTDIR)$(mandir)/man1/onedrive.1
|
|
rm -f $(DESTDIR)$(sysconfdir)/logrotate.d/onedrive
|
|
ifeq ($(HAVE_SYSTEMD),yes)
|
|
ifeq ($(RHEL),1)
|
|
rm -f $(DESTDIR)$(systemdsystemunitdir)/onedrive*.service
|
|
else
|
|
rm -f $(DESTDIR)$(systemdsystemunitdir)/onedrive*.service
|
|
rm -f $(DESTDIR)$(systemduserunitdir)/onedrive*.service
|
|
endif
|
|
endif
|
|
for i in $(DOCFILES) ; do rm -f $(DESTDIR)$(docdir)/$$i ; done
|
|
ifeq ($(COMPLETIONS),yes)
|
|
rm -f $(DESTDIR)$(ZSH_COMPLETION_DIR)/_onedrive
|
|
rm -f $(DESTDIR)$(BASH_COMPLETION_DIR)/onedrive
|
|
endif
|
|
|
|
version:
|
|
if [ -f .git/HEAD ] ; then \
|
|
echo $(shell git describe --tags) > version ; \
|
|
else \
|
|
echo $(version) > version ; \
|
|
fi
|
|
|