aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore12
-rw-r--r--build/.gitignore1
-rw-r--r--build/bootstrap.build11
-rw-r--r--build/root.build18
-rw-r--r--buildfile10
-rw-r--r--doc/buildfile18
-rwxr-xr-xdoc/doc.sh68
-rw-r--r--manifest16
8 files changed, 153 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index 3b9998d..a06aa4b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,9 +1,19 @@
# Compiler/linker output.
#
+*.d
+*.ii
*.o
-*.o.d
+*.obj
*.so
+*.dll
*.a
+*.lib
+*.exp
+*.exe
+*.exe.dlls/
+*.exe.manifest
+*.pc
+
*.l
*.l.cpp-options
diff --git a/build/.gitignore b/build/.gitignore
new file mode 100644
index 0000000..225c27f
--- /dev/null
+++ b/build/.gitignore
@@ -0,0 +1 @@
+config.build
diff --git a/build/bootstrap.build b/build/bootstrap.build
new file mode 100644
index 0000000..111001d
--- /dev/null
+++ b/build/bootstrap.build
@@ -0,0 +1,11 @@
+# file : build/bootstrap.build
+# copyright : Copyright (c) 2009-2017 Code Synthesis Tools CC
+# license : GNU GPL v3; see accompanying LICENSE file
+
+project = odb
+
+using version
+using config
+using dist
+using test
+using install
diff --git a/build/root.build b/build/root.build
new file mode 100644
index 0000000..f57ba41
--- /dev/null
+++ b/build/root.build
@@ -0,0 +1,18 @@
+# file : build/root.build
+# copyright : Copyright (c) 2009-2017 Code Synthesis Tools CC
+# license : GNU GPL v3; see accompanying LICENSE file
+
+cxx.std = 11
+
+using cxx
+
+hxx{*}: extension = hxx
+ixx{*}: extension = ixx
+txx{*}: extension = txx
+cxx{*}: extension = cxx
+
+cxx.poptions =+ "-I$out_root" "-I$src_root"
+
+# Specify the test target for cross-testing.
+#
+test.target = $cxx.target
diff --git a/buildfile b/buildfile
new file mode 100644
index 0000000..9af976f
--- /dev/null
+++ b/buildfile
@@ -0,0 +1,10 @@
+# file : buildfile
+# copyright : Copyright (c) 2009-2017 Code Synthesis Tools CC
+# license : GNU GPL v3; see accompanying LICENSE file
+
+./: {*/ -odb/ -build/ -m4/} doc{GPLv3 INSTALL LICENSE NEWS README version} \
+ file{manifest}
+
+# Don't install the INSTALL file.
+#
+doc{INSTALL}@./: install = false
diff --git a/doc/buildfile b/doc/buildfile
new file mode 100644
index 0000000..293dfb9
--- /dev/null
+++ b/doc/buildfile
@@ -0,0 +1,18 @@
+# file : doc/buildfile
+# copyright : Copyright (c) 2009-2017 Code Synthesis Ltd
+# license : GNU GPL v3; see accompanying LICENSE file
+
+define css: doc
+css{*}: extension = css
+
+define xhtml: doc
+xhtml{*}: extension = xhtml
+
+./: css{default}
+
+./: {man1 xhtml}{odb} file{odb-*.1} file{odb-*.xhtml}
+
+./: doc{manual.xhtml odb-manual.ps odb-manual.pdf} doc{*.png} \
+ file{*.svg +*.html2ps}
+
+./: file{doc.sh}
diff --git a/doc/doc.sh b/doc/doc.sh
new file mode 100755
index 0000000..a5517af
--- /dev/null
+++ b/doc/doc.sh
@@ -0,0 +1,68 @@
+#! /usr/bin/env bash
+
+version=2.5.0-b.6
+date="$(date +"%B %Y")"
+
+trap 'exit 1' ERR
+set -o errtrace # Trap in functions.
+
+function info () { echo "$*" 1>&2; }
+function error () { info "$*"; exit 1; }
+
+while [ $# -gt 0 ]; do
+ case $1 in
+ --clean)
+ rm -f odb.xhtml odb.1
+ rm -f odb-manual.ps odb-manual.pdf
+ exit 0
+ ;;
+ *)
+ error "unexpected $1"
+ ;;
+ esac
+done
+
+function compile () # <input-name> <output-name>
+{
+ local i=$1; shift
+ local o=$1; shift
+
+ # Use a bash array to handle empty arguments.
+ #
+ local ops=()
+ while [ $# -gt 0 ]; do
+ ops=("${ops[@]}" "$1")
+ shift
+ done
+
+ # --html-suffix .xhtml
+ cli -I .. -v project="odb" -v version="$version" -v date="$date" \
+"${ops[@]}" --generate-html --stdout \
+--html-prologue-file odb-prologue.xhtml \
+--html-epilogue-file odb-epilogue.xhtml \
+"../odb/$i.cli" >"$o.xhtml"
+
+ # --man-suffix .1
+ cli -I .. -v project="odb" -v version="$version" -v date="$date" \
+"${ops[@]}" --generate-man --stdout \
+--man-prologue-file odb-prologue.1 \
+--man-epilogue-file odb-epilogue.1 \
+"../odb/$i.cli" >"$o.1"
+}
+
+compile options odb --suppress-undocumented
+
+# Manual.
+#
+
+#function compile_doc ()
+#{
+# html2ps -f doc.html2ps:a4.html2ps -o "$n-a4.ps" "$n.xhtml"
+# ps2pdf14 -sPAPERSIZE=a4 -dOptimize=true -dEmbedAllFonts=true "$n-a4.ps" "$n-a4.pdf"
+#
+# html2ps -f doc.html2ps:letter.html2ps -o "$n-letter.ps" "$n.xhtml"
+# ps2pdf14 -sPAPERSIZE=letter -dOptimize=true -dEmbedAllFonts=true "$n-letter.ps" "$n-letter.pdf"
+#}
+
+html2ps -f manual.html2ps -o odb-manual.ps manual.xhtml
+ps2pdf14 -dOptimize=true -dEmbedAllFonts=true odb-manual.ps odb-manual.pdf
diff --git a/manifest b/manifest
new file mode 100644
index 0000000..1001be9
--- /dev/null
+++ b/manifest
@@ -0,0 +1,16 @@
+: 1
+name: odb
+version: 2.5.0-b.6.z
+summary: ODB compiler
+license: GPLv3
+tags: c++, orm, database, relational, object, persistence, sql
+description-file: README
+changes-file: NEWS
+url: https://www.codesynthesis.com/products/odb/
+doc-url: https://www.codesynthesis.com/products/odb/doc/manual.xhtml
+src-url: https://git.codesynthesis.com/cgit/odb/odb/
+email: odb-users@codesynthesis.com
+build-email: odb-builds@codesynthesis.com
+requires: c++11
+depends: * build2 >= 0.6.0-
+depends: * bpkg >= 0.6.0-