Skip to content
Unstable

Changes

Summary

  1. buildsystem: move related scripts to subdir (details)
  2. buildsystem/regen_makefile: change to inc script (details)
  3. buildsystem: remove ttcn3_compiler workaround (details)
  4. buildsystem/regen_makefile: modernize (details)
  5. buildsystem/gen_links: move set -e to users (details)
  6. buildsystem/gen_links: rename ignore_pp_results (details)
  7. buildsystem: build out-of-tree (details)
  8. buildsystem: make output more readable (details)
  9. testenv: remove copy_ttcn3_hacks_dir (details)
  10. testenv: refactor run --until-nok code (details)
  11. testenv: run: add --bisect argument (details)
Commit 2ba10d9ea1ccb97843d2b416ffb2c9ca5a05f45e by Oliver Smith
buildsystem: move related scripts to subdir

Clean up the main directory by moving all buildsystem related scripts
into a _buildsystem subdirectory.

Rename gen_links.sh.inc to gen_links.inc.sh while at it, so vim does
syntax highlighting as shell script and not bitbake.

The rest of these patches in this series lead up to changing the
buildsystem to build out-of-tree (so we don't clutter the source dirs
with symlinks and build artifacts) and making the build output more
readable.

Related: OS#6599
Change-Id: Ieeefdfd74b2698794fb12fec4ed32565dc9f36a6
The file was modifiedpgw/gen_links.sh
The file was modifiedupf/regen_makefile.sh
The file was removedrmlinks.sh
The file was modifiedggsn_tests/gen_links.sh
The file was added_buildsystem/rmlinks.sh
The file was modifiedfr/gen_links.sh
The file was modifiedhnbgw/regen_makefile.sh
The file was modifieds1gw/regen_makefile.sh
The file was modifiedpcu/regen_makefile.sh
The file was modifiedselftest/regen_makefile.sh
The file was modifiedepdg/regen_makefile.sh
The file was modifiedstp/gen_links.sh
The file was modifiedselftest/gen_links.sh
The file was modifiedsmlc/gen_links.sh
The file was modifiedpcu/gen_links.sh
The file was modifiedccid/gen_links.sh
The file was modifieds1gw/gen_links.sh
The file was modifiedSCCP_Test/regen_makefile.sh
The file was modifiedhnodeb/gen_links.sh
The file was modifiedlibrary/hnbap/regen_makefile.sh
The file was modifiedepdg/gen_links.sh
The file was modifiedfr/regen_makefile.sh
The file was modifiedgbproxy/gen_links.sh
The file was modifiedmgw/gen_links.sh
The file was modifiedhnbgw/gen_links.sh
The file was modifiedfr-net/gen_links.sh
The file was modifiedMakefile
The file was modifiedbsc-nat/gen_links.sh
The file was added_buildsystem/gen_links.inc.sh
The file was modifiedsimtrace/gen_links.sh
The file was modifiedasterisk/gen_links.sh
The file was modifiedcbc/regen_makefile.sh
The file was removedregen-makefile.sh
The file was removedgen_links.sh.inc
The file was modifiedsgsn/regen_makefile.sh
The file was modifiedeim/regen_makefile.sh
The file was modifiedggsn_tests/regen_makefile.sh
The file was modifiedcbc/gen_links.sh
The file was modifiedsccp/gen_links.sh
The file was modifiedmme/gen_links.sh
The file was modifiedeim/gen_links.sh
The file was modifiedns/regen_makefile.sh
The file was modifiedsip/regen_makefile.sh
The file was modifiedbts/gen_links.sh
The file was modifiedhss/regen_makefile.sh
The file was modifiedipad/gen_links.sh
The file was added_buildsystem/regen-makefile.sh
The file was modifiedhnodeb/regen_makefile.sh
The file was modifiedbts/regen_makefile.sh
The file was modifiedpcap-client/regen_makefile.sh
The file was modifiedmgw/regen_makefile.sh
The file was modifieddia2gsup/gen_links.sh
The file was modifiedfr-net/regen_makefile.sh
The file was modifiedsgsn/gen_links.sh
The file was modifiedpcap-client/gen_links.sh
The file was modifiedsysinfo/regen_makefile.sh
The file was modifiedasterisk/regen_makefile.sh
The file was modifiedhlr/regen_makefile.sh
The file was modifiedsccp/regen_makefile.sh
The file was modifiedlibrary/sabp/regen_makefile.sh
The file was modifiedmsc/gen_links.sh
The file was modifiedstp/regen_makefile.sh
The file was modifiedupf/gen_links.sh
The file was modifiedremsim/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifiedmsc/regen_makefile.sh
The file was modifiedsip/gen_links.sh
The file was modifiedsimtrace/regen_makefile.sh
The file was modifiedpcrf/gen_links.sh
The file was modifiedsmlc/regen_makefile.sh
The file was modifiedmme/regen_makefile.sh
The file was modifiedccid/regen_makefile.sh
The file was modifiedlibrary/s1ap/regen_makefile.sh
The file was modifiedlibrary/sbcap/regen_makefile.sh
The file was modifiedlibrary/rua/regen_makefile.sh
The file was modifieddia2gsup/regen_makefile.sh
The file was modifiedremsim/regen_makefile.sh
The file was modifiedhss/gen_links.sh
The file was modifiedipad/regen_makefile.sh
The file was modifiedSCCP_Test/gen_links.sh
The file was modifiedgbproxy/regen_makefile.sh
The file was modifiedpcrf/regen_makefile.sh
The file was modifiedns/gen_links.sh
The file was modifiedpgw/regen_makefile.sh
The file was modifiedbsc-nat/regen_makefile.sh
The file was modifiedbsc/regen_makefile.sh
The file was modifiedlibrary/ranap/regen_makefile.sh
The file was modifiedhlr/gen_links.sh
The file was modifiedbsc/gen_links.sh
Commit 85b38bbc8512df88fb246a5f6855a460ef3a4961 by Oliver Smith
buildsystem/regen_makefile: change to inc script

