How to build CmEmbedded from source

Directory source

|-- asn1

|-- base

|-- base_defs

|-- bci

|-- box

    |-- fileio

    |-- hid

     |-- android

         |-- linux                

         |-- qnx         

         |-- vxworks

         |-- windows                 

    |-- spi

         |-- linux

|-- cert

|-- cmact

 |-- adapter

         |-- file

         act_adapter_bindext.c

         act_adapter_dyndata.c

         act_adapter_licread.c

         act_adapter_licwrite.c

         act_adapter_util.c

         act_adapter_util.h

|-- cmact_lt

|-- cmake

|-- cmlan

|-- coreapi

|-- corecm

|-- crypto_algorithms

|-- file_handling

|-- pkcs7

|-- posix

|-- tools

|-- unittest

|-- wibucert

cm_config.h

cmact.cmake

CMakeLists.txt

CmEmbedded.def

CodeMeterCompact.h

CodeMeterEmbedded.h

CmEmbedded.def

w_version.h

 

cm_config.h

 

#ifndef W_CM_CONFIG_H

#define W_CM_CONFIG_H

 

/* Configure max number of internal handles */

#define HANDLE_STORE_SIZE 32

 

/* Configure max number of CM Container (CmDongle, CmAct, CmActLt) that can be managed by the library */

#define CM_CONTAINER_MAX 32

 

/* Configure general support for CodeMeter dongles */

#define ENABLE_DONGLE_SUPPORT ON

 

/* Configure support for CodeMeterAct */

#define ENABLE_CMACT ON

 

/* Configure support for CodeMeterAct UFC */

#define ENABLE_CMACT_LT ON

 

/* Configure support for CmLAN module */

#define ENABLE_CMLAN ON

 

/* Configure support for Runtime Bridge (depends on CmLAN module) */

#define ENABLE_CM_RUNTIME_BRIDGE ON

 

/* Enable or disable API functions       */

#define ENABLE_CM_GET_PUBLIC_KEY      ON

#define ENABLE_CM_CALCULATE_SIGNATURE ON

#define ENABLE_CM_VALIDATE_SIGNATURE  ON

#define ENABLE_CM_CHECK_SIGNATURE     ON

#define ENABLE_CM_GETLASTERRORTEXT2   ON

#define ENABLE_CM_CONVERT_STRING      ON

#define ENABLE_CM_CMCRYPT_ECIES       ON

 

/* Enable or disable legacy API functions       */

#define ENABLE_CM_ACCESS  ON

#define ENABLE_CM_CMCRYPT ON

 

#define ENABLE_CM_GETBOXCONTENTS    ON

#define ENABLE_CM_BOXENTRY          ON

#define ENABLE_CM_GETLASTERRORTEXT  ON

#define ENABLE_CM_GETVERSION        ON

#define ENABLE_CM_GETINFO_ENTRYINFO ON

 

#define ENABLE_CM_CORE_API_STUBS ON

 

#define ENABLE_CUSTOM_STRNSTR    ON

#define ENABLE_CUSTOM_GMTIME     ON

#define ENABLE_CUSTOM_TIME       OFF

#define ENABLE_CUSTOM_STRFTIME   OFF

#define ENABLE_CUSTOM_STRCASESTR ON

#define ENABLE_CUSTOM_STRCASECMP ON

 

#define ENABLE_CUSTOM_GETTIMEOFDAY ON

#define ENABLE_CUSTOM_USLEEP       ON

#define ENABLE_CUSTOM_RANDOM       ON

 

#define ENABLE_CUSTOM_OPEN    OFF

#define ENABLE_CUSTOM_CLOSE   OFF

#define ENABLE_CUSTOM_READ    OFF

#define ENABLE_CUSTOM_WRITE   OFF

#define ENABLE_CUSTOM_UNLINK  OFF

#define ENABLE_CUSTOM_DIRENT  OFF

