switch to make for build
This commit is contained in:
parent
665849e016
commit
08aaac492e
39
Makefile
Normal file
39
Makefile
Normal file
@ -0,0 +1,39 @@
|
||||
REPO=$(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
||||
REPO_GOPATH=$(REPO)/go
|
||||
MINIFY=$(REPO_GOPATH)/bin/minify
|
||||
JS=$(REPO)/contrib/static/nntpchan.js
|
||||
CONTRIB_JS=$(REPO)/contrib/js/contrib
|
||||
LOCAL_JS=$(REPO)/contrib/js/nntpchan
|
||||
VENDOR_JS=$(REPO)/contrib/js/vendor
|
||||
SRND_DIR=$(REPO)/contrib/backends/srndv2
|
||||
SRND=$(REPO)/srndv2
|
||||
|
||||
all: build
|
||||
|
||||
build: js srnd
|
||||
|
||||
js: $(JS)
|
||||
|
||||
srnd: $(SRND)
|
||||
|
||||
$(MINIFY):
|
||||
GOPATH=$(REPO_GOPATH) go get -v github.com/tdewolff/minify/cmd/minify
|
||||
|
||||
js-deps: $(MINIFY)
|
||||
|
||||
$(JS): js-deps
|
||||
for f in $(CONTRIB_JS)/*.js ; do $(MINIFY) --mime=text/javascript >> $(JS) < $$f ; done
|
||||
$(MINIFY) --mime=text/javascript >> $(JS) < $(REPO)/contrib/js/entry.js
|
||||
for f in $(LOCAL_JS)/*.js ; do $(MINIFY) --mime=text/javascript >> $(JS) < $$f ; done
|
||||
for f in $(VENDOR_JS)/*.js ; do $(MINIFY) --mime=text/javascript >> $(JS) < $$f ; done
|
||||
|
||||
|
||||
$(SRND):
|
||||
make -C $(SRND_DIR)
|
||||
cp $(SRND_DIR)/srndv2 $(SRND)
|
||||
|
||||
clean:
|
||||
rm -f $(SRND) $(JS)
|
||||
|
||||
distclean: clean
|
||||
rm -rf $(REPO_GOPATH)
|
118
build-js.sh
118
build-js.sh
@ -1,118 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
neochan="no"
|
||||
if [ "$1" == "--enable-neochan" ] ; then
|
||||
neochan="yes"
|
||||
fi
|
||||
|
||||
root=$(readlink -e "$(dirname "$0")")
|
||||
set -e
|
||||
if [ "x" == "x$root" ] ; then
|
||||
root=$PWD/${0##*}
|
||||
fi
|
||||
cd "$root"
|
||||
|
||||
if [ -z "$GOPATH" ]; then
|
||||
export GOPATH=$root/go
|
||||
mkdir -p "$GOPATH"
|
||||
fi
|
||||
|
||||
if [ ! -f "$GOPATH/bin/minify" ]; then
|
||||
echo "set up minifiy"
|
||||
go get -v github.com/tdewolff/minify/cmd/minify
|
||||
fi
|
||||
|
||||
outfile="$PWD/contrib/static/nntpchan.js"
|
||||
neochan_js_outfile="$PWD/contrib/static/neochan.js"
|
||||
neochan_css_outfile="$PWD/contrib/static/neochan.css"
|
||||
|
||||
mini() {
|
||||
echo "minify $1"
|
||||
echo "" >> $2
|
||||
echo "/* begin $1 */" >> $2
|
||||
"$GOPATH/bin/minify" --mime=text/javascript >> $2 < $1
|
||||
echo "" >> $2
|
||||
echo "/* end $1 */" >> $2
|
||||
}
|
||||
|
||||
css() {
|
||||
echo "minify $1"
|
||||
echo "" >> $2
|
||||
echo "/* begin $1 */" >> $2
|
||||
lessc $1 >> $2
|
||||
echo "" >> $2
|
||||
echo "/* end $1 */" >> $2
|
||||
}
|
||||
|
||||
initfile() {
|
||||
|
||||
rm -f "$1"
|
||||
|
||||
echo '/*' >> "$1"
|
||||
echo ' * For source code and license information please check https://github.com/majestrate/nntpchan' >> "$1"
|
||||
brandingfile=./contrib/branding.txt
|
||||
if [ -e "$brandingfile" ] ; then
|
||||
echo ' *' >> "$1"
|
||||
while read line; do
|
||||
echo -n ' * ' >> "$1";
|
||||
echo $line >> "$1";
|
||||
done < $brandingfile;
|
||||
fi
|
||||
echo ' */' >> "$1"
|
||||
}
|
||||
echo
|
||||
echo "building nntpchan.js ..."
|
||||
echo
|
||||
initfile "$outfile"
|
||||
|
||||
|
||||
for f in ./contrib/js/contrib/*.js ; do
|
||||
mini "$f" "$outfile"
|
||||
done
|
||||
|
||||
mini ./contrib/js/entry.js "$outfile"
|
||||
|
||||
# local js
|
||||
for f in ./contrib/js/nntpchan/*.js ; do
|
||||
mini "$f" "$outfile"
|
||||
done
|
||||
|
||||
# vendor js
|
||||
for f in ./contrib/js/vendor/*.js ; do
|
||||
mini "$f" "$outfile"
|
||||
done
|
||||
|
||||
if [ "$neochan" == "yes" ] ; then
|
||||
set +e
|
||||
for exe in lessc coffee ; do
|
||||
which $exe &> /dev/null
|
||||
if [ "$?" != "0" ] ; then
|
||||
echo "$exe not installed";
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
echo
|
||||
echo "building neochan.js ..."
|
||||
echo
|
||||
|
||||
initfile "$neochan_js_outfile"
|
||||
for f in ./contrib/js/neochan/*.coffee ; do
|
||||
echo "compile $f"
|
||||
coffee -cs < "$f" > "$f.js"
|
||||
done
|
||||
for f in ./contrib/js/neochan/*.js ; do
|
||||
mini "$f" "$neochan_js_outfile"
|
||||
done
|
||||
|
||||
echo
|
||||
echo "building neochan.css ..."
|
||||
echo
|
||||
initfile "$neochan_css_outfile"
|
||||
for f in ./contrib/js/neochan/*.less ; do
|
||||
css "$f" "$neochan_css_outfile"
|
||||
done
|
||||
|
||||
fi
|
||||
echo
|
||||
echo "ok"
|
118
build.sh
118
build.sh
@ -1,118 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
root=$(readlink -e "$(dirname "$0")")
|
||||
set -e
|
||||
if [ "" == "$root" ] ; then
|
||||
root=$PWD/${0##*}
|
||||
fi
|
||||
cd "$root"
|
||||
|
||||
tags=""
|
||||
|
||||
help_text="usage: $0 [--disable-neochan] [--enable-redis]"
|
||||
|
||||
# check for help flags first
|
||||
for arg in "$@" ; do
|
||||
case $arg in
|
||||
-h|--help)
|
||||
echo "$help_text"
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
rev="QmPAqM7anxdr1ngPmJz9J9AAxDLinDz2Eh9aAzLF9T7LNa"
|
||||
ipfs="no"
|
||||
rebuildjs="yes"
|
||||
_next=""
|
||||
unstable="no"
|
||||
neochan="no"
|
||||
buildredis="no"
|
||||
lua="no"
|
||||
# check for build flags
|
||||
for arg in "$@" ; do
|
||||
case $arg in
|
||||
"--enable-lua")
|
||||
lua="yes"
|
||||
;;
|
||||
"--enable-redis")
|
||||
buildredis="yes"
|
||||
;;
|
||||
"--enable-neochan")
|
||||
neochan="yes"
|
||||
;;
|
||||
"--unstable")
|
||||
unstable="yes"
|
||||
;;
|
||||
"--no-js")
|
||||
rebuildjs="no"
|
||||
;;
|
||||
"--ipfs")
|
||||
ipfs="yes"
|
||||
;;
|
||||
"--revision")
|
||||
_next="rev"
|
||||
;;
|
||||
"--revision=*")
|
||||
rev=$(echo "$arg" | cut -d'=' -f2)
|
||||
;;
|
||||
*)
|
||||
if [ "x$_next" == "xrev" ] ; then
|
||||
rev="$arg"
|
||||
fi
|
||||
esac
|
||||
done
|
||||
|
||||
if [ "$buildredis" == "yes" ] ; then
|
||||
tags="$tags -tags disable_redis"
|
||||
fi
|
||||
|
||||
if [ "$lua" == "yes" ] ; then
|
||||
tags="$tags -tags lua"
|
||||
fi
|
||||
|
||||
if [ "$rev" == "" ] ; then
|
||||
echo "revision not specified"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd "$root"
|
||||
if [ "$rebuildjs" == "yes" ] ; then
|
||||
echo "rebuilding generated js..."
|
||||
if [ "$neochan" == "no" ] ; then
|
||||
./build-js.sh --disable-neochan
|
||||
else
|
||||
./build-js.sh
|
||||
fi
|
||||
fi
|
||||
|
||||
unset GOPATH
|
||||
export GOPATH=$PWD/go
|
||||
mkdir -p "$GOPATH"
|
||||
|
||||
if [ "$ipfs" == "yes" ] ; then
|
||||
if [ ! -e "$GOPATH/bin/gx" ] ; then
|
||||
echo "obtaining gx"
|
||||
go get -u -v github.com/whyrusleeping/gx
|
||||
fi
|
||||
if [ ! -e "$GOPATH/bin/gx-go" ] ; then
|
||||
echo "obtaining gx-go"
|
||||
go get -u -v github.com/whyrusleeping/gx-go
|
||||
fi
|
||||
echo "building stable revision, this will take a bit. to speed this part up install and run ipfs locally"
|
||||
mkdir -p "$GOPATH/src/gx/ipfs"
|
||||
cd "$GOPATH/src/gx/ipfs"
|
||||
"$GOPATH/bin/gx" get "$rev"
|
||||
cd "$rev/srndv2"
|
||||
echo "build..."
|
||||
go build -v .
|
||||
cp srndv2 "$root"
|
||||
echo -e "Built\n"
|
||||
echo "Now configure NNTPChan with ./srndv2 setup"
|
||||
else
|
||||
echo "building the daemon..."
|
||||
echo
|
||||
make -C contrib/backends/srndv2
|
||||
cp contrib/backends/srndv2/srndv2 .
|
||||
echo "built"
|
||||
echo "now configure NNTPChan with ./srndv2 setup"
|
||||
fi
|
Reference in New Issue
Block a user