Make the regen_makefile script more consistent with gen_links.inc.sh by
also turning it into an include script. By doing this all previously
declared variables are available in regen_makefile, which means export
and passing as arguments is not needed anymore, making the resulting
users simpler.

Use #!/bin/sh -e while at it and remove empty CPPFLAGS_TTCN3 vars.

Change-Id: I10a41671e857024be6a5e8577c2aaca83228793e
The file was modifiedhlr/regen_makefile.sh
The file was modifiedhnbgw/regen_makefile.sh
The file was modifiedsip/regen_makefile.sh
The file was modifiedbts/regen_makefile.sh
The file was modifiedeim/regen_makefile.sh
The file was modifieds1gw/regen_makefile.sh
The file was modifiedggsn_tests/regen_makefile.sh
The file was modifiedccid/regen_makefile.sh
The file was modifiedupf/regen_makefile.sh
The file was modifiedgbproxy/regen_makefile.sh
The file was modifiedselftest/regen_makefile.sh
The file was modifiedbsc/regen_makefile.sh
The file was modifiedpcrf/regen_makefile.sh
The file was modifiedsccp/regen_makefile.sh
The file was modifiedbsc-nat/regen_makefile.sh
The file was modifiedpcap-client/regen_makefile.sh
The file was modifiedmsc/regen_makefile.sh
The file was modifiedhss/regen_makefile.sh
The file was modifiedmme/regen_makefile.sh
The file was modifiedmgw/regen_makefile.sh
The file was removed_buildsystem/regen-makefile.sh
The file was modifiedfr-net/regen_makefile.sh
The file was modifieddia2gsup/regen_makefile.sh
The file was modifiedpgw/regen_makefile.sh
The file was modifiedsysinfo/regen_makefile.sh
The file was added_buildsystem/regen_makefile.inc.sh
The file was modifiedepdg/regen_makefile.sh
The file was modifiedhnodeb/regen_makefile.sh
The file was modifiedipad/regen_makefile.sh
The file was modifiedasterisk/regen_makefile.sh
The file was modifiedsmlc/regen_makefile.sh
The file was modifiedSCCP_Test/regen_makefile.sh
The file was modifiedfr/regen_makefile.sh
The file was modifiedcbc/regen_makefile.sh
The file was modifiedsgsn/regen_makefile.sh
The file was modifiedremsim/regen_makefile.sh
The file was modifiedstp/regen_makefile.sh
The file was modifiedns/regen_makefile.sh
The file was modifiedsimtrace/regen_makefile.sh
The file was modifiedpcu/regen_makefile.sh
Commit c444e78561adfeb0935ad37432f6c826f6e5c0c7 by Oliver Smith
buildsystem: remove ttcn3_compiler workaround

