|
Packit |
f546b1 |
# this snippet is to be included by both our docbook manuals
|
|
Packit |
f546b1 |
# and gtk-doc API references
|
|
Packit |
f546b1 |
|
|
Packit |
f546b1 |
# it adds an upload target to each of these dir's Makefiles
|
|
Packit |
f546b1 |
|
|
Packit |
f546b1 |
# each Makefile.am should define the following variables:
|
|
Packit |
f546b1 |
# - DOC: the base name of the documentation
|
|
Packit |
f546b1 |
# (faq, manual, pwg, gstreamer, gstreamer-libs)
|
|
Packit |
f546b1 |
# - FORMATS: the formats in which DOC is output
|
|
Packit |
f546b1 |
# (html ps pdf)
|
|
Packit |
f546b1 |
|
|
Packit |
f546b1 |
# if you want to use it, make sure your $HOME/.ssh/config file contains the
|
|
Packit |
f546b1 |
# correct User entry for the Host entry for the DOC_SERVER
|
|
Packit |
f546b1 |
|
|
Packit |
f546b1 |
# these variables define the location of the online docs
|
|
Packit |
f546b1 |
DOC_SERVER = gstreamer.freedesktop.org
|
|
Packit |
f546b1 |
DOC_BASE = /srv/gstreamer.freedesktop.org/www/data/doc
|
|
Packit |
f546b1 |
DOC_URL = $(DOC_SERVER):$(DOC_BASE)
|
|
Packit |
f546b1 |
|
|
Packit |
f546b1 |
upload: $(FORMATS)
|
|
Packit |
f546b1 |
@if echo $(FORMATS) | grep html > /dev/null; then \
|
|
Packit |
f546b1 |
echo "Preparing docs for upload (rebasing cross-references) ..." ; \
|
|
Packit |
f546b1 |
if test x$(builddir) != x$(srcdir); then \
|
|
Packit |
f546b1 |
echo "make upload can only be used if srcdir == builddir"; \
|
|
Packit |
f546b1 |
exit 1; \
|
|
Packit |
f546b1 |
fi; \
|
|
Packit |
f546b1 |
# gtkdoc-rebase sometimes gets confused, so reset everything to \
|
|
Packit |
f546b1 |
# local links before rebasing to online links \
|
|
Packit |
f546b1 |
gtkdoc-rebase --html-dir=$(builddir)/html 2>/dev/null 2>/dev/null ; \
|
|
Packit |
f546b1 |
rebase=`gtkdoc-rebase --verbose --online --html-dir=$(builddir)/html` ; \
|
|
Packit |
f546b1 |
echo "$$rebase" | grep -e "On-*line"; \
|
|
Packit |
f546b1 |
for req in glib gobject gstreamer gstreamer-libs gst-plugins-base-libs; do \
|
|
Packit |
f546b1 |
if ! ( echo "$$rebase" | grep -i -e "On-*line.*/$$req/" ); then \
|
|
Packit |
f546b1 |
echo "===============================================================================" ; \
|
|
Packit |
f546b1 |
echo " Could not determine online location for $$req docs. Cross-referencing will be " ; \
|
|
Packit |
f546b1 |
echo " broken, so not uploading. Make sure the library's gtk-doc documentation is " ; \
|
|
Packit |
f546b1 |
echo " installed somewhere in /usr/share/gtk-doc. " ; \
|
|
Packit |
f546b1 |
echo "===============================================================================" ; \
|
|
Packit |
f546b1 |
exit 1; \
|
|
Packit |
f546b1 |
fi; \
|
|
Packit |
f546b1 |
done; \
|
|
Packit |
f546b1 |
export SRC="$$SRC html"; \
|
|
Packit |
f546b1 |
fi; \
|
|
Packit |
f546b1 |
if echo $(FORMATS) | grep ps > /dev/null; then export SRC="$$SRC $(DOC).ps"; fi; \
|
|
Packit |
f546b1 |
if echo $(FORMATS) | grep pdf > /dev/null; then export SRC="$$SRC $(DOC).pdf"; fi; \
|
|
Packit |
f546b1 |
\
|
|
Packit |
f546b1 |
# upload releases to both X.Y/ and head/ subdirectories \
|
|
Packit |
f546b1 |
export DIR=$(DOC_BASE)/gstreamer/$(PACKAGE_VERSION_MAJOR).$(PACKAGE_VERSION_MINOR)/$(DOC); \
|
|
Packit |
f546b1 |
echo Uploading $$SRC to $(DOC_SERVER):$$DIR; \
|
|
Packit |
f546b1 |
ssh $(DOC_SERVER) mkdir -p $$DIR; \
|
|
Packit |
f546b1 |
rsync -rv -e ssh --delete $$SRC $(DOC_SERVER):$$DIR; \
|
|
Packit |
f546b1 |
ssh $(DOC_SERVER) chmod -R g+w $$DIR; \
|
|
Packit |
f546b1 |
\
|
|
Packit |
f546b1 |
export DIR=$(DOC_BASE)/gstreamer/head/$(DOC); \
|
|
Packit |
f546b1 |
echo Uploading $$SRC to $(DOC_SERVER):$$DIR; \
|
|
Packit |
f546b1 |
ssh $(DOC_SERVER) mkdir -p $$DIR; \
|
|
Packit |
f546b1 |
rsync -rv -e ssh --delete $$SRC $(DOC_SERVER):$$DIR; \
|
|
Packit |
f546b1 |
ssh $(DOC_SERVER) chmod -R g+w $$DIR; \
|
|
Packit |
f546b1 |
\
|
|
Packit |
f546b1 |
if echo $(FORMATS) | grep html > /dev/null; then \
|
|
Packit |
f546b1 |
echo "Un-preparing docs for upload (rebasing cross-references) ..." ; \
|
|
Packit |
f546b1 |
gtkdoc-rebase --html-dir=$(builddir)/html ; \
|
|
Packit |
f546b1 |
fi; \
|
|
Packit |
f546b1 |
echo Done
|