X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=resource%2Fcsdk%2Fsecurity%2Fprovisioning%2FSConscript;h=0e810fb6f3eb9ac5f9f179288acfc5bd80b5d2e5;hb=refs%2Ftags%2Ftizen_4.0.m2_release;hp=2958f9eaaa3f8b74a5a565cf3b6189ef8c01a3d2;hpb=d062e600c930e5722e8ff7bd25ae14fe48562883;p=platform%2Fupstream%2Fiotivity.git diff --git a/resource/csdk/security/provisioning/SConscript b/resource/csdk/security/provisioning/SConscript index 2958f9e..0e810fb 100644 --- a/resource/csdk/security/provisioning/SConscript +++ b/resource/csdk/security/provisioning/SConscript @@ -27,6 +27,14 @@ root_dir = './../../../../' ###################################################################### # Build flags ###################################################################### +with_upstream_libcoap = provisioning_env.get('WITH_UPSTREAM_LIBCOAP') +if with_upstream_libcoap == '1': + # For bring up purposes only, we manually copy the forked version to where the unforked version is downloaded. + provisioning_env.AppendUnique(CPPPATH = ['#extlibs/libcoap/libcoap/include']) +else: + # For bring up purposes only, the forked version will live here. + provisioning_env.AppendUnique(CPPPATH = ['../../connectivity/lib/libcoap-4.1.1/include']) + provisioning_env.AppendUnique(CPPPATH = [ '../../stack/include', '../../stack/include/internal', @@ -36,54 +44,43 @@ provisioning_env.AppendUnique(CPPPATH = [ '../../../c_common/oic_malloc/include', 'include', 'include/internal', + 'include/cloud', 'include/oxm', '../../resource/csdk/security/include', '../../../../extlibs/cjson/', - '../../../../extlibs/tinydtls/', + '../../../../extlibs/mbedtls/mbedtls/include', '../../connectivity/inc', '../../connectivity/inc/pkix', '../../connectivity/external/inc', '../../connectivity/common/inc', - '../../connectivity/lib/libcoap-4.1.1', '../../connectivity/api', '../include', '../include/internal', - '../../../../extlibs/tinydtls/ecc', - '../../../../extlibs/tinydtls/sha2', '../../../../extlibs/asn1cert', 'ck_manager/include' ]) -if target_os not in ['tizen', 'windows', 'msys_nt']: - provisioning_env.AppendUnique(CPPPATH = ['../../../../extlibs/sqlite3']) - provisioning_env.AppendUnique(CPPDEFINES= ['__WITH_DTLS__']) if 'g++' in provisioning_env.get('CXX'): provisioning_env.AppendUnique(CXXFLAGS = ['-std=c++0x']) provisioning_env.AppendUnique(LIBPATH = [provisioning_env.get('BUILD_DIR')]) -provisioning_env.PrependUnique(LIBS = ['oc', 'octbstack', 'oc_logger', 'connectivity_abstraction', 'coap', 'ocsrm']) +provisioning_env.PrependUnique(LIBS = ['octbstack', 'oc_logger', 'connectivity_abstraction', 'coap', 'ocsrm']) -provisioning_env.AppendUnique(LIBS = ['tinydtls']) +provisioning_env.AppendUnique(LIBS = ['mbedtls', 'mbedx509','mbedcrypto']) -if provisioning_env.get('DTLS_WITH_X509') == '1': - provisioning_env.AppendUnique(LIBS = ['CKManager', 'asn1']) -if provisioning_env.get('WITH_TCP') == True: - provisioning_env.AppendUnique(LIBS = ['mbedtls']) -if target_os not in ['msys_nt', 'windows', 'android']: +if target_os not in ['msys_nt', 'windows', 'android', 'ios']: provisioning_env.ParseConfig('pkg-config --libs glib-2.0') if target_os in ['windows', 'msys_nt']: - provisioning_env.AppendUnique(LIBS = ['ws2_32', 'advapi32', 'iphlpapi', 'timer']) - -if target_os in ['tizen']: - provisioning_env.ParseConfig('pkg-config --cflags --libs sqlite3') + provisioning_env.AppendUnique(LIBS = ['ws2_32', 'advapi32', 'iphlpapi']) if target_os in ['android']: provisioning_env.AppendUnique(CXXFLAGS = ['-frtti', '-fexceptions']) provisioning_env.AppendUnique(LIBS = ['gnustl_static']) + provisioning_env.AppendUnique(LINKFLAGS = ['-Wl,-soname,libocpmapi.so']) if target_os in ['darwin', 'ios']: provisioning_env.AppendUnique(CPPDEFINES = ['_DARWIN_C_SOURCE']) @@ -91,33 +88,56 @@ if target_os in ['darwin', 'ios']: if provisioning_env.get('LOGGING'): provisioning_env.AppendUnique(CPPDEFINES = ['TB_LOG']) +if provisioning_env.get('MULTIPLE_OWNER') == '1': + provisioning_env.AppendUnique(CPPDEFINES=['MULTIPLE_OWNER']) + ###################################################################### # Source files and Targets ###################################################################### provisioning_src = [ 'src/pmutility.c', 'src/credentialgenerator.c', + 'src/otmcontextlist.c', 'src/ownershiptransfermanager.c', 'src/secureresourceprovider.c', 'src/ocprovisioningmanager.c', 'src/oxmjustworks.c', - 'src/oxmrandompin.c' ] + 'src/oxmrandompin.c', + 'src/oxmmanufacturercert.c', + 'src/provisioningdatabasemanager.c' ] -if target_os not in ['tizen', 'windows', 'msys_nt']: +if provisioning_env.get('MULTIPLE_OWNER') == '1': + provisioning_src = provisioning_src + [ + 'src/multipleownershiptransfermanager.c', + 'src/oxmpreconfpin.c'] + +if provisioning_env.get('WITH_TCP') == True: + provisioning_env.AppendUnique(CPPDEFINES= ['__WITH_TLS__']) + provisioning_src = provisioning_src + [ + 'src/cloud/utils.c', + 'src/cloud/crl.c', + 'src/cloud/aclgroup.c', + 'src/cloud/aclinvite.c', + 'src/cloud/aclid.c', + 'src/cloud/csr.c'] + +if target_os in ['linux', 'tizen']: + provisioning_env.ParseConfig('pkg-config --cflags --libs sqlite3') +else: + provisioning_env.AppendUnique(CPPPATH = ['../../../../extlibs/sqlite3']) provisioning_src = provisioning_src + [root_dir+'/extlibs/sqlite3/sqlite3.c' ] -if target_os in ['windows', 'msys_nt']: +if target_os in ['windows', 'msys_nt', 'ios']: # octbstack.dll is exporting ocpmapi APIs on Windows - there is no ocpmapi.dll. provisioningserver = provisioning_env.StaticLibrary('ocpmapi', provisioning_src) else: - provisioningserver = provisioning_env.SharedLibrary('ocpmapi', provisioning_src) + static_provisioning_lib = provisioning_env.StaticLibrary('ocpmapi', provisioning_src) + shared_provisioning_lib = provisioning_env.SharedLibrary('ocpmapi', provisioning_src) + provisioningserver = Flatten([static_provisioning_lib, shared_provisioning_lib]) provisioning_env.InstallTarget(provisioningserver, 'ocpmapi') provisioning_env.UserInstallTargetLib(provisioningserver, 'ocpmapi') -if provisioning_env.get('DTLS_WITH_X509') == '1': - SConscript('ck_manager/SConscript') - if target_os in ['linux', 'msys_nt', 'windows', 'tizen']: SConscript('sample/SConscript')