Skip to content
Success

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)
  12. start-testsuite: fix passing $TEST to ttcn3_start (details)
  13. README: use # and ## for headlines (details)
  14. start-testsuite: respect $TTCN3_DIR (if set) (details)
  15. Move f_{dec,enc}_mcc_mnc() API BSSMAP_Templates.ttcn -> GSM_Types.ttcn (details)
  16. Fix MNC decoding in f_dec_mcc_mnc() (details)
  17. hnbgw: Support configuring RAC and Cell ID on each hnb conn (details)
  18. hnbgw: Test paging with Page Area ID IE (details)
  19. README: explain how to run testsuites manually (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 modifiedsysinfo/regen_makefile.sh
The file was modifiedhss/regen_makefile.sh
The file was modifiedsimtrace/regen_makefile.sh
The file was modifiedmme/regen_makefile.sh
The file was removedregen-makefile.sh
The file was modifiedmsc/gen_links.sh
The file was modifiedcbc/gen_links.sh
The file was modifiedSCCP_Test/gen_links.sh
The file was modifiedsgsn/gen_links.sh
The file was modifiedipad/gen_links.sh
The file was modifiedmgw/gen_links.sh
The file was modifiedpcu/regen_makefile.sh
The file was modifiedsip/gen_links.sh
The file was modifiedhlr/gen_links.sh
The file was modifiedns/regen_makefile.sh
The file was modifiedMakefile
The file was modifiedbts/gen_links.sh
The file was modifiedselftest/regen_makefile.sh
The file was modifiedbsc-nat/gen_links.sh
The file was modifieddia2gsup/gen_links.sh
The file was modifiedfr-net/regen_makefile.sh
The file was added_buildsystem/gen_links.inc.sh
The file was modifiedlibrary/s1ap/regen_makefile.sh
The file was modifiedremsim/regen_makefile.sh
The file was modifiedsgsn/regen_makefile.sh
The file was modifiedcbc/regen_makefile.sh
The file was modifiedccid/regen_makefile.sh
The file was modifiedSCCP_Test/regen_makefile.sh
The file was modifiedggsn_tests/gen_links.sh
The file was modifiedepdg/gen_links.sh
The file was modifiedgbproxy/regen_makefile.sh
The file was modifiedipad/regen_makefile.sh
The file was modifiedpcrf/regen_makefile.sh
The file was modifiedbsc/regen_makefile.sh
The file was modifiedasterisk/regen_makefile.sh
The file was modifiedepdg/regen_makefile.sh
The file was removedrmlinks.sh
The file was modifiedlibrary/hnbap/regen_makefile.sh
The file was modifieds1gw/gen_links.sh
The file was modifieddia2gsup/regen_makefile.sh
The file was added_buildsystem/rmlinks.sh
The file was modifiedhnbgw/regen_makefile.sh
The file was modifiedpcap-client/gen_links.sh
The file was modifiedfr/regen_makefile.sh
The file was modifiedhss/gen_links.sh
The file was modifiedpgw/regen_makefile.sh
The file was removedgen_links.sh.inc
The file was added_buildsystem/regen-makefile.sh
The file was modifiedgbproxy/gen_links.sh
The file was modifiedhnodeb/gen_links.sh
The file was modifiedfr-net/gen_links.sh
The file was modifiedstp/gen_links.sh
The file was modifiedlibrary/rua/regen_makefile.sh
The file was modifiedbsc/gen_links.sh
The file was modifiedhlr/regen_makefile.sh
The file was modifiedupf/regen_makefile.sh
The file was modifiedupf/gen_links.sh
The file was modifiedpcap-client/regen_makefile.sh
The file was modifiedpgw/gen_links.sh
The file was modifiedmsc/regen_makefile.sh
The file was modifiedsmlc/gen_links.sh
The file was modifiedlibrary/sabp/regen_makefile.sh
The file was modifiedccid/gen_links.sh
The file was modifiedfr/gen_links.sh
The file was modifiedselftest/gen_links.sh
The file was modifiedns/gen_links.sh
The file was modifiedsimtrace/gen_links.sh
The file was modifiedbts/regen_makefile.sh
The file was modifiedsmlc/regen_makefile.sh
The file was modifiedhnodeb/regen_makefile.sh
The file was modifiedsip/regen_makefile.sh
The file was modifiedbsc-nat/regen_makefile.sh
The file was modifiedmgw/regen_makefile.sh
The file was modifiedpcu/gen_links.sh
The file was modifiedggsn_tests/regen_makefile.sh
The file was modifiedsccp/regen_makefile.sh
The file was modifiedlibrary/ranap/regen_makefile.sh
The file was modifiedeim/gen_links.sh
The file was modifiedhnbgw/gen_links.sh
The file was modifiedpcrf/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifiedasterisk/gen_links.sh
The file was modifiedmme/gen_links.sh
The file was modifiedremsim/gen_links.sh
The file was modifiedstp/regen_makefile.sh
The file was modifiedsccp/gen_links.sh
The file was modifiedlibrary/sbcap/regen_makefile.sh
The file was modifiedeim/regen_makefile.sh
The file was modifieds1gw/regen_makefile.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 modifiedsccp/regen_makefile.sh
The file was modifiedselftest/regen_makefile.sh
The file was modifiedstp/regen_makefile.sh
The file was modifiedpcrf/regen_makefile.sh
The file was modifiedpcu/regen_makefile.sh
The file was modifiedsgsn/regen_makefile.sh
The file was modifiedasterisk/regen_makefile.sh
The file was modifiedhss/regen_makefile.sh
The file was modifiedccid/regen_makefile.sh
The file was modifiedgbproxy/regen_makefile.sh
The file was modifiedSCCP_Test/regen_makefile.sh
The file was modifiedfr-net/regen_makefile.sh
The file was added_buildsystem/regen_makefile.inc.sh
The file was modifiedfr/regen_makefile.sh
The file was modifiedipad/regen_makefile.sh
The file was modifiedggsn_tests/regen_makefile.sh
The file was modifiedns/regen_makefile.sh
The file was modifiedmme/regen_makefile.sh
The file was modifieddia2gsup/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 modifiedremsim/regen_makefile.sh
The file was modifiedhnodeb/regen_makefile.sh
The file was modifiedbsc/regen_makefile.sh
The file was modifiedupf/regen_makefile.sh
The file was modifiedcbc/regen_makefile.sh
The file was modifiedpcap-client/regen_makefile.sh
The file was modifiedpgw/regen_makefile.sh
The file was modifiedsysinfo/regen_makefile.sh
The file was modifiedbsc-nat/regen_makefile.sh
The file was removed_buildsystem/regen-makefile.sh
The file was modifiedhlr/regen_makefile.sh
The file was modifiedhnbgw/regen_makefile.sh
The file was modifiedsimtrace/regen_makefile.sh
The file was modifiedsip/regen_makefile.sh
The file was modifiedepdg/regen_makefile.sh
The file was modifiedmgw/regen_makefile.sh
The file was modifiedmsc/regen_makefile.sh
The file was modifiedsmlc/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 modifiedpcap-client/gen_links.sh
The file was modifiedsmlc/gen_links.sh
The file was modifiedepdg/gen_links.sh
The file was modifiedsip/gen_links.sh
The file was modifiedhnodeb/gen_links.sh
The file was modifiedmgw/gen_links.sh
The file was modifiedbts/gen_links.sh
The file was modifiedpgw/gen_links.sh
The file was modifiedfr/gen_links.sh
The file was modifiedselftest/gen_links.sh
The file was modifiedmme/gen_links.sh
The file was modifiedcbc/gen_links.sh
The file was modifiedsimtrace/gen_links.sh
The file was modifiedbsc-nat/gen_links.sh
The file was modifiedfr-net/gen_links.sh
The file was modifiedpcrf/gen_links.sh
The file was modifiedstp/gen_links.sh
The file was modifiedpcu/gen_links.sh
The file was modifiedhss/gen_links.sh
The file was modifiedmsc/gen_links.sh
The file was modifiedipad/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifiedhnbgw/gen_links.sh
The file was modifiedremsim/gen_links.sh
The file was modifiedsgsn/gen_links.sh
The file was modifiedbsc/gen_links.sh
The file was modifiedsccp/gen_links.sh
The file was modifieds1gw/gen_links.sh
The file was modifiedgbproxy/gen_links.sh
The file was modifiedggsn_tests/gen_links.sh
The file was modifiedupf/gen_links.sh
The file was modifiedns/gen_links.sh
The file was modifiedccid/gen_links.sh
The file was modifiedeim/gen_links.sh
The file was modifiedhlr/gen_links.sh
The file was modified_buildsystem/gen_links.inc.sh
The file was modifiedSCCP_Test/gen_links.sh
The file was modifieddia2gsup/gen_links.sh
The file was modifiedasterisk/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 modifiedstp/gen_links.sh
The file was modifiedhss/gen_links.sh
The file was modifiedsgsn/gen_links.sh
The file was modifiedremsim/gen_links.sh
The file was modifiedepdg/gen_links.sh
The file was modifiedsmlc/gen_links.sh
The file was modifiedhnodeb/gen_links.sh
The file was modifieddia2gsup/gen_links.sh
The file was modifiedmgw/gen_links.sh
The file was modifiedfr/gen_links.sh
The file was modifiedpcrf/gen_links.sh
The file was modifiedhlr/gen_links.sh
The file was modifiedmsc/gen_links.sh
The file was modifiedpcu/gen_links.sh
The file was modifiedpcap-client/gen_links.sh
The file was modifiedccid/gen_links.sh
The file was modifiedsimtrace/gen_links.sh
The file was modifiedbsc/gen_links.sh
The file was modified_buildsystem/gen_links.inc.sh
The file was modifiedbsc-nat/gen_links.sh
The file was modifiedfr-net/gen_links.sh
The file was modifiedns/gen_links.sh
The file was modifiedasterisk/gen_links.sh
The file was modifieds1gw/gen_links.sh
The file was modifiedsip/gen_links.sh
The file was modifiedeim/gen_links.sh
The file was modifiedsccp/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifiedcbc/gen_links.sh
The file was modifiedpgw/gen_links.sh
The file was modifiedSCCP_Test/gen_links.sh
The file was modifiedhnbgw/gen_links.sh
The file was modifiedgbproxy/gen_links.sh
The file was modifiedselftest/gen_links.sh
The file was modifiedipad/gen_links.sh
The file was modifiedbts/gen_links.sh
The file was modifiedmme/gen_links.sh
The file was modifiedupf/gen_links.sh
The file was modifiedggsn_tests/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 modified_buildsystem/regen_makefile.inc.sh
The file was removed_buildsystem/rmlinks.sh
The file was modifiedstart-testsuite.sh
The file was modifiedMakefile
The file was modified_testenv/testenv/testsuite.py
The file was modified_buildsystem/gen_links.inc.sh
The file was modified.gitignore
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/testsuite.py
The file was modified_testenv/testenv/testenv_cfg.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/__init__.py
The file was modified_testenv/testenv/testsuite.py
Commit 4c55a1b18164f07dbe333be504206042e421aa04 by Oliver Smith
start-testsuite: fix passing $TEST to ttcn3_start

Fix that testenv / ttcn3_start kept running after the testsuites were
already done. This was caused by passing an empty string to ttcn3_start
as test argument, which causes it to still use the config file, but run
in a single test mode:

https://gitlab.eclipse.org/eclipse/titan/titan.core/-/blob/9.0.0/mctr2/mctr/ttcn3_start#L307-319

After the first test ran, ttcn3_start sends "emtc" to the MTC, which
replies with "MTC cannot be terminated." as it is still in
MC_EXECUTING_TESTCASE instead of MC_READY:

https://gitlab.eclipse.org/eclipse/titan/titan.core/-/blob/9.0.0/mctr2/cli/Cli.cc#L695-700

The ttcn3_start script then waits forever for the "MTC terminated.."
string, which doesn't come since "emtc" isn't sent to the MTC a second
time:

https://gitlab.eclipse.org/eclipse/titan/titan.core/-/blob/9.0.0/mctr2/mctr/ttcn3_start#L353-356

Fixes: 050ba48c ("buildsystem: build out-of-tree")
Change-Id: Ic50de8350e20d101417c5689058b64fe6547126f
The file was modifiedstart-testsuite.sh
Commit 09b0b21580c1895371c02a5fcb4aa670da4ec19f by Oliver Smith
README: use # and ## for headlines

Prepare README to be able to use deeper headline levels.

Change-Id: Ice2baaf3ffdd1c11238c7791ab39925bed10818d
The file was modifiedREADME.md
Commit 94c920d1e478bdf6b2f39eb0082306e366fb9586 by Vadim Yanitskiy
start-testsuite: respect $TTCN3_DIR (if set)

Change-Id: I5c1cdc6ffbe50cf7ee48a160d2f406e428326d14
The file was modifiedstart-testsuite.sh
Commit 76fb46829295808f2a587d20baa599dd57cf02f9 by Pau Espin Pedrol
Move f_{dec,enc}_mcc_mnc() API BSSMAP_Templates.ttcn -> GSM_Types.ttcn

The GsmMcc and GsmMnc types used in the function are defined in
GSM_Types.ttcn, which is also incldued by BSSMAP_Templates.
Hence, move the function there so that it can be used in other
testsuites including more generic GSM_Types.ttcn but not
BSSMAP_Templates.ttcn.

Change-Id: Iafafd2957a11d34a9402d252a169fec40593f483
The file was modifiedlibrary/GSM_Types.ttcn
The file was modifiedcbc/CBC_Tests.ttcn
The file was modifiedlibrary/BSSMAP_Templates.ttcn
Commit a5725515b5f2f8da89d6daa42b2239d81143cc7b by Pau Espin Pedrol
Fix MNC decoding in f_dec_mcc_mnc()

This API is so far only used in MSC_Tests.ttcn f_sgs_perform_lu(), but
will be used in more testsuites in follow-up commits.

Change-Id: I9db37d0dc9abbbefd57af4f0e2b91bf8a918d4e9
The file was modifiedlibrary/GSM_Types.ttcn
Commit 886dc9713aacb1e7e480e310b8382edf606e715a by Pau Espin Pedrol
hnbgw: Support configuring RAC and Cell ID on each hnb conn

Change-Id: I490e770be5e390a1f55e1dff1cf0c42e917a8d33
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit a96d791ed80f1746dbe778f3b7cec484309e9db7 by Pau Espin Pedrol
hnbgw: Test paging with Page Area ID IE

Change-Id: I5a053bcf1f8470038e95d03889da077f8f967bfa
The file was modifiedhnbgw/expected-results.xml
The file was modifiedlibrary/ranap/RANAP_Templates.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit e217e408c4e236b87915f5c8f9bc4d39ce064983 by Oliver Smith
README: explain how to run testsuites manually

As the testsuites are now in the _build directory, running them might
not be as obvious. Add an example to the README. While at it, explain a
bit more what the testenv script does and where one can read more about
it.

Change-Id: I1ee9319ada889a8dd43cfb32776dc1a8ae12d607
The file was modifiedREADME.md