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
|
CVSUSER = srinathava
SSHCMD = ssh1
DIR1 = $(PWD)
.PHONY: latexs clean release updoc uphtdocs ltt changelog install stallin sync
# The main target. This creates a latex suite archive (zip and tar.gz
# format) ensuring that all the files in the archive are in unix format so
# unix people can use it too...
latexs:
# plugins:
zip -q latexSuite.zip plugin/imaps.vim
zip -q latexSuite.zip plugin/SyntaxFolds.vim
zip -q latexSuite.zip plugin/libList.vim
zip -q latexSuite.zip plugin/remoteOpen.vim
zip -q latexSuite.zip plugin/filebrowser.vim
# ftplugins
zip -q latexSuite.zip ftplugin/tex_latexSuite.vim
zip -q latexSuite.zip ftplugin/bib_latexSuite.vim
zip -q latexSuite.zip ftplugin/tex/*.vim
# files in the latex-suite directory
zip -q -R latexSuite.zip `find ftplugin/latex-suite -name '*'`
# documentation
zip -q latexSuite.zip doc/latex*.txt
zip -q latexSuite.zip doc/imaps*.txt
# indentation
zip -q latexSuite.zip indent/tex.vim
# compiler
zip -q latexSuite.zip compiler/tex.vim
# external tools
zip -q latexSuite.zip ltags
# Now to make a tar.gz file from the .zip file.
rm -rf $(TMP)/latexSuite0793
mkdir -p $(TMP)/latexSuite0793
cp latexSuite.zip $(TMP)/latexSuite0793/
( \
cd $(TMP)/latexSuite0793/ ; \
unzip -q -o latexSuite.zip ; \
\rm latexSuite.zip ; \
tar czf latexSuite.tar.gz * ; \
\mv latexSuite.tar.gz $(DIR1)/ ; \
)
mv latexSuite.zip latexSuite`date +%Y%m%d`.zip ; \
mv latexSuite.tar.gz latexSuite`date +%Y%m%d`.tar.gz ; \
# target for removing archive files.
clean:
rm -f latexSuite200*
# make a local install directory.
ltt:
rm -rf /tmp/ltt/vimfiles/ftplugin
cp -f latexSuite.zip /tmp/ltt/vimfiles/
cd /tmp/ltt/vimfiles; unzip latexSuite.zip
# This target is related to a script I have on my sf.net account. That
# script looks like:
#
# #!/bin/bash
# cd ~/testing/vimfiles; \
# cvs -q update; \
# make clean; \
# make; \
# cp latexsuite.* ~/htdocs/download/
#
# Doing a release via sf.net has a couple of advantages:
# - I do not have to bother with CRLF pain anymore because the copy on
# sf.net will always have unix style EOLs.
# - The process is much faster because I only need to communicate a command
# from my computer to sf.net. The rest is done locally on the sf.net
# server.
release:
$(SSHCMD) $(CVSUSER)@vim-latex.sf.net /home/groups/v/vi/vim-latex/bin/upload
updoc:
$(SSHCMD) $(CVSUSER)@vim-latex.sf.net /home/groups/v/vi/vim-latex/bin/updoc
# This is another target akin to the release: target. This target updates
# the htdocs directory of the latex-suite project to the latest CVS
# version.
# This is again related to the uphtdocs script on my sf.net account which
# looks like:
# #!/bin/sh
#
# # update the htdocs directory
# cd /home/groups/v/vi/vim-latex/htdocs; cvs -q update
# # update the packages directory
# cd /home/groups/v/vi/vim-latex/htdocs/packages; cvs -q update
uphtdocs:
$(SSHCMD) $(CVSUSER)@vim-latex.sf.net /home/groups/v/vi/vim-latex/bin/uphtdocs
# Automatically generate the Changelog file using the cvs2cl utility
#
# Arguments:
# -S add a seperating line between filename and log
# --no-wrap Do not attempt to format the Changelog comments
# -f file to write the Changelog to.
changelog:
cvs2cl -S --no-wrap -f ftplugin/latex-suite/ChangeLog
# rsync is like cp (copy) on steroids. Here are some useful options:
# -C auto ignore like CVS
# -r recurse into directories
# -t preserve times
# -u update (do not overwrite newer files)
# -W whole files, no incremental checks (default for local usage)
# --existing only update files that already exist
# --exclude exclude files matching the pattern
# -n dry run (for testing)
# Usage: after "cvs update", do
# make install [VIMFILES=path/to/vimfiles]
# Before "cvs commit", do
# make stallin [VIMFILES=path/to/vimfiles]
# If you have made changes in both directories, and want to keep the most
# recent versions, do
# make sync [VIMFILES=path/to/vimfiles]
# Note: defining VIMFILES when you invoke make overrides the value below.
# Warning: install and stallin do not check modification times!
VIMFILES=${HOME}/.vim
EXCLUDE="--exclude='*~' --exclude='*.swp' --exclude='makefile'"
install:
rsync -CrtW ${EXCLUDE} . ${VIMFILES}
# stallin = reverse install
# If you can think of a better name for this target, be my guest!
stallin:
rsync -CrtW --existing ${VIMFILES}/ .
sync: install stallin
|