summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2018-05-09 15:13:05 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2018-05-09 15:13:05 +0200
commit4d18b3968b7b18b7da63da5a35733df638c744c0 (patch)
tree8b6651173b33415cc1206e1f07eb3a20b3f4e80e
parentdc7f3cd85d61ca7af6a935c30b32d71026efdffe (diff)
Add commands for Unpackaged Dependencies section to intro2-tour
-rwxr-xr-xintro2-tour30
-rw-r--r--intro2-tour.orig126
2 files changed, 143 insertions, 13 deletions
diff --git a/intro2-tour b/intro2-tour
index d9ef011..2a2c8bc 100755
--- a/intro2-tour
+++ b/intro2-tour
@@ -163,6 +163,36 @@ show bdep status -r
show bdep status -o libhello
show bdep sync libhello/1.0.0
+# Unpackaged Dependencies.
+#
+cd ..
+rm -rf libextra libextra-gcc unpkg-gcc hello-gcc-1
+show bdep new -C libextra-gcc -t lib -l c++ libextra cc config.cxx=$gcc
+show b install: libextra/ config.install.root=/tmp/unpkg-gcc
+show tree unpkg-gcc
+cd hello
+
+show bdep init -C ../hello-gcc-1 @gcc1 cc config.cxx=$gcc \
+config.cc.poptions=-I$tmp/unpkg-gcc/include \
+config.cc.loptions=-L$tmp/unpkg-gcc/lib
+
+sed -i -re 's/^libs =/import libs = libextra%lib{extra}/' hello/buildfile
+cat <<EOF >>hello/hello.cxx
+#include <libextra/extra.hxx>
+
+void f ()
+{
+ extra::say_hello (cout, "Extra");
+}
+EOF
+
+show b test: ../hello-gcc-1/
+
+show b configure: ../hello-gcc/ \
+config.cc.poptions+=-I$tmp/unpkg-gcc/include \
+config.cc.loptions+=-L$tmp/unpkg-gcc/lib
+show b test
+
# Versioning and Release Management.
#
git add .
diff --git a/intro2-tour.orig b/intro2-tour.orig
index d1473a7..224e86f 100644
--- a/intro2-tour.orig
+++ b/intro2-tour.orig
@@ -78,7 +78,7 @@ created configuration @clang /tmp/hello-clang/ (2, auto-synchronized)
synchronizing:
new hello/0.1.0-a.0.19700101000000
-+ ls -d -1 ../hello ../hello1 ../hello1-gcc ../hello2 ../hello2-gcc ../hello-clang ../hello-gcc ../hello.git
++ ls -d -1 ../hello ../hello1 ../hello1-gcc ../hello2 ../hello2-gcc ../hello-clang ../hello-gcc ../hello-gcc-1 ../hello.git
../hello
../hello1
../hello1-gcc
@@ -86,6 +86,7 @@ synchronizing:
../hello2-gcc
../hello-clang
../hello-gcc
+../hello-gcc-1
../hello.git
+ bdep init -C ../hello-vc-debug @debug cc config.cxx=cl-15 config.cc.coptions=/MDd /Z7 config.cc.loptions=/DEBUG
@@ -193,7 +194,7 @@ synchronizing:
new libhello/1.0.0 (required by hello)
upgrade hello/0.1.0-a.0.19700101000000#1
- 0K ... 100% 95.5M=0s
+ 0K ... 100% 107M=0s
+ b
synchronizing /tmp/hello-gcc/:
upgrade hello/0.1.0-a.0.19700101000000#2
@@ -222,7 +223,7 @@ synchronizing:
new libhello/1.0.0 (required by hello)
upgrade hello/0.1.0-a.0.19700101000000#1
- 0K ... 100% 97.3M=0s
+ 0K ... 100% 98.4M=0s
+ bdep status
hello configured 0.1.0-a.0.19700101000000#2 available 0.1.0-a.0.19700101000000#3
@@ -234,7 +235,7 @@ synchronizing:
new libhello/1.0.0 (required by hello)
upgrade hello/0.1.0-a.0.19700101000000#4
- 0K ... 100% 89.0M=0s
+ 0K ... 100% 87.8M=0s
+ bdep fetch
fetching git:build2.org/hello/libhello (prerequisite of dir:/tmp/hello)
querying https://git.build2.org/hello/libhello.git
@@ -276,8 +277,107 @@ synchronizing:
downgrade libhello/1.0.0
reconfigure hello/0.1.0-a.0.19700101000000#4
distributing libhello/1.0.0
-[master (root-commit) 7183b8d] Start hello project
- 11 files changed, 110 insertions(+)
+
++ bdep new -C libextra-gcc -t lib -l c++ libextra cc config.cxx=g++
+created new library project libextra in /tmp/libextra/
+created configuration /tmp/libextra-gcc/ (1, default, forwarded, auto-synchronized)
+synchronizing:
+ new libextra/0.1.0-a.0.19700101000000
+
++ b install: libextra/ config.install.root=/tmp/unpkg-gcc
+mkdir libextra-gcc/libextra/fsdir{libextra/}
+ver libextra/libextra/version.hxx.in
+c++ libextra/libextra/cxx{extra}@libextra-gcc/libextra/libextra/
+c++ libextra/libextra/cxx{extra}@libextra-gcc/libextra/libextra/
+ld libextra-gcc/libextra/libextra/liba{extra}
+ld libextra-gcc/libextra/libextra/libs{extra}
+install unpkg-gcc/
+install unpkg-gcc/include/
+install unpkg-gcc/include/libextra/
+install libextra/libextra/hxx{export}@libextra-gcc/libextra/libextra/
+install libextra/libextra/hxx{extra}@libextra-gcc/libextra/libextra/
+install libextra-gcc/libextra/libextra/hxx{version}
+install libextra-gcc/libextra/libextra/liba{extra}
+install libextra-gcc/libextra/libextra/libs{extra}
+
++ tree unpkg-gcc
+unpkg-gcc
+├── include
+│   └── libextra
+│   ├── export.hxx
+│   ├── extra.hxx
+│   └── version.hxx
+└── lib
+ ├── libextra-0.1.0-a.0.19700101000000.so
+ ├── libextra.a
+ ├── libextra.so -> libextra-0.1.0-a.0.19700101000000.so
+ └── pkgconfig
+ ├── libextra.shared.pc
+ └── libextra.static.pc
+
+4 directories, 8 files
+
++ bdep init -C ../hello-gcc-1 @gcc1 cc config.cxx=g++ config.cc.poptions=-I/tmp/unpkg-gcc/include config.cc.loptions=-L/tmp/unpkg-gcc/lib
+initializing project /tmp/hello/
+created configuration @gcc1 /tmp/hello-gcc-1/ (3, auto-synchronized)
+fetching git:build2.org/hello/libhello (prerequisite of dir:/tmp/hello)
+querying https://git.build2.org/hello/libhello.git
+fetching from https://git.build2.org/hello/libhello.git
+fetching git:build2.org/hello/libformat##HEAD (prerequisite of git:build2.org/hello/libhello)
+querying https://git.build2.org/hello/libformat.git
+fetching from https://git.build2.org/hello/libformat.git
+fetching git:build2.org/hello/libprint##HEAD (prerequisite of git:build2.org/hello/libhello)
+querying https://git.build2.org/hello/libprint.git
+fetching from https://git.build2.org/hello/libprint.git
+fetching pkg:stage.build2.org (prerequisite of dir:/tmp/hello)
+synchronizing:
+ new libformat/1.0.0 (required by libhello)
+ new libprint/1.0.0 (required by libhello)
+ new libhello/1.1.0 (required by hello)
+ new hello/0.1.0-a.0.19700101000000
+distributing libformat/1.0.0
+distributing libprint/1.0.0
+distributing libhello/1.1.0
+
++ b test: ../hello-gcc-1/
+mkdir ../hello-gcc-1/hello/fsdir{hello/}
+ver ../hello-gcc-1/libformat-1.0.0/libformat/version.hxx.in
+ver ../hello-gcc-1/libhello-1.1.0/libhello/version.hxx.in
+ver ../hello-gcc-1/libprint-1.0.0/libprint/version.hxx.in
+c++ ../hello-gcc-1/libformat-1.0.0/tests/basics/cxx{driver}
+c++ ../hello-gcc-1/libprint-1.0.0/libprint/cxx{print}
+c++ ../hello-gcc-1/libprint-1.0.0/tests/basics/cxx{driver}
+c++ ../hello-gcc-1/libhello-1.1.0/libhello/cxx{hello}
+c++ hello/cxx{hello}@../hello-gcc-1/hello/hello/
+c++ ../hello-gcc-1/libformat-1.0.0/libformat/cxx{format}
+c++ ../hello-gcc-1/libhello-1.1.0/tests/basics/cxx{driver}
+ld ../hello-gcc-1/libprint-1.0.0/libprint/libs{print}
+ld ../hello-gcc-1/libprint-1.0.0/tests/basics/exe{driver}
+ld ../hello-gcc-1/libformat-1.0.0/libformat/libs{format}
+ld ../hello-gcc-1/libformat-1.0.0/tests/basics/exe{driver}
+ld ../hello-gcc-1/libhello-1.1.0/libhello/libs{hello}
+ld ../hello-gcc-1/hello/hello/exe{hello}
+ld ../hello-gcc-1/libhello-1.1.0/tests/basics/exe{driver}
+test ../hello-gcc-1/libhello-1.1.0/tests/basics/exe{driver}
+test ../hello-gcc-1/libprint-1.0.0/tests/basics/exe{driver}
+test hello/test{testscript}@../hello-gcc-1/hello/hello/ ../hello-gcc-1/hello/hello/exe{hello}
+test ../hello-gcc-1/libformat-1.0.0/tests/basics/exe{driver}
+
++ b configure: ../hello-gcc/ config.cc.poptions+=-I/tmp/unpkg-gcc/include config.cc.loptions+=-L/tmp/unpkg-gcc/lib
+save ../hello-gcc/build/config.build
+save ../hello-gcc/hello/build/config.build
+save ../hello-gcc/libhello-1.0.0/build/config.build
+save ../hello-gcc/libhello-1.0.0/tests/build/config.build
+
++ b test
+c++ ../hello-gcc/libhello-1.0.0/libhello/cxx{hello}
+c++ hello/cxx{hello}@../hello-gcc/hello/hello/
+ld ../hello-gcc/libhello-1.0.0/libhello/libs{hello}
+ld ../hello-gcc/hello/hello/exe{hello}
+ln ../hello-gcc/hello/hello/exe{hello} -> hello/
+test hello/test{testscript}@../hello-gcc/hello/hello/ ../hello-gcc/hello/hello/exe{hello}
+[master (root-commit) cf3bc7a] Start hello project
+ 11 files changed, 116 insertions(+)
create mode 100644 .gitignore
create mode 100644 build/.gitignore
create mode 100644 build/bootstrap.build
@@ -291,11 +391,11 @@ distributing libhello/1.0.0
create mode 100644 repositories.manifest
+ bdep status
-hello configured 0.1.0-a.0.19700101000000#4 available 0.1.0-a.0.20180507065733.7183b8d4b235
+hello configured 0.1.0-a.0.19700101000000#4 available 0.1.0-a.0.20180509125102.cf3bc7a9e17f
+ b info
project: hello
-version: 0.1.0-a.0.20180507065733.7183b8d4b235
+version: 0.1.0-a.0.20180509125102.cf3bc7a9e17f
summary: hello executable project
url: https://example.org/hello
src_root: /tmp/hello/
@@ -305,15 +405,15 @@ subprojects:
+ bdep sync
synchronizing:
- upgrade hello/0.1.0-a.0.20180507065733.7183b8d4b235
+ upgrade hello/0.1.0-a.0.20180509125102.cf3bc7a9e17f
+ bdep status
-hello configured 0.1.0-a.0.20180507065733.7183b8d4b235
-[master 9628993] Another commit
+hello configured 0.1.0-a.0.20180509125102.cf3bc7a9e17f
+[master aa6d12e] Another commit
1 file changed, 1 insertion(+)
+ bdep status
-hello configured 0.1.0-a.0.20180507065733.7183b8d4b235 available 0.1.0-a.0.20180507065734.9628993ae538
+hello configured 0.1.0-a.0.20180509125102.cf3bc7a9e17f available 0.1.0-a.0.20180509125103.aa6d12e561fe
+ bpkg create -d tools cc config.cxx=g++ config.cc.coptions=-O3 config.install.root=/opt/tools config.install.sudo=sudo config.bin.rpath=/opt/tools/lib
created new configuration in /tmp/tools/
@@ -351,8 +451,8 @@ distributing hello/1.0.0
checked out hello/1.0.0
configured hello/1.0.0
ver libhello-1.1.0/libhello/version.hxx.in
-ver libprint-1.0.0/libprint/version.hxx.in
ver libformat-1.0.0/libformat/version.hxx.in
+ver libprint-1.0.0/libprint/version.hxx.in
c++ libprint-1.0.0/libprint/cxx{print}
c++ libhello-1.1.0/libhello/cxx{hello}
c++ libformat-1.0.0/libformat/cxx{format}