1 # Makefile for GNU Emacs Lisp Package Archive.
5 ARCHIVE_TMP
=archive-tmp
8 ## Set up the source files for direct usage, by pointing
9 ## `package-directory-list' to site/
11 mkdir
-p
$(PACKAGE_SITE_DIR
)
13 .PHONY
: archive-tmp process-archive archive-full org-fetch
15 ## Deploy the package archive to archive/, with packages in
18 $(MAKE
) $(MFLAGS
) process-archive
21 mkdir
-p
$(ARCHIVE_TMP
)
22 cp
-r packages
$(ARCHIVE_TMP
)
25 cd
$(ARCHIVE_TMP
)/packages
; $(EMACS
) -batch
-l
$(CURDIR
)/admin
/archive-contents.el
-f batch-make-archive
26 @cd
$(ARCHIVE_TMP
)/packages
; \
28 if
[ -d
$$pt ]; then \
29 echo
"Creating tarball $${pt}.tar" && \
30 tar -cf
$${pt}.
tar $$pt --remove-files
; \
33 mkdir
-p archive
/packages
34 mv archive
/packages archive
/packages-old
35 mv
$(ARCHIVE_TMP
)/packages archive
/packages
36 chmod
-R a
+rX archive
/packages
37 rm -rf archive
/packages-old
40 ## Deploy the package archive to archive/ including the Org daily and
42 archive-full
: archive-tmp org-fetch
43 $(MAKE
) $(MFLAGS
) process-archive
44 mkdir
-p archive
/admin
45 cp admin
/* archive
/admin
/
47 org-fetch
: archive-tmp
48 cd archive-tmp
/packages
; \
49 pkgname
=`curl -s http://orgmode.org/pkg/daily/|perl -ne 'push @f, $$1 if m/(org-\d{8})\.tar/; END { @f = sort @f; print "$$f[-1]\n"}'`; \
50 wget http
://orgmode.org
/pkg
/daily
/$${pkgname}.
tar -O
$${pkgname}.
tar; \
51 if
[ -f
$${pkgname}.
tar ]; then \
52 tar xf
$${pkgname}.
tar; \
53 rm -f
$${pkgname}.
tar; \