Proposal: Code + directory restructuring

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Harald Welte laforge at gnumonks.org
Thu Mar 3 22:59:11 UTC 2011


Hi all!

I've been thinking a bit about what kind of code (and directory / library)
structure we should be having in order to build the various executables
from the functional blocks that we have.

The idea is to prepare for the upcoming / intended new projects while
reusing the functional blocks / modules whenver possible.

The graphical structure is at:
http://openbsc.osmocom.org/trac/wiki/NewCodeStructure

And the first steps in reorganizing directories and makefiles is
available at
http://cgit.osmocom.org/cgit/openbsc/log/?h=laforge/new_structure

The new directory structure now has

* directories that contain each one library
	openbsc/src/{abis,bsc,common,gb,mgcp,msc,trau}
* directories that contain code for our daemons (BSC, etc.)
	openbsc/src/{gprs,osmo-bsc,osmo-bsc_mgcp,osmo-bsc_nat,osmo-nitb}
* directories that contain code for utilities
	openbsc/src/{ipaccess,utils}

There are still some additional/bogus dependencies between the libraries,
but I want to fix that and make sure the TRAU directory really only contains
code related to the TRAU and RTP frame processing.  Some of the generic OML/RSL
parsing code should be moved from 'bsc' into the 'abis' directory, etc.

What do you generally think of this?  If there is no big complaint, I
intend to import Andreas' osmocom-bb.git/jolly/bts code into the openbsc
repository (openbsc/src/bts) and start to merge the RTP code into src/trau
and the generic bits of RSL+OML into src/abis.

Some random ideas:
* prefix the library directories with 'lib', i.e. 'libbsc', 'libmsc' to
  clearly state this is not a program but just library code
* rename the openbsc repository to smething more generic. but what?
  I don't think we want to create multiple repositories but keep
  everything in a single repo - at least until one of the sub-libraries
  is self-contained enough.
* should we keep bsc_hack instead of osmo-nitb? (network-in-the-box)?
  or should it rather be called osmo-niab (network-in-a-box)?

Regards,
	Harald
-- 
- Harald Welte <laforge at gnumonks.org>           http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
                                                  (ETSI EN 300 175-7 Ch. A6)




More information about the OpenBSC mailing list