Add a new option that avoids stopping the build with:
configure: error: source directory already configured; run "make distclean" there first
I run into this frequently, when e.g. running './configure; make release'
inside Osmocom repositories and then attempting to build them with
osmo-dev. It is annoying as it does not fail immediatelly, and I need to
manually go to the source directories where it failed, run 'make
distclean' and then attempt to build again. Then it may fail on another
directory with the same problem.
Check for config.status, as that is also what ./configure checks for
before printing the error.
Do not consider config.h inside the source tree as modified source file.
This file gets generated when running ./configure to build in-tree,
whereas osmo-dev always builds out-of-tree.
Having config.h inside proj_files causes problems with the next patch,
where conflicting in-tree builds will be automatically be cleaned with
"make distclean". For example:
* "make libosmocore" runs with a previously configured in-tree build
* proj_files contains config.h.
* Before attempting to build libosmocore out-of-tree, with the next
patch, "make distclean" gets executed.
* config.h is now removed
* .make.libosmocore.build target expects all proj_files to exist and
make: *** No rule to make target '../src/libosmocore/config.h', needed by '.make.libosmocore.build'. Stop.
Rename 3G+2G.deps to all.deps and remove the parameter from
gen_makefile.py. Create new Makefile targets for the various use cases,
usually we build either 'cn-bsc' or 'usrp'. The next patch will add more
projects to all.deps.
This change brings the Makefile logic closer to how it is actually used,
one build directory that is building most Osmocom projects. New projects
can be added to all.deps on demand, but then we have it in the
repository and not just a local change that we add temporarily to the
3G+2G.deps file when we need to build a specific project.
Extend all.deps with projects needed by ttcn3.sh, so it doesn't need to
write its custom .deps file anymore.
Merge build_osmo_program_osmodev into build_osmo_programs and change the
logic, so make only needs to run once. This saves a few seconds for each
On my system, when building all components in docker, some of the C tests
don't pass (but they do pass on jenkins.osmocom.org, which runs a
similar setup). Do the easy workaround and just disable C tests, the
point of ttcn3.sh is to have fast ttcn-3 test iterations anyway, running
the C tests additionally slow each iteration down. One can run the C
tests before submitting changes, e.g. by building with osmo-dev without
Remove leftovers from before refactoring in
Iecba5391dafc353058d369deb513b156534face1. No need to build these with
osmo-dev, as they are part of the osmocom-bb docker container that gets
built via ttcn3-bts-test/jenkins.sh.
Replace the previous approach of building outside of docker and mounting
everything inside docker while running tests, with also building
everything inside docker. This prevents incompatibilities between host
system and docker (e.g. different glibc). As nice side-effect,
/usr/local is not filled up anymore.
To be used by ttcn3.sh to run the actual build inside docker. ttcn3.sh
runs the programs built by osmo-dev inside docker with the exact
configs that we use on jenkins.osmocom.org, but so far it builds the
component outside of docker. But building inside docker is necessary to
avoid incompatibilities between the host system and the docker
containers (e.g. different glibc).
Fix for Osmocom programs using system's shared libraries, instead of the
ones mounted into /usr/local.
For example, for osmo-bsc the libosmocore installed in the
osmo-bsc-master docker container would be used (installed via apt from
OBS nightly) instead of the version that osmo-dev built from source.
Add the image suffix to the marker in run_docker() which indicates if
the testsuite docker container was already built (with all its
dependencies), so the script doesn't assume that everything is already
built if using without IMAGE_SUFFIX first and then switching to
Add an usage example to README for IMAGE_SUFFIX=latest.
Speed up tests by not running a separate docker instances first that
lists installed packages.
Depends: docker-playground Iaafb81e9ee94850ae3b6318574ad5370d74a2838
Replace the old check with an exact check for the given rule. The old
check doesn't work on my system if docker is running and sets up other
Change -A to -I, so it is less likely to be affected by whatever other
rules may already be above in the chain.
Instead of trying to run everything outside of docker, just build the
docker containers and then mount /usr/local and osmo-ttcn3-hacks from
the host system into the docker containers. This way, we can just use
the same configs as the official jenkins jobs are using, while still
having a short test-cycle once the docker containers are built for the
first time. I've decided to implement this, because it was not feasible
to maintain the separate configs.
Depends: docker-playground I8d1f78aee926f8f6ec0b704e16639bc83f525816
move some freeswitch config files out of the freeswitch/ tree and symlink so
that they become configurable
Apply new PBX_* variable naming
fill_config: enable symlinks;
ignore template function 'strftime' because freeswith cfg uses that.