The related debian bug has been fixed in 2018, so remove the workaround.
I've also verified that the binary is called "compiler" in Arch Linux
(as some developers are on Arch).

Change-Id: Ia50aa3caffeaa85eefba10695096aa23dcb69c93
The file was modified_buildsystem/regen_makefile.inc.sh
Commit c643bd3f72a0e4f1f60ef05341fec2c0944d67bd by Oliver Smith
buildsystem/regen_makefile: modernize

Apply various small changes to make this file more readable.

Change-Id: I5a7dcd6171c6a370928ebedafc5ed318384dd8dd
The file was modified_buildsystem/regen_makefile.inc.sh
Commit 9a4a7d0b174af1a83d5dbd9417ba897febe79746 by Oliver Smith
buildsystem/gen_links: move set -e to users

Make it more obvious that the various gen_links.sh scripts are running
with "set -e" by adding it to the #! line instead of setting it through
an included file.

Change-Id: I4caf445bef716161526a213d6a06ecc9d30f78cb
The file was modifiedmsc/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifieddia2gsup/gen_links.sh
The file was modifiedpcrf/gen_links.sh
The file was modifiedpcu/gen_links.sh
The file was modifiedns/gen_links.sh
The file was modifiedgbproxy/gen_links.sh
The file was modifiedhnodeb/gen_links.sh
The file was modifiedhss/gen_links.sh
The file was modifiedepdg/gen_links.sh
The file was modifiedselftest/gen_links.sh
The file was modifiedSCCP_Test/gen_links.sh
The file was modifiedbsc/gen_links.sh
The file was modifiedhlr/gen_links.sh
The file was modifiedccid/gen_links.sh
The file was modifiedsgsn/gen_links.sh
The file was modifiedsimtrace/gen_links.sh
The file was modifieds1gw/gen_links.sh
The file was modifiedsccp/gen_links.sh
The file was modifiedmgw/gen_links.sh
The file was modifiedeim/gen_links.sh
The file was modifiedfr/gen_links.sh
The file was modifiedhnbgw/gen_links.sh
The file was modifiedsmlc/gen_links.sh
The file was modifiedggsn_tests/gen_links.sh
The file was modifiedbts/gen_links.sh
The file was modifiedcbc/gen_links.sh
The file was modifiedfr-net/gen_links.sh
The file was modifiedmme/gen_links.sh
The file was modifiedsip/gen_links.sh
The file was modifiedpcap-client/gen_links.sh
The file was modifiedstp/gen_links.sh
The file was modifiedremsim/gen_links.sh
The file was modifiedasterisk/gen_links.sh
The file was modified_buildsystem/gen_links.inc.sh
The file was modifiedupf/gen_links.sh
The file was modifiedipad/gen_links.sh
The file was modifiedpgw/gen_links.sh
The file was modifiedbsc-nat/gen_links.sh
Commit 66c566812c000979a9e7e16eac7aece1a3c48124 by Oliver Smith
buildsystem/gen_links: rename ignore_pp_results

Rename ignore_pp_results to gen_links_finish in preparation for the next
patch where the function will be used for generating more symlinks
instead of writing to a gitignore file. This is a separate commit to
make the next one more readable.

Change-Id: I6a1a79f1a3ff18fe4b51e4c72c3e9b56c571935e
The file was modifiedepdg/gen_links.sh
The file was modifiedsimtrace/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifiedggsn_tests/gen_links.sh
The file was modifiedmme/gen_links.sh
The file was modifiedsgsn/gen_links.sh
The file was modifiedipad/gen_links.sh
The file was modifiedasterisk/gen_links.sh
The file was modifiedbts/gen_links.sh
The file was modifiedupf/gen_links.sh
The file was modifiedhss/gen_links.sh
The file was modifiedpgw/gen_links.sh
The file was modifiedccid/gen_links.sh
The file was modifiedfr/gen_links.sh
The file was modifiedcbc/gen_links.sh
The file was modifiedbsc-nat/gen_links.sh
The file was modifiedsmlc/gen_links.sh
The file was modifiedgbproxy/gen_links.sh
The file was modifiedhnbgw/gen_links.sh
The file was modifiedsccp/gen_links.sh
The file was modifieds1gw/gen_links.sh
The file was modified_buildsystem/gen_links.inc.sh
The file was modifiedstp/gen_links.sh
The file was modifiedhlr/gen_links.sh
The file was modifiedremsim/gen_links.sh
The file was modifieddia2gsup/gen_links.sh
The file was modifiedpcu/gen_links.sh
The file was modifiedSCCP_Test/gen_links.sh
The file was modifiedhnodeb/gen_links.sh
The file was modifiedmsc/gen_links.sh
The file was modifiedbsc/gen_links.sh
The file was modifiedeim/gen_links.sh
The file was modifiedpcrf/gen_links.sh
The file was modifiedselftest/gen_links.sh
The file was modifiedfr-net/gen_links.sh
The file was modifiedmgw/gen_links.sh
The file was modifiedsip/gen_links.sh
The file was modifiedns/gen_links.sh
The file was modifiedpcap-client/gen_links.sh
Commit 050ba48cc6270344af406188b39ca3e249924daf by Oliver Smith
buildsystem: build out-of-tree