#define ENABLE_CUSTOM_STAT    OFF

#define ENABLE_CUSTOM_SYSCONF ON

 

/* Configure License Cache feature */

#define ENABLE_LICENSE_CACHE ON

 

#define ENABLE_CMCORE_LOGGING OFF

 

#define CM_RUNTIME_MAJOR_VERS 6

#define CM_RUNTIME_MINOR_VERS 30

#define CM_RUNTIME_BUILD_NR   2262

 

#define ENABLE_LIB_CONSTR_DESTR ON

 

#define ON  1

#define OFF 0

 

/* CmDongle specific configuration options */

#if ENABLE_DONGLE_SUPPORT

 

#define ENABLE_HID_SUPPORT             ON

#define ENABLE_SPI_SUPPORT             ON

#define ENABLE_64k_CODEMTR_IO_SUPPORT  ON

 

/* Enable communication between CmEmbedded and a CmDongle */

#define ENABLE_ENCR_DONGLE_COMM        ON

 

#define ENABLE_BCI_LOGGING             OFF

#define BCI_LOG_BUF_SIZE               4096

#define BCI_LOG_BDT_TIME               ON

 

#if ENABLE_SPI_SUPPORT

#define ENABLE_SPI_LOGGING OFF

#define SPI_TIMEOUT_OFF OFF

#define SPI_MAX_TRANSFER_SIZE 4162

#endif

 

#define DEBUG_DUMP_TEMPLATES OFF

 

#endif /* ENABLE_DONGLE_SUPPORT */

 

/* CmAct and CmAct UFC specific configuration options */

#if ENABLE_CMACT || ENABLE_CMACT_LT

 

#define ENABLE_CMACT_CONVERT_WBC_TO_WBB ON

#define ENABLE_CMACT_ADAPTER_FILE       OFF

#define ENABLE_CMACT_ADAPTER_CUSTOM     ON

 

/* Adapter implementation for XMC 4xxx microcontrollers */

#define ENABLE_CMACT_ADAPTER_XMC_STATIC OFF

#define ENABLE_CMACT_ADAPTER_XMC        OFF

 

/* Load the adapter implementation from a shared library instead of using a compiled-in one: */

#define ENABLE_CMACT_ADAPTER_DYNAMIC    OFF

#define ENABLE_CMACT_PRELOADED_ADAPTER  OFF

 

#define CMACT_BINDING_EXTENSION_NAME    "FB13376PlugIn"

/* Maximum time difference (in sec) after which the timestamp is written into the dynamic data */

#define CMACT_SAVE_BOXTIME_THRESHOLD    300

 

#define USE_ADAPTER_TRACER              OFF

#endif /* ENABLE_CMACT || ENABLE_CMACT_LT */

 

/* CmLAN specific configuration options */

#if ENABLE_CMLAN

#define CMLAN_CONNECTION_POOL_MAX  16

#define CMLAN_TIMEOUT              10

#define CMLAN_ENABLE_LOGGING       OFF

#define CMLAN_SERVER_PORT          22350

#define CMLAN_LOG_BUF_SIZE         4096

#endif /* ENABLE_CMLAN */

 

#if ENABLE_CMCORE_LOGGING

#define CM_CORE_LOG_BUF_SIZE  4096

#define CM_CORE_LOG_MODE      0

#endif

 

/* Runtime Bridge specific configuration options */

#if ENABLE_CM_RUNTIME_BRIDGE

#define CM_RUNTIME_BRIDGE_PORT 22350

#endif

 

/* License Cache specific configuration options */

#if ENABLE_LICENSE_CACHE

#define ENABLE_SHARED_CM_LOCK 1

#endif

 

/* CodeMeter MicroEmbedded specific configuration options */

#if defined(ENABLE_MICRO_EMBEDDED)

#define ENABLE_WBC_SUPPORT OFF

#endif

 

#endif /* W_CM_CONFIG_H */