[vala/parallel] add 'parvala' script
- From: Ryan Lortie <ryanl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala/parallel] add 'parvala' script
- Date: Mon, 23 Aug 2010 14:31:12 +0000 (UTC)
commit c62f10ab332f87477a81043a62adade645e21804
Author: Ryan Lortie <desrt desrt ca>
Date: Mon Aug 23 10:31:01 2010 -0400
add 'parvala' script
parvala/parvala | 35 +++++++++++++++++++++++++++++++++++
parvala/parvala.mk | 25 +++++++++++++++++++++++++
2 files changed, 60 insertions(+), 0 deletions(-)
---
diff --git a/parvala/parvala b/parvala/parvala
new file mode 100755
index 0000000..d15496e
--- /dev/null
+++ b/parvala/parvala
@@ -0,0 +1,35 @@
+#!/bin/sh -e
+
+VALAC=valac
+VALAFLAGS=''
+makeflags=''
+
+while test -n "$*"; do
+ case "$1" in
+ --disable-version-header) VALAFLAGS="${VALAFLAGS} $1";;
+ --vapidir) shift; VALAFLAGS="${VALAFLAGS} --vapidir $1";;
+ --pkg) shift; VALAFLAGS="${VALAFLAGS} --pkg $1";;
+ *.vala) valafiles="${valafiles} $1";;
+ --library) shift; makeflags="${makeflags} OUT_VAPI=$1 $1";;
+ -H) shift; makeflags="${makeflags} OUT_HFILE=$1 $1";;
+ -C) c_mode="yes";;
+
+ *) echo "parvala: unrecognised argument: $1"; exit 1;;
+ esac
+ shift
+done
+
+if test -z "${c_mode}"; then
+ echo 'parvala: required argument -C not specified'
+ exit 1
+fi
+
+if test -n "${h_file}"; then
+ echo warning: Generating public .h file is still very slow.
+ mkdir -p .tmp
+ ${VALAC} -d .tmp -C ${VALAFLAGS} -H ${h_file} ${valafiles}
+ rm -rf .tmp
+fi
+
+echo make -f /home/desrt/bin/parvala.mk VALAC="${VALAC}" VALAFLAGS="${VALAFLAGS}" VALAFILES="${valafiles}" ${makeflags} all-c
+make -f /home/desrt/bin/parvala.mk VALAC="${VALAC}" VALAFLAGS="${VALAFLAGS}" VALAFILES="${valafiles}" ${makeflags} all-c
diff --git a/parvala/parvala.mk b/parvala/parvala.mk
new file mode 100644
index 0000000..668e64a
--- /dev/null
+++ b/parvala/parvala.mk
@@ -0,0 +1,25 @@
+VAPIFILES = $(addprefix .vapis/, $(VALAFILES:.vala=.vapi))
+
+all-vapi: $(VAPIFILES)
+all-c: $(VALAFILES:.vala=.c)
+
+.vapis:
+ mkdir -p .vapis
+
+.vapis/%.vapi: %.vala .vapis
+ $(VALAC) --fast-vapi=$@ $<
+
+%.c: %.vala $(VAPIFILES)
+ $(VALAC) -C $(VALAFLAGS) $(addprefix --use-fast-vapi=,$(subst $(addprefix .vapis/, $(@:.c=.vapi)),, $(VAPIFILES))) $<
+
+ifdef OUT_HFILE
+$(OUT_HFILE): $(VALAFILES)
+ mkdir -p .very_much_tmp
+ $(VALAC) -C -d .very_much_tmp -H $@ $(VALAFLAGS) $(VALAFILES)
+ rm -r .very_much_tmp
+endif
+
+ifdef OUT_VAPI
+$(OUT_VAPI): $(VAPIFILES)
+ $(VALAC) -C $(VALAFLAGS) --library $@ $(addprefix --use-fast-vapi=, $(VAPIFILES))
+endif
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]