0001 VIEWC(8)
0002 ========
0003 :doctype: manpage
0004
0005
0006 NAME
0007 ----
0008 viewc - View file compiler
0009
0010
0011 SYNOPSIS
0012 --------
0013 *viewc* ['OPTIONS'] viewfile1 viewfile2 ... viewfileN
0014
0015
0016 DESCRIPTION
0017 -----------
0018 *viewc* binary consume view files defined in format specified of *viewfile(5)*.
0019 The view file describes the C structure which can be mapped to *UBF* buffer. The
0020 view file contains also the length of the *STRING* and *CARRAY* fields. Program does
0021 following steps:
0022
0023 . Generates C header file with structures according to the view file
0024
0025 . Calculates machine dependent the C field offset in the memory, calculates field
0026 lengths
0027
0028 To perform offset and size calculation, viewc generates small C program which is
0029 compiled by 'buildclient(8)' Perl script. The generated temporary program is executed
0030 which updates the in-memory read view file. The view file is updated with platform
0031 specific data and the "object-file" is written to disk. The object file basically
0032 corresponds the same *viewfile(5)* format, except that additional meta data for
0033 each of the fields are encoded after the NULL column. Also some meta data are
0034 encoded in view file comments. The "object-file" can be used as original view file
0035 by viewc. In that case viewc will ignore the meta data and will produce new
0036 "object-file". Compiled view file gets extension '.V', the generated header file
0037 in C language mode, gets extension '.h'. If source view file passed in command
0038 line for compilation contains the extension, for output files it is stripped off
0039 and only base name is used for target output files.
0040
0041 *viewc* must have access to *cc* (C Compiler).
0042
0043 ENVIRONMENT
0044 -----------
0045 *CC*::
0046 Optional environment variable indicating which C compiler to use. If parameter is
0047 not set, the *cc* command is used.
0048
0049 *CFLAGS*::
0050 Optional C flags to be passed to C compiler during the *buildclient* execution.
0051
0052 OPTIONS
0053 -------
0054 [*-L* 'LD_LIBRARY_PATH']::
0055 Additional library path for dynamic libraries. This is needed during the compiled
0056 code execution, so that runtime can load dynamic libraries required by Enduro/X.
0057
0058 [*-b* 'BUILD_FLAGS']::
0059 Additional flags to be passed to 'cc' command line. This can be used to pass
0060 additional include path, library path or libraries it self.
0061
0062 [*-n*]::
0063 Do not process UBF mapping during compilation of the view file. This can be useful
0064 in cases if the environment is not configured during the build time and field
0065 definition files are not accessible at the time.
0066
0067 [*-d* 'OUTPUT_DIRECTOR']::
0068 Optional flag for changing output directory where object file is generated. If
0069 parameter is not set, current directory is used.
0070
0071 [*-C*]::
0072 Reserved for future use.
0073
0074 [*-m* 'LANGUAGE_MODE']::
0075 Language mode for header file generation. Currently defined value is 0 - C lang,
0076 which is default value of the parameter.
0077
0078 [*-h*]::
0079 Print usage.
0080
0081
0082 EXIT STATUS
0083 -----------
0084 *0*::
0085 Success
0086
0087 *1*::
0088 Failure
0089
0090
0091 EXAMPLE
0092 -------
0093 See *atmitest/test040_typedview* for sample usage.
0094
0095 BUGS
0096 ----
0097 Report bugs to support@mavimax.com
0098
0099
0100 SEE ALSO
0101 --------
0102 *viewfile(5)* *buildclient(8)*
0103
0104
0105 COPYING
0106 -------
0107 (C) Mavimax, Ltd
0108