summaryrefslogtreecommitdiffstats
path: root/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* libosmocore libusb integrationHarald Welte2019-12-161-2/+3
| | | | | | | | | | | | | | Osmocom applications typically use libosmocore select.[ch] event loop code as their main event dispatch mechanism. When they want to deal with libusb in a non-blocking/asynchronous way, they need to integrate libusb into that select(). The new libosmousb is doing exactly that: Providing a shared utility library for Osmocom programs that wish to use libusb. This is useful for example in simtrace2 host utilitie as well as osmo-e1d. Change-Id: I656a1a38cbb5b1f3a9145d2869d3b4d0adefcae3 Closes: OS#4299
* Add code coverage supportVasil Velichkov2019-11-301-0/+5
| | | | | | | | | | | | | | | | | | | | | The coverage report shows what code is covered by tests and what is not and the ratio could be tracked over time. These reports will allow us to identify code that is not being tested and improve the test suites. To enable the reports configure with --enable-code-coverage and execute "make check-code-coverage". The HTML report will be generated in a subdirectory with name libosmocore-$(PACKAGE_VERSION)-coverage/index.html The report is generated using gcov, lcov and lcov_cobertura tools and the OSMO_AC_CODE_COVERAGE macro. The osmo_ax_code_coverage.m4 is a copy of ax_code_coverage.m4 taken from autoconf-archive v2018.03.13. It was copied to avoid the additional external dependency and renamed to avoid overwriting it in case autoconf-archive is already installed as we are going to install it in $(datadir)/aclocal in order to be reused in other osmocom's projects. Closes: OS#1987 Change-Id: I6f4ffb91bd7f3dd070aa09dd16d5ad1faf130a4c
* Makefile.am: don't delete example.xml, vtydoc.xsdOliver Smith2019-06-281-2/+4
| | | | | | | | | Do not remove the entire doc/vty/ dir during the doxygen generation, because it contains versioned files. Fixes: 2fe50ac9511469a587426b80501b2b5da770e3a0 ("doxygen: enable cross referencing everywhere") Related: OS#3986 Change-Id: I884398c5e834ae2fac0af8c9b52d65bb3ceacb2d
* doxygen: allow manual 'make apidoc' even if --disable-doxygenNeels Hofmeyr2019-02-041-8/+17
| | | | | | | | | | | | Even if ./configure --disable-doxygen was passed and doxygen builds are by default skipped, provide a manual 'make apidoc' target that nevertheless generates the API doc on the premise that a 'doxygen' program is available. Especially since we do a two-pass doxygen build whenever any source file changes, my guess is --disable-doxygen could be a common choice. It is then cumbersome to have to ./configure just to get one doxygen build started. Change-Id: If8d8dfb8365c8f28612b8ce2b8ddf88f74df9a90
* doxygen: add source files as dependenciesNeels Hofmeyr2019-02-041-7/+25
| | | | | | | | | | | | | | | | | So far, when modifying a source file, the doxygen docs were not regenerated automatically. It required a manual 'rm -rf docs/core' or similar. Make it rebuild automatically: Add each library's source files to the list of dependencies for the first-pass doxygen build. Attention, since all libraries depend on the .map files of each other library, and each library depends on its own source files, that means that a single touch on one .c file anywhere will result in rebuilding the entire doxygen docs. It is correct to do so, since any file may introduce \ref targets used anywhere else. If you don't want that, --disable-doxygen. Change-Id: I15ea96be6e7abe91264b91f0b06963a0f2d63b0b
* doxygen: enable cross referencing everywhereNeels Hofmeyr2019-02-041-21/+123
| | | | | | | | | | | | | | | | | | | | | | | | doxygen \ref cross-references to groups or files from other libraries only work when the .map file was present when the HTML was generated, and when that .map file was listed in TAGFILES in the Doxyfile. - Makefile.am: introduce a two-pass build for doxygen API docs. - First build pass makes sure the .tag files are present. - Second build pass picks up all the references, hence generates hyperlinks properly. - Add all libraries to TAGFILES of all other libraries, so we can from now on freely criss-cross reference from everywhere to everywhere. - Add all libraries' tag files as dependencies for all others. Example: in upcoming tdef.h, I would like to cross reference to tdef_vty.h, and vice versa, even though they are in libosmocore and libosmovty, respectively. This is now possible. We may still need to fix some problems with naming collisions, see for example stats.h, which exists twice with identical doxygen handle (different source dirs seems to not suffice for doxygen). Change-Id: Ib03d0b70d536c8f1386def666c89106a840f7363
* Revert "osmo-config-merge: Add manual page"Harald Welte2018-09-291-1/+1
| | | | | | | | | | | | | | | | | | This reverts commit 6dd00d876e2b947e070f776f90fbb8305a237d21. Unfortunately, it seems older a2x versions don't support "-D" for manpage generation: All the osmocom master builds started to fail with: make[2]: Entering directory '/build/deps/libosmocore/man' a2x --doctype manpage --format manpage -D . osmo-config-merge.adoc a2x: WARNING: --destination-dir option is only applicable to HTML based outputs a2x: ERROR: "xmllint" --nonet --noout --valid "/build/deps/libosmocore/man/osmo-config-merge.xml" returned non-zero exit status 127 Makefile:545: recipe for target 'osmo-config-merge.8' failed Change-Id: I0f45362d3e978c328d962a5c0d883eade27b875c
* osmo-config-merge: Add manual pageDaniel Willmann2018-09-281-1/+1
| | | | Change-Id: Ifaa5afe28779a805764caf76a89efb0a3169942e
* ctrl: Add doxygen API documentation; generate html from itHarald Welte2018-05-261-2/+8
| | | | | Closes: OS#3293 Change-Id: I8dc2f24d4bf557ff7bb0f2f46881f9f8d9d7f86f
* build: Ensure all .pc files are installedMartin Hauke2018-02-141-1/+1
| | | | Change-Id: I824e63087021adfda81bd0f867a3fdb5e9efcf7a
* Fixup severe build performance issuesHarald Welte2017-10-041-1/+3
| | | | | | | | | | | | | | | | | | | | Make variable substitution calling bumpversion and other commands introduce by osmo-release.mk has severely slowed down builds. Inside the makefile we could use $(eval FOO:=$(shell...)) constructs to have variable substitution only happen once the 'release' target is executed. However, 'ifeq' and friends don't work with such late constructs. Let's shift all release action into a helper shell script that is called from the Makefile instead. This way we get the best of both worlds: No performance impact during normal builds, and the convenience of 'make release'. Modified-by: Max <msuraev@sysmocom.de> Related: OS#2524 Change-Id: I98b3b5fe3db39953cea969a9dfbb75889df2e1ea
* Add release target to MakefileMax2017-08-081-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add simple helper target to automate basic release steps: * version bump * prepare release commit * git commit, tag and sign For library projects: * update debian/changelog from TODO-RELEASE * cleanup TODO-RELEASE For non-library projects: * update debian/changelog from git log Note: it requires bumpversion package to be installed, debian/control is adjusted accordingly. The helper itself is installed to facilitate reuse by other libraries. N. B: you still have to manually adjust LIBVERSION in previous commit - see TODO-RELEASE header for details. Use it as follows: make REL=minor release The REL parameter defines which component of the version [1] to bump and can be any of { major, minor, patch }. [1] http://semver.org/ Change-Id: I790ceb958195b9f6cbabfe8c977dc30e2bd7414b Related: OS#1861
* doxygen: add missing gb API doc generationNeels Hofmeyr2017-06-231-3/+11
| | | | | | | Files in include/osmocom/gprs/ and src/gb/ are not included in any doxygen generated API docs. Add Doxyfile.gb.in and adjust configure.ac and Makefile.am. Change-Id: Ieb64f497f55368e396872083237c9ff28da2dd93
* add libpseudotalloc as super-simplistic talloc replacementHarald Welte2017-05-171-1/+1
| | | | | | | | | | | In tightly embedded builds (--enable-embedded), we want the ability to replace talloc with a very simple heap allocator to avoid the complexity of talloc without modifying all our code that assumes talloc. This will break the hierarchical notion of the allocator, but libosmo{core,gsm,coding,codec} don't rely on that anyway. Change-Id: Ie341034076f242a813f081919dd09d845775ad35
* Add a README file for some background information about this repoHarald Welte2017-03-161-1/+1
| | | | | | | Let's add some general information about this repository, links to redmine, gerrit, the mailing list, etc. Change-Id: If034c6f551ff9bfaff0b8368fd0963f3147155b9
* add osmo-auc-gen_testNeels Hofmeyr2017-03-151-1/+1
| | | | | | | | | | | | | | | | | | Add test for osmo-auc-gen invocations to ensure stability across upcoming SQN increment scheme changes. The test comprises of a shell script that invokes the osmo-auc-gen binary with various milenage parameters, of which the stdout/stderr are verified. More osmo-auc-gen invocations could be added, but my main focus is on the SEQ changes. Instead of manually testing that it still works for each SQN patch, I want this test to do it for me. To make sure that osmo-auc-gen is build before the tests are launched, place 'utils' before 'tests' in the root Makefile.am. Related: OS#1968 Change-Id: Ib4af34201cd2e7d76037bcd31dd89ef18c1a9aec
* libosmocoding: migrate transcoding routines from OsmoBTSVadim Yanitskiy2017-03-071-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | There are some projects, such as GR-GSM and OsmocomBB, which would benefit from using one shared implementation of GSM 05.03 code. So, this commit introduces a new sub-library called libosmocoding, which (for now) provides GSM, GPRS and EDGE transcoding routines, migrated from OsmoBTS. The original GSM 05.03 code from OsmoBTS was relicensed under GPLv2-or-later with permission of copyright holders (Andreas Eversberg, Alexander Chemeris and Tom Tsou). The following data types are currently supported: - xCCH - PDTCH (CS 1-4 and MCS 1-9) - TCH/FR - TCH/HR - TCH/AFS - RCH/AHS - RACH - SCH Change-Id: I0c3256b87686d878e4e716d12393cad5924fdfa1
* OAP:remove design doc. osmocom-authn-protocol.txtikostov2017-02-151-1/+1
| | | | | | | | | | | Osmocom Authentication Protocol design document is removed from libosmocore project as this information has been included in the User Manual. It is present in SGSN User Manual. relates to OS#1874 Change-Id: I2d4dc608622a7484e67b15f930efc76e28285045
* import oap message parsing / encoding from openbsc.git; AGPL->GPLHarald Welte2016-12-111-1/+1
| | | | | | | | | | | | | | | | | | | In the process, also: * Change the license from AGPLv3 to GPLv2-or-later; * correct spelling of 'sysmocom' to lowercase; * add '2016' to the copyright; * rename to osmo_*; * add API docs; * add logging category DLOAP: define id and add to internal_cat; * redirect all oap.c logging to DLOAP. A unit test will follow in a subsequent patch, since it needs a minor tweak for decoding of boolean values. The related openbsc change-id is I2f06aaa6eb54eafa860cfed8e72e41d82ff1c4cf. Tweaked-by: Neels Hofmeyr Change-Id: If5099e60681a215e798b6675f21813f26769c253
* doxygen: Remove the tag file on uninstall as wellHolger Hans Peter Freyther2016-04-241-1/+1
| | | | | | | | | | | Hopefully last patch: ERROR: files left in build directory after distclean: ./doc/libosmocore.tag ./doc/libosmovty.tag ./doc/libosmogsm.tag ./doc/libosmocodec.tag Makefile:800: recipe for target 'distcleancheck' failed
* doxygen: Next try to fix the uninstall handlingHolger Hans Peter Freyther2016-04-241-1/+1
| | | | Use /* to remove the files
* doxygen: Try to uninstall the search files as wellHolger Hans Peter Freyther2016-04-241-1/+1
| | | | | | | | | | | Try to fix this by putting the search directory first as I don't know how to pass -r to the RM command. rm -f doc/{core,gsm,vty,codec}/{html,latex}/* doc/html.tar doc/{core,gsm,vty,codec}/doxygen_sqlite3.db rm: cannot remove ‘doc/core/html/search’: Is a directory rm: cannot remove ‘doc/gsm/html/search’: Is a directory rm: cannot remove ‘doc/vty/html/search’: Is a directory rm: cannot remove ‘doc/codec/html/search’: Is a directory
* remove doxygen_sqlite3.db during 'make clean'Harald Welte2014-10-261-1/+1
|
* initial checkin of 'libosmosim'Harald Welte2014-10-261-1/+2
|
* build: remove unused all_includes and use AM_CPPFLAGSJan Engelhardt2014-10-031-1/+0
| | | | | Preprocessor flags are best placed in AM_CPPFLAGS. Remove use of the unused all_includes variable, which is never set.
* libctrl: autotools build system integrationHarald Welte2014-08-211-2/+2
| | | | Now we actually build the recently-imported libctrl
* build: Add .version to EXTRA_DISTSylvain Munaut2014-06-151-1/+1
| | | | | | | | | This is required to make distcheck work and apparently that's the "good way" to do it. See http://comments.gmane.org/gmane.comp.lib.gnulib.bugs/27780 Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* Makefile.am: Use AM_CPPFLAGSAlexander Huemer2013-06-121-1/+1
| | | | Since automake 1.13 INCLUDES is depricates and causes a warning
* vty: Add xsd and a command that can generate the documentation.Holger Hans Peter Freyther2012-07-251-2/+1
| | | | | | | | When building the doxygen documentation do not remove the other VTY documentation files in the doc/vty folder. Create a command that can be installed to dump all nodes and commands as XML on the given VTY. Create a schema for the XML file and a XSL-T script that can merge the generated file with additional information.
* build: use default htmldir directory.Diego Elio Pettenò2012-06-301-7/+4
| | | | Signed-off-by: Diego Elio Pettenò <flameeyes@flameeyes.eu>
* build: avoid multi-level recursion for src/ directory.Diego Elio Pettenò2012-06-301-1/+1
| | | | Signed-off-by: Diego Elio Pettenò <flameeyes@flameeyes.eu>
* build: avoid duplication of automake options, add no-dist-gzip.Diego Elio Pettenò2012-06-301-1/+0
| | | | | | | There's little to no point to build the gzip version of the tarball when we're building the bzip2 version. Signed-off-by: Diego Elio Pettenò <flameeyes@flameeyes.eu>
* libosmogb: move files to proper location and fix buildHarald Welte2012-06-171-1/+2
|
* build: Remove docdir, don't comment itSylvain Munaut2011-09-021-1/+0
| | | | | | | The revision control is there to show the history, no point in leaving commented out bits Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* Adapted configure options to autoconf default behaviourjob2011-09-021-1/+1
|
* Make sure 'make distclean' works for doxygenHarald Welte2011-08-201-0/+3
|
* consistent Doxyfile namingHarald Welte2011-08-201-3/+3
|
* update makefile.am to support out-of-tree buildsHarald Welte2011-08-201-5/+5
| | | | | | Conflicts: Makefile.am
* doxygen automake integration: make sure the 'doc' directory existsHarald Welte2011-08-171-1/+5
|
* doxygen: fix correct use of doc/core subdirectoryHarald Welte2011-08-171-1/+1
|
* Integrate doxygen documentation building into autoconf/automake processHarald Welte2011-08-171-0/+38
|
* add new 'osmo-arfcn' program to compute frequency based on arfcnHarald Welte2011-08-021-1/+1
| | | | The freq -> arfcn side still needs to be implemented.
* misc: Put git-version-gen into the tarballHolger Hans Peter Freyther2011-07-171-0/+2
| | | | | autoreconf does not work on released tarballs due the missing git-version-gen. Add it.
* This patch moves the GSM-specific functions to the new libraryPablo Neira Ayuso2011-03-231-1/+1
| | | | | | | | | | libosmogsm which is provided by libosmocore. I have also moved generate_backtrace() to backtrace.c instead of gsm_utils.c, otherwise the timer and msgfile tests depend on libosmogsm. Signed-off-by: Pablo Neira Ayuso <pablo@gnumonks.org>
* codec: Add the missing bits for include to install and pkgconfig to workSylvain Munaut2010-10-241-1/+1
| | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* Add pkgconfig for libosmovtyHarald Welte2010-05-251-1/+1
|
* add git-version-gen magic to automatically generate package versionHarald Welte2010-03-231-0/+7
|
* add missing automake / autoconf filesHarald Welte2010-02-201-0/+7