forked from linuxdeepin/startdde
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
86 lines (66 loc) · 3.14 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
PREFIX = /usr
GOPATH_DIR = gopath
GOPKG_PREFIX = github.com/linuxdeepin/startdde
GOBUILD = go build -v $(GO_BUILD_FLAGS)
export GO111MODULE=off
export GOPATH= $(shell go env GOPATH)
LANGUAGES = $(basename $(notdir $(wildcard misc/po/*.po)))
all: build
prepare:
@mkdir -p ${GOPATH_DIR}/src/$(dir ${GOPKG_PREFIX});
@ln -snf ../../../.. ${GOPATH_DIR}/src/${GOPKG_PREFIX};
auto_launch_json:
ifdef AUTO_LAUNCH_CHINESE
cp misc/auto_launch/chinese.json misc/config/auto_launch.json
else
cp misc/auto_launch/default.json misc/config/auto_launch.json
endif
# check validity
jq . misc/config/auto_launch.json >/dev/null
startdde:
env GOPATH="${CURDIR}/${GOPATH_DIR}:${GOPATH}" ${GOBUILD} -o startdde ${GOBUILD_OPTIONS}
fix-xauthority-perm:
env GOPATH="${CURDIR}/${GOPATH_DIR}:${GOPATH}" ${GOBUILD} -o fix-xauthority-perm ${GOBUILD_OPTIONS} ${GOPKG_PREFIX}/cmd/fix-xauthority-perm
out/locale/%/LC_MESSAGES/startdde.mo: misc/po/%.po
mkdir -p $(@D)
msgfmt -o $@ $<
translate: $(addsuffix /LC_MESSAGES/startdde.mo, $(addprefix out/locale/, ${LANGUAGES}))
pot:
deepin-update-pot misc/po/locale_config.ini
build: prepare startdde auto_launch_json fix-xauthority-perm translate
test: prepare
env GOPATH="${CURDIR}/${GOPATH_DIR}:${GOPATH}" go test -v ./...
test-coverage: prepare
env GOPATH="${CURDIR}/${GOPATH_DIR}:${GOPATH}" go test -cover -v ./... | awk '$$1 ~ "(ok|\\?)" {print $$2","$$5}' | sed "s:${CURDIR}::g" | sed 's/files\]/0\.0%/g' > coverage.csv
print_gopath: prepare
GOPATH="${CURDIR}/${GOPATH_DIR}:${GOPATH}"
install:
install -Dm755 startdde ${DESTDIR}${PREFIX}/bin/startdde
mkdir -p ${DESTDIR}${PREFIX}/share/xsessions
@for i in $(shell ls misc/xsessions/ | grep -E '*.in$$' );do sed 's|@PREFIX@|$(PREFIX)|g' misc/xsessions/$$i > ${DESTDIR}${PREFIX}/share/xsessions/$${i%.in}; done
install -Dm755 fix-xauthority-perm ${DESTDIR}${PREFIX}/sbin/deepin-fix-xauthority-perm
install -d -m755 ${DESTDIR}${PREFIX}/lib/deepin-daemon/
ln -sfv ../../bin/startdde ${DESTDIR}${PREFIX}/lib/deepin-daemon/greeter-display-daemon
install -Dm644 misc/lightdm.conf ${DESTDIR}${PREFIX}/share/lightdm/lightdm.conf.d/60-deepin.conf
mkdir -p ${DESTDIR}${PREFIX}/share/startdde/
install -v -m0644 misc/config/* ${DESTDIR}${PREFIX}/share/startdde/
install -v -m0644 misc/app_startup.conf ${DESTDIR}${PREFIX}/share/startdde/
install -v -m0644 misc/filter.conf ${DESTDIR}${PREFIX}/share/startdde/
mkdir -p ${DESTDIR}/etc/X11/Xsession.d/
install -v -m0644 misc/Xsession.d/* ${DESTDIR}/etc/X11/Xsession.d/
mkdir -p ${DESTDIR}/etc/profile.d/
install -v -m0644 misc/profile.d/* ${DESTDIR}/etc/profile.d/
mkdir -p $(DESTDIR)$(PREFIX)/share/glib-2.0/schemas
install -v -m0644 misc/schemas/*.xml $(DESTDIR)$(PREFIX)/share/glib-2.0/schemas/
mkdir -p $(DESTDIR)$(PREFIX)/share/dsg/configs/org.deepin.startdde/
install -v -m0644 misc/dsettings/*.json $(DESTDIR)$(PREFIX)/share/dsg/configs/org.deepin.startdde/
mkdir -pv ${DESTDIR}${PREFIX}/share/locale
cp -r out/locale/* ${DESTDIR}${PREFIX}/share/locale
clean:
rm -rf ${GOPATH_DIR}
rm -f startdde
rm -f fix-xauthority-perm
rebuild: clean build
check_code_quality: prepare
env GOPATH="${CURDIR}/${GOPATH_DIR}:${GOPATH}" go vet ./...
.PHONY: startdde