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 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232
|
#############################################################################
# default: generate all
all: mined help manual mnemodoc
#############################################################################
# generation
mined: src/version.h
./makemined
minced: src/version.h
./makemined minced
help: usrshare/package_doc/VERSION
./makemined help
mnemodoc:
./makemined mnemodoc
generate:
./makemined generate
clean:
./makemined clean
manual:
cd man; make
VER=$(shell sed -e 's,^[^0-9]*,,' -e 's,[^0-9][^0-9]*,.,g' -e q VERSION )
UNIVER=$(shell sed -e '/^\# Blocks-/ b ver' -e d -e ': ver' -e 's,^[^0-9]*\([0-9].*[0-9]\).*,\1,g' -e 's,\.0$$,,' src/Blocks.txt )
ver:
echo mined $(VER)
echo Unicode $(UNIVER)
src/version.h: VERSION
echo '#define VERSION "$(VER)"' > src/version.h
echo '#define UNICODE_VERSION "$(UNIVER)"' >> src/version.h
usrshare/package_doc/VERSION: VERSION
echo $(VER) > usrshare/package_doc/VERSION
#############################################################################
# description
#SUMMARY=Powerful text editor with extensive Unicode and CJK support.
SUMMARY=$(shell sed -e 's,<meta *name="*description"* content="*\([^"]*\)"* *>,\1,' -e t -e d doc/overview.html )
descriptions: description.summary description.medium description.long
description.summary: doc/overview.html makefile
echo $(SUMMARY) > description.summary
description.medium: DESCR
sed -n -e "/Overview/ q" -e p DESCR > description.medium
echo "For an overview and further information see http://mined.sourceforge.net/" >> description.medium
description.long: DESCR
cp DESCR description.long
wiki: mined.wiki
wikisrc=doc/overview.html doc/design.html
DATE=` sed -e "s,.*-> mined $(VER) (\(.*\)),\1," -e t -e d doc/changes.html `
mined.wiki: $(wikisrc) wiki.sed wiki.add makefile
sed -e "/^$$/,$$ d" -e "s,VERSION,$(VER)," -e "s,DATE,$(DATE)," wiki.add > mined.wiki
cat $(wikisrc) | tidy -utf8 -o -wrap 999 2> /dev/null | sed -f wiki.sed >> mined.wiki
sed -e "/^$$/,$$ b" -e d wiki.add >> mined.wiki
announcements: DESCR doc/changes.html
DATE=$(DATE) sh -c "cd announcement; ./makeann > announcement-update"
DATE=$(DATE) sh -c "cd announcement; ./makeann cygwin > cygwin-announce"
cd announcement; ./makeupload > cygwin-upload
#############################################################################
# installation
install:
./makemined install root=$(root) prefix=$(prefix) lprefix=$(lprefix) rundir=$(rundir) lrundir=$(lrundir)
localinstall:
./makemined localinstall root=$(root) prefix=$(prefix) lprefix=$(lprefix) rundir=$(rundir) lrundir=$(lrundir)
optinstall:
./makemined optinstall root=$(root) prefix=$(prefix) lprefix=$(lprefix) rundir=$(rundir) lrundir=$(lrundir)
#############################################################################
# source distribution and private archives
beta: all
if egrep -e "^printf" -e "^#define debug" src/*.[hc]; then false; fi
./makearch -
LSM=release/mined.lsm
SPEC=release/mined.spec
lsm: $(LSM)
rpm: $(SPEC)
$(SPEC): DESCR makefile
echo $(VER)
echo "# partial spec file for mined" > $(SPEC)
echo "Name: mined" >> $(SPEC)
echo "Group: Productivity/Editors/Other" >> $(SPEC)
echo "Version: $(VER)" >> $(SPEC)
echo "URL: http://towo.net/mined/" >> $(SPEC)
echo "Summary: $(SUMMARY)" >> $(SPEC)
echo "" >> $(SPEC)
echo "%description" >> $(SPEC)
sed -e "s,^, ," DESCR >> $(SPEC)
echo "" >> $(SPEC)
distribution: release lsm
.PHONY: release
release:
$(MAKE) generate
$(MAKE) all
$(MAKE) DESCR
$(MAKE) release/mined-$(VER).tar.gz
release/mined-$(VER).tar.gz: src/mined usrshare/help/mined.hlp doc/mnemodoc.html man/*.1
#if egrep -e "^printf" -e "^#define debug" src/*.[hc]; then false; fi
#if sed -e "/-- test/,$$ b" -e d src/keymaps.cfg | egrep '^[^#]'; then false; else true; fi
./makemined checksrc
./makemined checkchar
./makemined pc
./makemined vms
./makearch
#############################################################################
# specific distribution packages
packages: cygwin
REL=$(shell sed -e 's,.*[Rr]elease *\([0-9]*\).*,\1,' -e 's,^$$,0,' -e q README.cygwin )
rel:
echo cygwin package release $(REL)
cygrel=release/cygwin
cygwin:
$(MAKE) release/mined-$(VER).tar.gz
$(MAKE) cygwinbin
$(MAKE) cygwinsrc
cygwinsrc:
echo making cygwin source package release $(REL) of mined $(VER)
mkdir -p $(cygrel)/
gunzip -c release/mined-$(VER).tar.gz | bzip2 -c > $(cygrel)/mined-$(VER)-$(REL)-src.tar.bz2
cygwinbin: $(cygrel)/setup.hint cygwinexe
echo making cygwin package release $(REL) of mined $(VER)
cd src; rm -fr tmp.cyg; mkdir tmp.cyg
cd src; make -f makefile.cygwin install root=tmp.cyg
cd src/tmp.cyg; tar -cf mined-$(VER)-$(REL).tar *
cd src/tmp.cyg; bzip2 mined-$(VER)-$(REL).tar
mv src/tmp.cyg/mined-$(VER)-$(REL).tar.bz2 $(cygrel)/
cygwinexe:
cd src; make -f makefile.cygwin mined.exe
$(cygrel)/setup.hint: description.medium makefile
mkdir -p $(cygrel)
echo '# cygwin setup file' > $(cygrel)/setup.hint
echo 'sdesc: $(SUMMARY)' >> $(cygrel)/setup.hint
echo 'category: Editors' >> $(cygrel)/setup.hint
echo 'requires: cygwin' >> $(cygrel)/setup.hint
echo 'ldesc: "' >> $(cygrel)/setup.hint
cat description.medium >> $(cygrel)/setup.hint
echo '"' >> $(cygrel)/setup.hint
$(LSM): DESCR makefile # release/mined-$(VER).tar.gz
mkdir -p release
echo $(VER)
echo "Begin4" > $(LSM)
echo "Title: mined" >> $(LSM)
echo "Version: $(VER)" >> $(LSM)
echo "Entered-date: `date +%Y-%m-%d`" >> $(LSM)
echo "Description: $(SUMMARY)" >> $(LSM)
sed -e "s,^, ," -e "s,:,;,g" DESCR >> $(LSM)
echo "Keywords: text editor, Unicode editor, UTF-8 editor, CJK editor" >> $(LSM)
echo "Author: mined@towo.net (Thomas Wolff)" >> $(LSM)
echo "Primary-site: http://towo.net/mined/" >> $(LSM)
(cd release; ls -l mined-$(VER).tar.gz) | sed -e "s,[^ ]* *[^ ]* *[^ ]* *[^ ]* *\([^ ]*\).* \([^ ]*\)$$, \1 \2," >> $(LSM)
echo "Alternate-site: http://www.ibiblio.org/pub/Linux/apps/editors/mined-$(VER).tar.gz" >> $(LSM)
echo "Platforms: Unix (Linux/Sun/HP/BSD/Mac and more), DOS (djgpp), Windows (cygwin)" >> $(LSM)
echo "Copying-policy: GPL with comments" >> $(LSM)
echo "End" >> $(LSM)
# NetBSD pkgsrc entry
DESCR: doc/overview.html descr.sed makefile
sed -f descr.sed doc/overview.html | sed -e "/./ b" -e "$$ d" > DESCR
# PC binary archives (development target, doesn't currently work locally)
bin: release/mined-$(VER)-cygwin.zip release/mined-$(VER)-dj.zip
release/mined-$(VER)-cygwin.zip: src/cyg/mined.exe src/cyg/cyg*.dll usrshare/help/mined.hlp README README.cygwin
mkdir -p release
cd src/cyg; chmod +x mined.exe cyg*.dll
cd src/cyg; zip mined-$(VER)-cygwin.zip mined.exe cyg*.dll
mv -f src/cyg/mined-$(VER)-cygwin.zip release/
cd usrshare/help; zip ../../release/mined-$(VER)-cygwin.zip mined.hlp
cd usrshare/bin; zip ../../release/mined-$(VER)-cygwin.zip minedmar.bat wined.bat
cp -fp README release/mined.txt
cp -fp README.cygwin release/minedcyg.txt
cd release; zip mined-$(VER)-cygwin.zip mined.txt minedcyg.txt
rm -f release/mined.txt release/minedcyg.txt
release/mined-$(VER)-dj.zip: src/dj/mined.exe usrshare/help/mined.hlp README
mkdir -p release
cd src/dj; chmod +x mined.exe
cd src/dj; zip mined-$(VER)-dj.zip mined.exe
mv -f src/dj/mined-$(VER)-dj.zip release/
cd usrshare/help; zip ../../release/mined-$(VER)-dj.zip mined.hlp
cd usrshare/bin; zip ../../release/mined-$(VER)-dj.zip minedmar.bat
cp -fp README release/mined.txt
cd release; zip mined-$(VER)-dj.zip mined.txt
rm -f release/mined.txt
#############################################################################
# end
|