mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-01-10 11:14:12 +01:00
updated explaination how to build muttator
This commit is contained in:
155
Makefile.common
155
Makefile.common
@@ -1,155 +0,0 @@
|
||||
#### configuration
|
||||
|
||||
TOP = $(shell pwd)
|
||||
OS = $(shell uname -s)
|
||||
BUILD_DATE = $(shell date "+%Y/%m/%d %H:%M:%S")
|
||||
|
||||
DOC_SRC_FILES = $(wildcard locale/*/*.txt)
|
||||
DOC_FILES = ${DOC_SRC_FILES:%.txt=%.html}
|
||||
|
||||
# TODO: specify source files manually?
|
||||
JAR_TXT_FILES = ${shell find content skin locale \
|
||||
-type f \
|
||||
-a ! -path '*CVS*' \
|
||||
-a \( \
|
||||
-path '*.js' \
|
||||
-o -path '*.css' \
|
||||
-o -path '*.xul' \
|
||||
-o -path '*.html' \
|
||||
\) \
|
||||
}
|
||||
JAR_DIRS = $(foreach f,${JAR_FILES},$(dir $f))
|
||||
JAR_BIN_FILES = ${shell find content skin \
|
||||
-type f \
|
||||
-a ! -path '*CVS*' \
|
||||
-a -path '*.png' \
|
||||
}
|
||||
JAR_FILES = ${JAR_BIN_FILES} ${JAR_TXT_FILES} ${DOC_FILES}
|
||||
JAR = chrome/${NAME}.jar
|
||||
|
||||
XPI_TXT_FILES = install.rdf chrome.manifest TODO AUTHORS Donators NEWS
|
||||
XPI_DIRS = $(foreach f,${XPI_FILES},$(dir $f))
|
||||
XPI_BIN_FILES = ${JAR} Makefile.common Makefile
|
||||
XPI_FILES = ${XPI_BIN_FILES} ${XPI_TXT_FILES}
|
||||
XPI_NAME = ${NAME}_${VERSION}.xpi
|
||||
XPI = ../downloads/${XPI_NAME}
|
||||
|
||||
RDF = ../downloads/update.rdf
|
||||
RDF_IN = ${RDF}.in
|
||||
|
||||
BUILD_DIR = build.${VERSION}.${OS}
|
||||
BUILD_JAR_DIR = ${BUILD_DIR}/jar
|
||||
BUILD_XPI_DIR = ${BUILD_DIR}/xpi
|
||||
|
||||
BUILD_JAR_SUBDIRS = $(sort ${JAR_DIRS:%=${BUILD_JAR_DIR}/%})
|
||||
BUILD_XPI_SUBDIRS = $(sort ${XPI_DIRS:%=${BUILD_XPI_DIR}/%})
|
||||
|
||||
ASCIIDOC = asciidoc
|
||||
ZIP = zip
|
||||
SED = sed
|
||||
|
||||
# specify V=1 on make line to see more verbose output
|
||||
Q=$(if ${V},,@)
|
||||
CP_V=$(if ${V},-v)
|
||||
|
||||
#### rules
|
||||
|
||||
.PHONY: all help info doc jar xpi install clean distclean
|
||||
all: help
|
||||
|
||||
help:
|
||||
@echo "${NAME} ${VERSION} build"
|
||||
@echo
|
||||
@echo " make help - display this help"
|
||||
@echo " make info - show some info about the system"
|
||||
@echo " make doc - build doc files"
|
||||
@echo " make jar - build a JAR (${JAR})"
|
||||
@echo " make xpi - build an XPI (${XPI_NAME})"
|
||||
@echo " make release - updates update.rdf (this is not for you)"
|
||||
@echo " make clean - clean up"
|
||||
@echo " make distclean - clean up more"
|
||||
@echo
|
||||
@echo "running some commands with V=1 will show more build details"
|
||||
|
||||
info:
|
||||
@echo "version ${VERSION}"
|
||||
@echo "release file ${XPI}"
|
||||
@echo "doc files ${DOC_SRC_FILES}"
|
||||
@echo -e "jar files $(shell echo ${JAR_FILES} | sed 's/ /\\n /g' )"
|
||||
|
||||
doc: ${DOC_FILES}
|
||||
xpi: ${XPI}
|
||||
jar: ${JAR}
|
||||
|
||||
release: ${XPI} ${RDF}
|
||||
|
||||
${RDF}: ${RDF_IN} Makefile
|
||||
@echo "Preparing release..."
|
||||
${Q}${SED} -e "s,###VERSION###,${VERSION},g" \
|
||||
-e "s,###DATE###,${BUILD_DATE},g" \
|
||||
< $< > $@
|
||||
@echo "SUCCESS: $@"
|
||||
|
||||
clean:
|
||||
@echo "Cleanup..."
|
||||
${Q}rm -f ${JAR} ${XPI}
|
||||
${Q}find . -name '*~' -exec rm -f {} \;
|
||||
|
||||
distclean: clean
|
||||
@echo "More cleanup..."
|
||||
${Q}rm -f ${DOC_FILES}
|
||||
${Q}rm -rf ${BUILD_DIR}
|
||||
|
||||
#### xpi
|
||||
|
||||
${BUILD_XPI_SUBDIRS}:
|
||||
${Q}mkdir -p $@
|
||||
|
||||
${XPI}: ${BUILD_XPI_SUBDIRS} ${XPI_FILES}
|
||||
@echo "Building XPI..."
|
||||
${Q}mkdir -p $(dir ${XPI})
|
||||
${Q}for f in ${XPI_BIN_FILES} ; do \
|
||||
cp $$f ${BUILD_XPI_DIR}/$$f ; \
|
||||
done
|
||||
${Q}for f in ${XPI_TXT_FILES} ; do \
|
||||
${SED} -e "s,###VERSION###,${VERSION},g" \
|
||||
-e "s,###DATE###,${BUILD_DATE},g" \
|
||||
< $$f > ${BUILD_XPI_DIR}/$$f ; \
|
||||
( diff -q $$f ${BUILD_XPI_DIR}/$$f 1>/dev/null ) || \
|
||||
( echo "modified: $$f" ; \
|
||||
diff -u $$f ${BUILD_XPI_DIR}/$$f | grep '^[-+][^-+]' ) ; \
|
||||
done
|
||||
# FIXME: VERSION and DATE tokens not replaced
|
||||
${Q}${SED} -e 's,\(skin\|content\|locale/.*\)/$$,jar:chrome/${NAME}.jar!/\1/,' \
|
||||
< chrome.manifest > ${BUILD_XPI_DIR}/chrome.manifest
|
||||
${Q}( cd ${BUILD_XPI_DIR} && ${ZIP} -r ${TOP}/${XPI} ${XPI_FILES} )
|
||||
@echo "SUCCESS: $@"
|
||||
|
||||
#### jar
|
||||
|
||||
${BUILD_JAR_SUBDIRS}:
|
||||
${Q}mkdir -p $@
|
||||
|
||||
${JAR}: ${BUILD_JAR_SUBDIRS} ${JAR_FILES}
|
||||
@echo "Building JAR..."
|
||||
${Q}mkdir -p $(dir ${JAR})
|
||||
${Q}for f in ${JAR_BIN_FILES} ; do \
|
||||
cp $$f ${BUILD_JAR_DIR}/$$f ; \
|
||||
done
|
||||
${Q}for f in ${JAR_TXT_FILES} ; do \
|
||||
${SED} -e "s,###VERSION###,${VERSION},g" \
|
||||
-e "s,###DATE###,${BUILD_DATE},g" \
|
||||
< $$f > ${BUILD_JAR_DIR}/$$f ; \
|
||||
( diff -q $$f ${BUILD_JAR_DIR}/$$f 1>/dev/null ) || \
|
||||
( echo "modified: $$f" ; \
|
||||
diff -u $$f ${BUILD_JAR_DIR}/$$f | grep '^[-+][^-+]' ) ; \
|
||||
done
|
||||
${Q}( cd ${BUILD_JAR_DIR} && ${ZIP} -r ${TOP}/${JAR} ${JAR_FILES} )
|
||||
@echo "SUCCESS: $@"
|
||||
|
||||
#### doc
|
||||
|
||||
${DOC_FILES}: %.html: %.txt Makefile.common locale/en-US/asciidoc.conf
|
||||
@echo "DOC $@"
|
||||
${Q}${ASCIIDOC} --unsafe -a linkcss -o $@ $<
|
||||
|
||||
11
README
Normal file
11
README
Normal file
@@ -0,0 +1,11 @@
|
||||
In order to build muttator, you also need to checkout vimperator from:
|
||||
http://vimperator.mozdev.org.
|
||||
|
||||
And symlink the following files:
|
||||
|
||||
cd muttator/src
|
||||
ln -s ../../vimperator/src/Makefile.common .
|
||||
ln -s ../../vimperator/src/content .
|
||||
|
||||
If you want to check-in changes, don't forget to also commit the vimperator part
|
||||
inside the local vimperator/ directory.
|
||||
Reference in New Issue
Block a user