-
Notifications
You must be signed in to change notification settings - Fork 2
/
Makefile
143 lines (115 loc) · 4.04 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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# -*- Makefile -*-
# Borrowed from many emacs places
include Makefile.defs
SPECIAL =
UNCOMPILED =
AUTOLOADFILE = color-theme-autoloads
TESTING =
THEMES_DIRECTORY = themes
THEMES_FILES := $(wildcard $(THEMES_DIRECTORY)/*.el)
ALLSOURCE := $(wildcard *.el) $(THEMES_FILES)
SOURCE = $(filter-out $(SPECIAL) $(UNCOMPILED) $(TESTING),$(ALLSOURCE))
TARGET = $(patsubst %.el,%.elc,$(SPECIAL) $(SOURCE))
MANUAL = color-theme
MISC = AUTHORS COPYING ChangeLog Makefile.defs Makefile $(AUTOLOADFILE).in
#AUTHORS CREDITS HISTORY NEWS README Makefile ChangeLog \
#ChangeLog.2005 ChangeLog.2004 ChangeLog.2003 ChangeLog.2002 \
#ChangeLog.2001 servers.pl color-theme-auto.in color-theme.texi
all: lisp #$(MANUAL).info
lisp: clean $(TARGET)
autoloads: $(AUTOLOADFILE).elc
$(AUTOLOADFILE).el: $(AUTOLOADFILE).in #$(TARGET)
cp $(AUTOLOADFILE).in $(AUTOLOADFILE).el
rm -f $(AUTOLOADFILE).elc
@$(EMACS) -q $(SITEFLAG) -batch \
-l $(shell pwd | sed -e 's|^/cygdrive/\([a-z]\)|\1:|')/$(AUTOLOADFILE) \
-f color-theme-generate-autoloads \
$(shell pwd | sed -e 's|^/cygdrive/\([a-z]\)|\1:|')/$(AUTOLOADFILE).el . \
$(THEMES_DIRECTORY)
$(AUTOLOADFILE).elc: $(AUTOLOADFILE).el
@echo "Byte compiling the autoload file "$<
@$(EMACS) -batch -q -f batch-byte-compile $^
@echo "*******************************************************************"
@echo "Autoloads up to date. Put the following lines in your configuration"
@echo "file (~/.emacs for a single user) :"
@echo
@echo ${patsubst %, "(add-to-list 'load-path \""%"\") ", $(LISPDIRS)}
@echo "(require 'color-theme-autoload \""$(AUTOLOADFILE)"\")"
@echo
%.elc: %.el
@$(EMACS) $(OPTIONCOMPILE) \
--eval '(setq load-path (cons "." load-path))' \
-f batch-byte-compile $<
%.info: %.texi
@echo "No doc yet !"
# makeinfo $<
%.html: %.texi
@echo "No doc yet !"
# makeinfo --html --no-split $<
doc: $(MANUAL).info $(MANUAL).html
@echo "No doc yet !"
clean:
-rm -f themes/*.elc
-rm -f *~ *.elc $(AUTOLOADFILE).el
realclean: clean
-rm -f $(MANUAL).info $(MANUAL).html $(TARGET) $(SPECIAL)
install-info: $(MANUAL).info
[ -d $(INFODIR) ] || install -d $(INFODIR)
install -m 0644 $(MANUAL).info $(INFODIR)/$(MANUAL)
$(INSTALLINFO) $(INFODIR)/$(MANUAL)
install-bin: lisp
install -d $(ELISPDIR)
install -d $(ELISPDIR)/themes
install -m 0644 $(ALLSOURCE) $(TARGET) $(ELISPDIR)
install -m 0644 $(THEMES_FILES) $(TARGET) $(ELISPDIR)/themes
install: install-bin install-info
## DO NOT TOUCH THIS !
## HELPERS FOR MAINTAINER(S)
distclean:
-rm $(MANUAL).info $(MANUAL).html $(TARGET)
-rm -Rf ../$(DISTDIR)
-rm -f debian/dirs debian/files
-rm -rf $(DISTDIR) $(TARBALL)* $(ZIPFILE)* $(DEBNAME)*
dist: distclean Makefile
$(MAKE) dist-prepare
# Idea taken from w3m-el
dist-prepare: CVS/Root CVS/Repository
cvs -d $(CVSROOT) -w export -d $(DISTDIR) -r $(CVSBRANCH) $(CVSMODULE)
-cvs diff |( cd $(DISTDIR) && patch -p0 )
$(TARBALL): tarball
$(DEBNAME): debian
tarball: dist
find $(DISTDIR) -name .cvsignore | xargs rm -f
find $(DISTDIR) -name debian | xargs rm -fr
find $(DISTDIR) -type d | xargs chmod 755
find $(DISTDIR) -type f | xargs chmod 644
tar -cf `basename $(TARBALL) .gz` $(DISTDIR)
gzip -9 `basename $(TARBALL) .gz`
zip -r $(ZIPFILE) $(DISTDIR)
gpg --detach $(TARBALL)
gpg --detach $(ZIPFILE)
debian: dist
(cd $(DISTDIR) && \
dpkg-buildpackage -v$(LASTUPLOAD) $(BUILDOPTS) \
-us -uc -rfakeroot && \
echo "Running lintian ..." && \
lintian -i ../$(DEBNAME)*.deb || : && \
echo "Done running lintian." && \
debsign)
cp $(DEBNAME)* /var/spool/repo
(cd /var/spool/repo && \
dpkg-scanpackages . /dev/null | gzip -9 > Packages.gz && \
dpkg-scansources . | gzip -9 > Sources.gz
apt-ftparchive release . > Release)
release: $(DEBNAME) $(TARBALL)
rm -rf $(DISTDIR)
$(MAKE) upload distclean
upload:
(cd /var/spool/repo && echo open perso.nerim.net > upload.lftp ; \
echo cd /var/spool/repo >> upload.lftp ; \
echo mput * >> upload.lftp ; \
echo close >> upload.lftp ; \
lftp -f upload.lftp ; \
rm -f upload.lftp)
(scp $(ZIPFILE)* $(TARBALL)* \
[email protected]:/upload/color-theme)