The buildsystem used to create symlinks to dependency source files in
the testsuite directories, and then building inside that source
directory. This lead to many unrelated files being in the source
directory.

Change the logic to create symlinks to all sources in a separate
$BUILDDIR instead (default: _build) and do the build there.

Advantages:
* Source directories are not cluttered with other files anymore.
* Clean up logic becomes much simpler and faster (rm -rf _build instead
  of generating a Makefile and running "make clean" in every testsuite
  directory).
* No need to generate gitignore files on the fly anymore.
* Using a separate $BUILDDIR is now possible, this will be used by
  testenv in a follow-up patch when running with podman, to make sure
  that build artifacts from podman and not using podman are not mixed as
  they are incompatible.

Related: OS#6599
Change-Id: If18aaf2a2a0d55bb617e5cb1b73f6ee4b1952494
The file was modifiedstart-testsuite.sh
The file was removed_buildsystem/rmlinks.sh
The file was modified_testenv/testenv/testsuite.py
The file was modified.gitignore
The file was modifiedMakefile
The file was modified_buildsystem/regen_makefile.inc.sh
The file was modified_buildsystem/gen_links.inc.sh
Commit fb850543a1508156bdaccfd9a81804c9a412effe by Oliver Smith
buildsystem: make output more readable

Generate short and readable compile messages:

  CC       IPL4asp_PT.o
  CCLD     TCCInterface.so
  CCLD     TELNETasp_PT.so
  CCLD     MGCP_Test

Instead of the very verbose messages we would get otherwise. Especially
the linking message clutters a whole page of terminal output without
this path:

   if ... g++ ... $ALL_OBJ_FILES; then : ; else ... $ALL_OBJ_FILES; fi

Change-Id: I780106e64089dc24a7ba724f6a94e67417d49c30
The file was modified_buildsystem/regen_makefile.inc.sh
Commit 92b378412d503581db16b88b957a36c56a4eac53 by Oliver Smith
testenv: remove copy_ttcn3_hacks_dir

When running with podman, set a separate builddir to avoid conflicts
with build objects generated from running "make" outside of podman. As
the buildsystem supports setting a differerent builddir directly now,
remove the copy_ttcn3_hacks_dir logic that was used to emulate this
feature.

Change-Id: I9cae0c4f8c34bb6876ef51048ef19b35a2e369a9
The file was modified_testenv/testenv/requirements.py
The file was modified_testenv/testenv/testenv_cfg.py
The file was modified_testenv/testenv/testsuite.py
Commit 16f8d193fe7350ab4ffd3de09e970d1fd2f95ab9 by Oliver Smith
testenv: refactor run --until-nok code

Refactor the code in preparation for using the code that checks if the
testsuite was successful with a new --bisect arg in the next patch.

Change-Id: I3a8fc83c6833f0d2a8be9c0d7ddaea0546859988
The file was modified_testenv/testenv.py
The file was modified_testenv/testenv/testsuite.py
Commit 0eb0e4a3b766f8d1cc6b83b8aa719067a47921ff by Oliver Smith
testenv: run: add --bisect argument

Add an argument that lets testenv.py exit with != 0 when at least one
test has failed, so it can be used with "git bisect".

Change-Id: I941064c1c704560e0f7351c82e810481cd72b6da
The file was modified_testenv/testenv/testsuite.py
The file was modified_testenv/testenv/__init__.py