go-tg-screenshot-bot

Форк
0
79 строк · 2.9 Кб
1
# This Makefile is used by the developer. It is not needed in any way to build
2
# a checkout of the XGB repository.
3
# It will be useful, however, if you are hacking at the code generator.
4
# i.e., after making a change to the code generator, run 'make' in the
5
# xgb directory. This will build xgbgen and regenerate each sub-package.
6
# 'make test' will then run any appropriate tests (just tests xproto right now).
7
# 'make bench' will test a couple of benchmarks.
8
# 'make build-all' will then try to build each extension. This isn't strictly
9
# necessary, but it's a good idea to make sure each sub-package is a valid
10
# Go package.
11

12
# My path to the X protocol XML descriptions.
13
ifndef XPROTO
14
XPROTO=/usr/share/xcb
15
endif
16

17
# All of the XML files in my /usr/share/xcb directory EXCEPT XKB. -_-
18
# This is intended to build xgbgen and generate Go code for each supported
19
# extension.
20
all: build-xgbgen \
21
		 bigreq.xml composite.xml damage.xml dpms.xml dri2.xml \
22
		 ge.xml glx.xml randr.xml record.xml render.xml res.xml \
23
		 screensaver.xml shape.xml shm.xml xc_misc.xml \
24
		 xevie.xml xf86dri.xml xf86vidmode.xml xfixes.xml xinerama.xml \
25
		 xprint.xml xproto.xml xselinux.xml xtest.xml \
26
		 xvmc.xml xv.xml
27

28
build-xgbgen:
29
	(cd xgbgen && go build)
30

31
# Builds each individual sub-package to make sure its valid Go code.
32
build-all: bigreq.b composite.b damage.b dpms.b dri2.b ge.b glx.b randr.b \
33
					 record.b render.b res.b screensaver.b shape.b shm.b xcmisc.b \
34
					 xevie.b xf86dri.b xf86vidmode.b xfixes.b xinerama.b \
35
					 xprint.b xproto.b xselinux.b xtest.b xv.b xvmc.b
36

37
%.b:
38
	(cd $* ; go build)
39

40
# Installs each individual sub-package.
41
install: bigreq.i composite.i damage.i dpms.i dri2.i ge.i glx.i randr.i \
42
					 record.i render.i res.i screensaver.i shape.i shm.i xcmisc.i \
43
					 xevie.i xf86dri.i xf86vidmode.i xfixes.i xinerama.i \
44
					 xprint.i xproto.i xselinux.i xtest.i xv.i xvmc.i
45
	go install
46

47
%.i:
48
	(cd $* ; go install)
49

50
# xc_misc is special because it has an underscore.
51
# There's probably a way to do this better, but Makefiles aren't my strong suit.
52
xc_misc.xml: build-xgbgen
53
	mkdir -p xcmisc
54
	xgbgen/xgbgen --proto-path $(XPROTO) $(XPROTO)/xc_misc.xml > xcmisc/xcmisc.go
55

56
%.xml: build-xgbgen
57
	mkdir -p $*
58
	xgbgen/xgbgen --proto-path $(XPROTO) $(XPROTO)/$*.xml > $*/$*.go
59

60
# Just test the xproto core protocol for now.
61
test:
62
	(cd xproto ; go test)
63

64
# Force all xproto benchmarks to run and no tests.
65
bench:
66
	(cd xproto ; go test -run 'nomatch' -bench '.*' -cpu 1,2,3,6)
67

68
# gofmt all non-auto-generated code.
69
# (auto-generated code is already gofmt'd.)
70
# Also do a column check (80 cols) after a gofmt.
71
# But don't check columns on auto-generated code, since I don't care if they
72
# break 80 cols.
73
gofmt:
74
	gofmt -w *.go xgbgen/*.go examples/*.go examples/*/*.go xproto/xproto_test.go
75
	colcheck *.go xgbgen/*.go examples/*.go examples/*/*.go xproto/xproto_test.go
76

77
push:
78
	git push origin master
79
	git push github master
80

81

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.