[PATCH] libosmocore[master]: gsm0503.h: generate header automatically

Vadim Yanitskiy gerrit-no-reply at lists.osmocom.org
Mon Jan 16 13:13:47 UTC 2017


Hello Max, Harald Welte, Jenkins Builder,

I'd like you to reexamine a change.  Please visit

    https://gerrit.osmocom.org/1594

to look at the new patch set (#4).

gsm0503.h: generate header automatically

Since we have automatic header generation, implemented in the
utils/conv_gen.py, it's time to use this feature!

Change-Id: I21caa4e433b2cc1861611e35350a9671da444c2a
---
M .gitignore
M include/Makefile.am
D include/osmocom/gsm/gsm0503.h
M utils/conv_gen.py
4 files changed, 9 insertions(+), 175 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/94/1594/4

diff --git a/.gitignore b/.gitignore
index fb159c3..c1bde0f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -116,6 +116,7 @@
 src/gsm/gsm0503_conv.c
 include/osmocom/core/crc*gen.h
 include/osmocom/core/bit*gen.h
+include/osmocom/gsm/gsm0503.h
 
 # vi files
 *.sw?
diff --git a/include/Makefile.am b/include/Makefile.am
index 0a300a8..e40ef04 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -143,3 +143,10 @@
 osmocom/core/crc%gen.h: osmocom/core/crcXXgen.h.tpl
 	$(AM_V_GEN)$(MKDIR_P) $(dir $@)
 	$(AM_V_GEN)sed -e's/XX/$*/g' $< > $@
+
+osmocom/gsm/gsm0503.h:
+	$(AM_V_GEN)python2 $(top_srcdir)/utils/conv_gen.py \
+		--action gen_header --code-family gsm \
+		--target-path $(top_srcdir)/include/osmocom/gsm/
+
+CLEANFILES = osmocom/gsm/gsm0503.h
diff --git a/include/osmocom/gsm/gsm0503.h b/include/osmocom/gsm/gsm0503.h
deleted file mode 100644
index de28ad2..0000000
--- a/include/osmocom/gsm/gsm0503.h
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * gsm0503.h
- *
- * Copyright (C) 2016 sysmocom s.f.m.c. GmbH
- *
- * All Rights Reserved
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-#pragma once
-
-#include <stdint.h>
-
-#include <osmocom/core/conv.h>
-
-/*! \file gsm0503.h
- * Osmocom convolutional encoder/decoder for xCCH channels, see 3GPP TS 05.03
- */
-
-/*! \brief structure describing convolutional code xCCH
- *
- *  Non-recursive code, flushed, not punctured code.
- */
-extern const struct osmo_conv_code gsm0503_xcch;
-
-/*! \brief structure describing convolutional code RACH
- */
-extern const struct osmo_conv_code gsm0503_rach;
-
-/*! \brief structure describing convolutional code SCH
- */
-extern const struct osmo_conv_code gsm0503_sch;
-
-/*! \brief structures describing convolutional codes CS2/3
- */
-extern const struct osmo_conv_code gsm0503_cs2;
-extern const struct osmo_conv_code gsm0503_cs3;
-
-/*! \brief structure describing convolutional code TCH/FR
- */
-extern const struct osmo_conv_code gsm0503_tch_fr;
-
-/*! \brief structure describing convolutional code TCH/HR
- */
-extern const struct osmo_conv_code gsm0503_tch_hr;
-
-/*! \brief structure describing convolutional code TCH/AFS 12.2
- */
-extern const struct osmo_conv_code gsm0503_tch_afs_12_2;
-
-/*! \brief structure describing convolutional code TCH/AFS 10.2
- */
-extern const struct osmo_conv_code gsm0503_tch_afs_10_2;
-
-/*! \brief structure describing convolutional code TCH/AFS 7.95
- */
-extern const struct osmo_conv_code gsm0503_tch_afs_7_95;
-
-/*! \brief structure describing convolutional code TCH/AFS 7.4
- */
-extern const struct osmo_conv_code gsm0503_tch_afs_7_4;
-
-/*! \brief structure describing convolutional code TCH/AFS 6.7
- */
-extern const struct osmo_conv_code gsm0503_tch_afs_6_7;
-
-/*! \brief structure describing convolutional code TCH/AFS 5.9
- */
-extern const struct osmo_conv_code gsm0503_tch_afs_5_9;
-
-/*! \brief structure describing convolutional code TCH/AFS 5.15
- */
-extern const struct osmo_conv_code gsm0503_tch_afs_5_15;
-
-/*! \brief structure describing convolutional code TCH/AFS 4.75
- */
-extern const struct osmo_conv_code gsm0503_tch_afs_4_75;
-
-/*! \brief structure describing convolutional code TCH/AHS 7.95
- */
-extern const struct osmo_conv_code gsm0503_tch_ahs_7_95;
-
-/*! \brief structure describing convolutional code TCH/AHS 7.4
- */
-extern const struct osmo_conv_code gsm0503_tch_ahs_7_4;
-
-/*! \brief structure describing convolutional code TCH/AHS 6.7
- */
-extern const struct osmo_conv_code gsm0503_tch_ahs_6_7;
-
-/*! \brief structure describing convolutional code TCH/AHS 5.9
- */
-extern const struct osmo_conv_code gsm0503_tch_ahs_5_9;
-
-/*! \brief structure describing convolutional code TCH/AHS 5.15
- */
-extern const struct osmo_conv_code gsm0503_tch_ahs_5_15;
-
-/*! \brief structure describing convolutional code TCH/AHS 4.75
- */
-extern const struct osmo_conv_code gsm0503_tch_ahs_4_75;
-
-/*! \brief structure describing convolutional code EDGE MCS-1 DL HDR
- */
-extern const struct osmo_conv_code gsm0503_mcs1_dl_hdr;
-
-/*! \brief structure describing convolutional code EDGE MCS-1 UL HDR
- */
-extern const struct osmo_conv_code gsm0503_mcs1_ul_hdr;
-
-/*! \brief structure describing convolutional code EDGE MCS-1
- */
-extern const struct osmo_conv_code gsm0503_mcs1;
-
-/*! \brief structure describing convolutional code EDGE MCS-2
- */
-extern const struct osmo_conv_code gsm0503_mcs2;
-
-/*! \brief structure describing convolutional code EDGE MCS-3
- */
-extern const struct osmo_conv_code gsm0503_mcs3;
-
-/*! \brief structure describing convolutional code EDGE MCS-4
- */
-extern const struct osmo_conv_code gsm0503_mcs4;
-
-/*! \brief structure describing convolutional code EDGE MCS-5 DL HDR
- */
-extern const struct osmo_conv_code gsm0503_mcs5_dl_hdr;
-
-/*! \brief structure describing convolutional code EDGE MCS-5 UL HDR
- */
-extern const struct osmo_conv_code gsm0503_mcs5_ul_hdr;
-
-/*! \brief structure describing convolutional code EDGE MCS-5
- */
-extern const struct osmo_conv_code gsm0503_mcs5;
-
-/*! \brief structure describing convolutional code EDGE MCS-6
- */
-extern const struct osmo_conv_code gsm0503_mcs6;
-
-/*! \brief structure describing convolutional code EDGE MCS-7 DL HDR
- */
-extern const struct osmo_conv_code gsm0503_mcs7_dl_hdr;
-
-/*! \brief structure describing convolutional code EDGE MCS-7 UL HDR
- */
-extern const struct osmo_conv_code gsm0503_mcs7_ul_hdr;
-
-/*! \brief structure describing convolutional code EDGE MCS-7
- */
-extern const struct osmo_conv_code gsm0503_mcs7;
-
-/*! \brief structure describing convolutional code EDGE MCS-8
- */
-extern const struct osmo_conv_code gsm0503_mcs8;
-
-/*! \brief structure describing convolutional code EDGE MCS-9
- */
-extern const struct osmo_conv_code gsm0503_mcs9;
diff --git a/utils/conv_gen.py b/utils/conv_gen.py
index 196ef72..c7d1c47 100644
--- a/utils/conv_gen.py
+++ b/utils/conv_gen.py
@@ -396,7 +396,7 @@
 	print("\nAvailable actions:")
 	print("  gen_codes   - generate convolutional code definitions")
 	print("  gen_vectors - generate test vectors")
-	print("  gen_header - generate header file")
+	print("  gen_header  - generate header file")
 
 	print("\nAvailable code families:")
 	print("  gsm - GSM/GPRS/EDGE specific codes")

-- 
To view, visit https://gerrit.osmocom.org/1594
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I21caa4e433b2cc1861611e35350a9671da444c2a
Gerrit-PatchSet: 4
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Vadim Yanitskiy <axilirator at gmail.com>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Max <msuraev at sysmocom.de>


More information about the gerrit-log mailing list