diff --git a/CMake/Modules/FindNF_CoreCLR.cmake b/CMake/Modules/FindNF_CoreCLR.cmake index 225aa05638..c8bd812494 100644 --- a/CMake/Modules/FindNF_CoreCLR.cmake +++ b/CMake/Modules/FindNF_CoreCLR.cmake @@ -80,6 +80,7 @@ set(NF_CoreCLR_SRCS corlib_native_System_Collections_Stack.cpp corlib_native_System_Console.cpp corlib_native_System_Convert.cpp + corlib_native_System_DateTime.cpp corlib_native_System_Delegate.cpp corlib_native_System_Diagnostics_Debugger.cpp corlib_native_System_Double.cpp @@ -87,6 +88,7 @@ set(NF_CoreCLR_SRCS corlib_native_System_Exception.cpp corlib_native_System_GC.cpp corlib_native_System_Globalization_CultureInfo.cpp + corlib_native_System_Globalization_DateTimeFormat.cpp corlib_native_System_Guid.cpp corlib_native_System_MarshalByRefObject.cpp corlib_native_System_Math.cpp @@ -131,7 +133,7 @@ set(NF_CoreCLR_SRCS nf_rt_native_nanoFramework_Runtime_Hardware_SystemInfo.cpp nf_rt_native_nanoFramework_Runtime_Native_Debug.cpp nf_rt_native_nanoFramework_Runtime_Native_ExecutionConstraint.cpp - + # Core stubs Hardware_stub.cpp Heap_Persistence_stub.cpp diff --git a/CMake/Modules/FindSystem.DateTime.cmake b/CMake/Modules/FindSystem.DateTime.cmake deleted file mode 100644 index 1388cf6f4f..0000000000 --- a/CMake/Modules/FindSystem.DateTime.cmake +++ /dev/null @@ -1,46 +0,0 @@ -# -# Copyright (c) 2017 The nanoFramework project contributors -# See LICENSE file in the project root for full license information. -# - - -# set include directories -# CoreCLR -list(APPEND System.DateTime_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/src/CLR/System.DateTime") -# native code directory -list(APPEND System.DateTime_INCLUDE_DIRS "${BASE_PATH_FOR_CLASS_LIBRARIES_MODULES}/System.DateTime") - -# source files -set(System.DateTime_SRCS - - # System.DateTime - nf_dt_native.cpp - nf_dt_native_System_DateTime.cpp - nf_dt_native_System_Globalization_DateTimeFormat.cpp - nf_dt_native_nanoFramework_DateTime_RTC_stubs.cpp - - # native part of System.DateTime - nf_dt_native_nanoFramework_DateTime_RTC.cpp -) - -foreach(SRC_FILE ${System.DateTime_SRCS}) - set(System.DateTime_SRC_FILE SRC_FILE-NOTFOUND) - find_file(System.DateTime_SRC_FILE ${SRC_FILE} - PATHS - - # System.DateTime - "${PROJECT_SOURCE_DIR}/src/CLR/System.DateTime" - - # native part of System.DateTime - "${BASE_PATH_FOR_CLASS_LIBRARIES_MODULES}/System.DateTime" - - CMAKE_FIND_ROOT_PATH_BOTH - ) - # message("${SRC_FILE} >> ${System.DateTime_SRC_FILE}") # debug helper - list(APPEND System.DateTime_SOURCES ${System.DateTime_SRC_FILE}) -endforeach() - - -include(FindPackageHandleStandardArgs) - -FIND_PACKAGE_HANDLE_STANDARD_ARGS(System.DateTime DEFAULT_MSG System.DateTime_INCLUDE_DIRS System.DateTime_SOURCES) diff --git a/CMake/Modules/NF_API_Namespaces.cmake b/CMake/Modules/NF_API_Namespaces.cmake index 96be97eec7..9cb67fbed3 100644 --- a/CMake/Modules/NF_API_Namespaces.cmake +++ b/CMake/Modules/NF_API_Namespaces.cmake @@ -17,9 +17,6 @@ option(API_Windows.Devices.Pwm "option for Windows.Devices.Pwm API") option(API_Windows.Devices.Adc "option for Windows.Devices.Adc API") option(API_nanoFramework.Runtime.Events "option for nanoFramework.Runtime.Events API") -# options for base class library flavours -option(API_System.DateTime "option for System.DateTime API") - ################################################################# # macro to perform individual settings to add an API to the build @@ -60,19 +57,14 @@ endmacro() ############################################################################################ macro(ParseApiOptions) - - # System.DateTime - if(API_System.DateTime) - ##### API name here (doted name) - PerformSettingsForApiEntry("System.DateTime") - endif() - + # Windows.Devices.Gpio if(API_Windows.Devices.Gpio) ##### API name here (doted name) PerformSettingsForApiEntry("Windows.Devices.Gpio") endif() + # Windows.Devices.Spi if(API_Windows.Devices.Spi) ##### API name here (doted name) diff --git a/CMakeLists.txt b/CMakeLists.txt index e97b46cfde..77418de204 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -357,12 +357,6 @@ include(NF_API_Namespaces) # and/or manage other APIs that are required -if(API_System.DateTime) - # this API requires RTC - set(NF_FEATURE_RTC ON CACHE INTERNAL "enable NF_FEATURE_RTC from System.DateTime") -endif() - - if(API_Windows.Devices.Gpio) set(HAL_USE_GPIO_OPTION TRUE CACHE INTERNAL "HAL GPIO for Windows.Devices.Gpio") diff --git a/appveyor.yml b/appveyor.yml index f41b083750..8d9d4f058f 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -40,20 +40,20 @@ matrix: - BOARD_NAME: 'ST_STM32F4_DISCOVERY' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' - BOARD_NAME: 'ST_STM32F429I_DISCOVERY' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' - BOARD_NAME: 'ST_NUCLEO64_F091RC' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F0xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=OFF -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F0xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=OFF' - BOARD_NAME: 'ST_NUCLEO144_F746ZG' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' - BOARD_NAME: 'MBN_QUAIL' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' NEEDS_DFU: 'True' - BOARD_NAME: 'ST_STM32F769I_DISCOVERY' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' - BOARD_NAME: 'NETDUINO3_WIFI' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' NEEDS_DFU: 'True' matrix: @@ -186,20 +186,20 @@ matrix: - BOARD_NAME: 'ST_STM32F4_DISCOVERY' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' - BOARD_NAME: 'ST_STM32F429I_DISCOVERY' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' - BOARD_NAME: 'ST_NUCLEO64_F091RC' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F0xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=OFF -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F0xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=OFF' - BOARD_NAME: 'ST_NUCLEO144_F746ZG' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' - BOARD_NAME: 'MBN_QUAIL' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' NEEDS_DFU: 'True' - BOARD_NAME: 'ST_STM32F769I_DISCOVERY' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' - BOARD_NAME: 'NETDUINO3_WIFI' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_Windows.Devices.I2c=ON' NEEDS_DFU: 'True' - BOARD_NAME: 'NANOCLR_WINDOWS' @@ -372,20 +372,20 @@ matrix: - BOARD_NAME: 'ST_STM32F4_DISCOVERY' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON' - BOARD_NAME: 'ST_STM32F429I_DISCOVERY' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON' - BOARD_NAME: 'ST_NUCLEO64_F091RC' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F0xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F0xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON' - BOARD_NAME: 'ST_NUCLEO144_F746ZG' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=OFF -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=OFF' - BOARD_NAME: 'MBN_QUAIL' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_Windows.Devices.Spi=ON' NEEDS_DFU: 'True' - BOARD_NAME: 'ST_STM32F769I_DISCOVERY' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F7xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=ON -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON' - BOARD_NAME: 'NETDUINO3_WIFI' - BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DRTOS=CHIBIOS -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON -DAPI_System.DateTime=ON' + BUILD_OPTIONS: '-DTARGET_SERIES=STM32F4xx -DUSE_FPU=TRUE -DNF_FEATURE_DEBUGGER=TRUE -DSWO_OUTPUT=OFF -DNF_FEATURE_RTC=ON -DAPI_Windows.Devices.Gpio=ON' NEEDS_DFU: 'True' matrix: diff --git a/cmake-variants.TEMPLATE.json b/cmake-variants.TEMPLATE.json index d6a062b2c4..7591fbcbfe 100644 --- a/cmake-variants.TEMPLATE.json +++ b/cmake-variants.TEMPLATE.json @@ -48,7 +48,6 @@ "NF_FEATURE_USE_APPDOMAINS" : "OFF-default-ON-to-enable-support-for-Application-Domains", "NF_FEATURE_USE_FILESYSTEM" : "OFF-default-ON-to-enable-support", "NF_FEATURE_USE_NETWORKING" : "OFF-default-ON-to-enable-support", - "API_System.DateTime" : "OFF-default-ON-to-add-this-API", "API_Windows.Devices.Gpio" : "OFF-default-ON-to-add-this-API", "API_Windows.Devices.Spi" : "OFF-default-ON-to-add-this-API", "API_Windows.Devices.I2c" : "OFF-default-ON-to-add-this-API", @@ -80,7 +79,6 @@ "NF_FEATURE_USE_APPDOMAINS" : "OFF-default-ON-to-enable-support-for-Application-Domains", "NF_FEATURE_USE_FILESYSTEM" : "OFF-default-ON-to-enable-support", "NF_FEATURE_USE_NETWORKING" : "OFF-default-ON-to-enable-support", - "API_System.DateTime" : "OFF-default-ON-to-add-this-API", "API_Windows.Devices.Gpio" : "OFF-default-ON-to-add-this-API", "API_Windows.Devices.Spi" : "OFF-default-ON-to-add-this-API", "API_Windows.Devices.I2c" : "OFF-default-ON-to-add-this-API", diff --git a/src/CLR/CorLib/CorLib.vcxproj b/src/CLR/CorLib/CorLib.vcxproj index 5ef6101a18..e119672fff 100644 --- a/src/CLR/CorLib/CorLib.vcxproj +++ b/src/CLR/CorLib/CorLib.vcxproj @@ -35,6 +35,7 @@ + @@ -42,6 +43,7 @@ + diff --git a/src/CLR/CorLib/CorLib.vcxproj.filters b/src/CLR/CorLib/CorLib.vcxproj.filters index b4f9a5d935..632e4c6512 100644 --- a/src/CLR/CorLib/CorLib.vcxproj.filters +++ b/src/CLR/CorLib/CorLib.vcxproj.filters @@ -35,6 +35,9 @@ Source Files + + Source Files + Source Files @@ -83,6 +86,9 @@ Source Files + + Source Files + Source Files diff --git a/src/CLR/CorLib/corlib_native.cpp b/src/CLR/CorLib/corlib_native.cpp index 8c04438beb..2f9859f310 100644 --- a/src/CLR/CorLib/corlib_native.cpp +++ b/src/CLR/CorLib/corlib_native.cpp @@ -294,6 +294,53 @@ static const CLR_RT_MethodHandler method_lookup[] = NULL, NULL, Library_corlib_native_System_Convert::FromBase64CharArray___STATIC__SZARRAY_U1__SZARRAY_CHAR__I4, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + Library_corlib_native_System_DateTime::_ctor___VOID__I4__I4__I4__I4__I4__I4__I4, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + Library_corlib_native_System_DateTime::get_Day___I4, + Library_corlib_native_System_DateTime::get_DayOfWeek___SystemDayOfWeek, + Library_corlib_native_System_DateTime::get_DayOfYear___I4, + Library_corlib_native_System_DateTime::get_Hour___I4, + NULL, + Library_corlib_native_System_DateTime::get_Millisecond___I4, + Library_corlib_native_System_DateTime::get_Minute___I4, + Library_corlib_native_System_DateTime::get_Month___I4, + Library_corlib_native_System_DateTime::get_Second___I4, + NULL, + NULL, + Library_corlib_native_System_DateTime::get_Year___I4, + NULL, + NULL, + NULL, + NULL, + Library_corlib_native_System_DateTime::DaysInMonth___STATIC__I4__I4__I4, + NULL, + Library_corlib_native_System_DateTime::get_UtcNow___STATIC__SystemDateTime, + Library_corlib_native_System_DateTime::get_Today___STATIC__SystemDateTime, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, Library_corlib_native_System_Diagnostics_Debugger::get_IsAttached___STATIC__BOOLEAN, Library_corlib_native_System_Diagnostics_Debugger::Break___STATIC__VOID, NULL, @@ -317,8 +364,38 @@ static const CLR_RT_MethodHandler method_lookup[] = NULL, NULL, NULL, + NULL, Library_corlib_native_System_Globalization_CultureInfo::get_CurrentUICultureInternal___STATIC__SystemGlobalizationCultureInfo, Library_corlib_native_System_Globalization_CultureInfo::set_CurrentUICultureInternal___STATIC__VOID__SystemGlobalizationCultureInfo, + Library_corlib_native_System_Globalization_DateTimeFormat::FormatDigits___STATIC__STRING__I4__I4, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, NULL, NULL, NULL, @@ -823,6 +900,7 @@ static const CLR_RT_MethodHandler method_lookup[] = const CLR_RT_NativeAssemblyData g_CLR_AssemblyNative_mscorlib = { "mscorlib", - 0x3B1E14F1, + 0x7D73728E, method_lookup }; + diff --git a/src/CLR/CorLib/corlib_native.h b/src/CLR/CorLib/corlib_native.h index 929cd1e0a4..4df4cd3f7a 100644 --- a/src/CLR/CorLib/corlib_native.h +++ b/src/CLR/CorLib/corlib_native.h @@ -326,6 +326,37 @@ struct Library_corlib_native_System_Convert }; +struct Library_corlib_native_System_DateTime +{ + static const int FIELD_STATIC__MinValue = 3; + static const int FIELD_STATIC__MaxValue = 4; + + static const int FIELD___ticks = 1; + + NANOCLR_NATIVE_DECLARE(_ctor___VOID__I4__I4__I4__I4__I4__I4__I4); + NANOCLR_NATIVE_DECLARE(get_Day___I4); + NANOCLR_NATIVE_DECLARE(get_DayOfWeek___SystemDayOfWeek); + NANOCLR_NATIVE_DECLARE(get_DayOfYear___I4); + NANOCLR_NATIVE_DECLARE(get_Hour___I4); + NANOCLR_NATIVE_DECLARE(get_Millisecond___I4); + NANOCLR_NATIVE_DECLARE(get_Minute___I4); + NANOCLR_NATIVE_DECLARE(get_Month___I4); + NANOCLR_NATIVE_DECLARE(get_Second___I4); + NANOCLR_NATIVE_DECLARE(get_Year___I4); + NANOCLR_NATIVE_DECLARE(DaysInMonth___STATIC__I4__I4__I4); + NANOCLR_NATIVE_DECLARE(get_UtcNow___STATIC__SystemDateTime); + NANOCLR_NATIVE_DECLARE(get_Today___STATIC__SystemDateTime); + + //--// + + static CLR_INT64* NewObject ( CLR_RT_StackFrame& stack ); + static CLR_INT64* GetValuePtr( CLR_RT_StackFrame& stack ); + static CLR_INT64* GetValuePtr( CLR_RT_HeapBlock& ref ); + + static void Expand ( CLR_RT_StackFrame& stack, SYSTEMTIME& st ); + static void Compress( CLR_RT_StackFrame& stack, const SYSTEMTIME& st ); +}; + struct Library_corlib_native_System_Diagnostics_Debugger { NANOCLR_NATIVE_DECLARE(get_IsAttached___STATIC__BOOLEAN); @@ -383,6 +414,26 @@ struct Library_corlib_native_System_Globalization_CultureInfo }; +struct Library_corlib_native_System_Globalization_DateTimeFormat +{ + NANOCLR_NATIVE_DECLARE(FormatDigits___STATIC__STRING__I4__I4); + + //--// + +}; + +struct Library_corlib_native_System_Globalization_DateTimeFormatInfo +{ + static const int FIELD___generalShortTimePattern = 1; + static const int FIELD___generalLongTimePattern = 2; + static const int FIELD___fullDateTimePattern = 3; + static const int FIELD__CultureInfo = 4; + + + //--// + +}; + struct Library_corlib_native_System_Globalization_NumberFormatInfo { static const int FIELD___numberGroupSizes = 1; diff --git a/src/CLR/System.DateTime/nf_dt_native_System_DateTime.cpp b/src/CLR/CorLib/corlib_native_System_DateTime.cpp similarity index 76% rename from src/CLR/System.DateTime/nf_dt_native_System_DateTime.cpp rename to src/CLR/CorLib/corlib_native_System_DateTime.cpp index 73e0c2ad3e..4aa8aca021 100644 --- a/src/CLR/System.DateTime/nf_dt_native_System_DateTime.cpp +++ b/src/CLR/CorLib/corlib_native_System_DateTime.cpp @@ -3,18 +3,13 @@ // Portions Copyright (c) Microsoft Corporation. All rights reserved. // See LICENSE file in the project root for full license information. // -#include "nf_dt_native.h" - -///////////////////////////////////////////////////////////////////////////// -// the stubs for this class are generated by nanoFramework.System.DateTime // -///////////////////////////////////////////////////////////////////////////// - +#include "CorLib.h" CLR_INT64 s_UTCMask = ULONGLONGCONSTANT(0x8000000000000000); CLR_INT64 s_TickMask = ULONGLONGCONSTANT(0x7FFFFFFFFFFFFFFF); -HRESULT Library_nf_dt_native_System_DateTime::_ctor___VOID__I4__I4__I4__I4__I4__I4__I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::_ctor___VOID__I4__I4__I4__I4__I4__I4__I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -47,7 +42,7 @@ HRESULT Library_nf_dt_native_System_DateTime::_ctor___VOID__I4__I4__I4__I4__I4__ NANOCLR_NOCLEANUP(); } -HRESULT Library_nf_dt_native_System_DateTime::get_Day___I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_Day___I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -59,7 +54,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_Day___I4( CLR_RT_StackFrame& s NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::get_DayOfWeek___SystemDayOfWeek( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_DayOfWeek___SystemDayOfWeek( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -71,7 +66,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_DayOfWeek___SystemDayOfWeek( C NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::get_DayOfYear___I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_DayOfYear___I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -88,7 +83,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_DayOfYear___I4( CLR_RT_StackFr NANOCLR_NOCLEANUP(); } -HRESULT Library_nf_dt_native_System_DateTime::get_Hour___I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_Hour___I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -100,7 +95,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_Hour___I4( CLR_RT_StackFrame& NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::get_Millisecond___I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_Millisecond___I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -112,7 +107,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_Millisecond___I4( CLR_RT_Stack NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::get_Minute___I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_Minute___I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -124,7 +119,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_Minute___I4( CLR_RT_StackFrame NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::get_Month___I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_Month___I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -136,7 +131,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_Month___I4( CLR_RT_StackFrame& NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::get_Second___I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_Second___I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -148,7 +143,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_Second___I4( CLR_RT_StackFrame NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::get_Year___I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_Year___I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -160,7 +155,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_Year___I4( CLR_RT_StackFrame& NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::DaysInMonth___STATIC__I4__I4__I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::DaysInMonth___STATIC__I4__I4__I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -176,7 +171,7 @@ HRESULT Library_nf_dt_native_System_DateTime::DaysInMonth___STATIC__I4__I4__I4( NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::get_UtcNow___STATIC__SystemDateTime( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_UtcNow___STATIC__SystemDateTime( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -189,7 +184,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_UtcNow___STATIC__SystemDateTim NANOCLR_NOCLEANUP_NOLABEL(); } -HRESULT Library_nf_dt_native_System_DateTime::get_Today___STATIC__SystemDateTime( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_DateTime::get_Today___STATIC__SystemDateTime( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); @@ -204,7 +199,7 @@ HRESULT Library_nf_dt_native_System_DateTime::get_Today___STATIC__SystemDateTime //--// -CLR_INT64* Library_nf_dt_native_System_DateTime::NewObject( CLR_RT_StackFrame& stack ) +CLR_INT64* Library_corlib_native_System_DateTime::NewObject( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); CLR_RT_HeapBlock& ref = stack.PushValue(); @@ -217,13 +212,13 @@ CLR_INT64* Library_nf_dt_native_System_DateTime::NewObject( CLR_RT_StackFrame& s return reinterpret_cast(&ref.NumericByRef().s8); } -CLR_INT64* Library_nf_dt_native_System_DateTime::GetValuePtr( CLR_RT_StackFrame& stack ) +CLR_INT64* Library_corlib_native_System_DateTime::GetValuePtr( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); return GetValuePtr( stack.Arg0() ); } -CLR_INT64* Library_nf_dt_native_System_DateTime::GetValuePtr( CLR_RT_HeapBlock& ref ) +CLR_INT64* Library_corlib_native_System_DateTime::GetValuePtr( CLR_RT_HeapBlock& ref ) { NATIVE_PROFILE_CLR_CORE(); CLR_RT_HeapBlock* obj = &ref; @@ -253,7 +248,7 @@ CLR_INT64* Library_nf_dt_native_System_DateTime::GetValuePtr( CLR_RT_HeapBlock& return NULL; } -void Library_nf_dt_native_System_DateTime::Expand( CLR_RT_StackFrame& stack, SYSTEMTIME& st ) +void Library_corlib_native_System_DateTime::Expand( CLR_RT_StackFrame& stack, SYSTEMTIME& st ) { NATIVE_PROFILE_CLR_CORE(); CLR_INT64* val = GetValuePtr( stack ); @@ -269,7 +264,7 @@ void Library_nf_dt_native_System_DateTime::Expand( CLR_RT_StackFrame& stack, SYS } // Compress function always creates local time. -void Library_nf_dt_native_System_DateTime::Compress( CLR_RT_StackFrame& stack, const SYSTEMTIME& st ) +void Library_corlib_native_System_DateTime::Compress( CLR_RT_StackFrame& stack, const SYSTEMTIME& st ) { NATIVE_PROFILE_CLR_CORE(); CLR_INT64* val = GetValuePtr( stack ); diff --git a/src/CLR/System.DateTime/nf_dt_native_System_Globalization_DateTimeFormat.cpp b/src/CLR/CorLib/corlib_native_System_Globalization_DateTimeFormat.cpp similarity index 65% rename from src/CLR/System.DateTime/nf_dt_native_System_Globalization_DateTimeFormat.cpp rename to src/CLR/CorLib/corlib_native_System_Globalization_DateTimeFormat.cpp index b976e290a0..4a739b8d57 100644 --- a/src/CLR/System.DateTime/nf_dt_native_System_Globalization_DateTimeFormat.cpp +++ b/src/CLR/CorLib/corlib_native_System_Globalization_DateTimeFormat.cpp @@ -3,15 +3,10 @@ // Portions Copyright (c) Microsoft Corporation. All rights reserved. // See LICENSE file in the project root for full license information. // -#include "nf_dt_native.h" +#include "CorLib.h" -////////////////////////////////////////////////////////////////////////////////////// -// the stubs for this class are generated by nanoFramework.System.DateTime solution // -////////////////////////////////////////////////////////////////////////////////////// - - -HRESULT Library_nf_dt_native_System_Globalization_DateTimeFormat::FormatDigits___STATIC__STRING__I4__I4( CLR_RT_StackFrame& stack ) +HRESULT Library_corlib_native_System_Globalization_DateTimeFormat::FormatDigits___STATIC__STRING__I4__I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); diff --git a/src/CLR/System.DateTime/nf_dt_native.cpp b/src/CLR/System.DateTime/nf_dt_native.cpp deleted file mode 100644 index c20c686928..0000000000 --- a/src/CLR/System.DateTime/nf_dt_native.cpp +++ /dev/null @@ -1,100 +0,0 @@ -// -// Copyright (c) 2017 The nanoFramework project contributors -// Portions Copyright (c) Microsoft Corporation. All rights reserved. -// See LICENSE file in the project root for full license information. -// - -#include "nf_dt_native.h" - - -static const CLR_RT_MethodHandler method_lookup[] = -{ - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - Library_nf_dt_native_System_DateTime::_ctor___VOID__I4__I4__I4__I4__I4__I4__I4, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - Library_nf_dt_native_System_DateTime::get_Day___I4, - Library_nf_dt_native_System_DateTime::get_DayOfWeek___SystemDayOfWeek, - Library_nf_dt_native_System_DateTime::get_DayOfYear___I4, - Library_nf_dt_native_System_DateTime::get_Hour___I4, - NULL, - Library_nf_dt_native_System_DateTime::get_Millisecond___I4, - Library_nf_dt_native_System_DateTime::get_Minute___I4, - Library_nf_dt_native_System_DateTime::get_Month___I4, - Library_nf_dt_native_System_DateTime::get_Second___I4, - NULL, - NULL, - Library_nf_dt_native_System_DateTime::get_Year___I4, - NULL, - NULL, - NULL, - NULL, - Library_nf_dt_native_System_DateTime::DaysInMonth___STATIC__I4__I4__I4, - NULL, - Library_nf_dt_native_System_DateTime::get_UtcNow___STATIC__SystemDateTime, - Library_nf_dt_native_System_DateTime::get_Today___STATIC__SystemDateTime, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - Library_nf_dt_native_System_Globalization_DateTimeFormat::FormatDigits___STATIC__STRING__I4__I4, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - Library_nf_dt_native_nanoFramework_DateTime_RTC::Native_RTC_SetSystemTime___STATIC__BOOLEAN__I4__U1__U1__U1__U1__U1__U1, - Library_nf_dt_native_nanoFramework_DateTime_RTC::Native_RTC_SetAlarm___STATIC__BOOLEAN__I4__U1__U1__U1__U1__U1__U1, -}; - -const CLR_RT_NativeAssemblyData g_CLR_AssemblyNative_System_DateTime = -{ - "System.DateTime", - 0x09C5C479, - method_lookup -}; diff --git a/src/CLR/System.DateTime/nf_dt_native.h b/src/CLR/System.DateTime/nf_dt_native.h deleted file mode 100644 index e3b156f6f7..0000000000 --- a/src/CLR/System.DateTime/nf_dt_native.h +++ /dev/null @@ -1,75 +0,0 @@ -// -// Copyright (c) 2017 The nanoFramework project contributors -// Portions Copyright (c) Microsoft Corporation. All rights reserved. -// See LICENSE file in the project root for full license information. -// - -#ifndef _NF_DT_NATIVE_H_ -#define _NF_DT_NATIVE_H_ - -#include -#include - -struct Library_nf_dt_native_System_DateTime -{ - static const int FIELD_STATIC__MinValue = 3; - static const int FIELD_STATIC__MaxValue = 4; - - static const int FIELD___ticks = 1; - - NANOCLR_NATIVE_DECLARE(_ctor___VOID__I4__I4__I4__I4__I4__I4__I4); - NANOCLR_NATIVE_DECLARE(get_Day___I4); - NANOCLR_NATIVE_DECLARE(get_DayOfWeek___SystemDayOfWeek); - NANOCLR_NATIVE_DECLARE(get_DayOfYear___I4); - NANOCLR_NATIVE_DECLARE(get_Hour___I4); - NANOCLR_NATIVE_DECLARE(get_Millisecond___I4); - NANOCLR_NATIVE_DECLARE(get_Minute___I4); - NANOCLR_NATIVE_DECLARE(get_Month___I4); - NANOCLR_NATIVE_DECLARE(get_Second___I4); - NANOCLR_NATIVE_DECLARE(get_Year___I4); - NANOCLR_NATIVE_DECLARE(DaysInMonth___STATIC__I4__I4__I4); - NANOCLR_NATIVE_DECLARE(get_UtcNow___STATIC__SystemDateTime); - NANOCLR_NATIVE_DECLARE(get_Today___STATIC__SystemDateTime); - - //--// - - static CLR_INT64* NewObject ( CLR_RT_StackFrame& stack ); - static CLR_INT64* GetValuePtr( CLR_RT_StackFrame& stack ); - static CLR_INT64* GetValuePtr( CLR_RT_HeapBlock& ref ); - - static void Expand ( CLR_RT_StackFrame& stack, SYSTEMTIME& st ); - static void Compress( CLR_RT_StackFrame& stack, const SYSTEMTIME& st ); -}; - -struct Library_nf_dt_native_System_Globalization_DateTimeFormat -{ - NANOCLR_NATIVE_DECLARE(FormatDigits___STATIC__STRING__I4__I4); - - //--// - -}; - -struct Library_nf_dt_native_System_Globalization_DateTimeFormatInfo -{ - static const int FIELD___generalShortTimePattern = 1; - static const int FIELD___generalLongTimePattern = 2; - static const int FIELD___fullDateTimePattern = 3; - static const int FIELD__CultureInfo = 4; - - - //--// - -}; - -struct Library_nf_dt_native_nanoFramework_DateTime_RTC -{ - NANOCLR_NATIVE_DECLARE(Native_RTC_SetSystemTime___STATIC__BOOLEAN__I4__U1__U1__U1__U1__U1__U1); - NANOCLR_NATIVE_DECLARE(Native_RTC_SetAlarm___STATIC__BOOLEAN__I4__U1__U1__U1__U1__U1__U1); - - //--// - -}; - -extern const CLR_RT_NativeAssemblyData g_CLR_AssemblyNative_System_DateTime; - -#endif //_NF_DT_NATIVE_H_ diff --git a/src/CLR/System.DateTime/nf_dt_native_nanoFramework_DateTime_RTC_stubs.cpp b/src/CLR/System.DateTime/nf_dt_native_nanoFramework_DateTime_RTC_stubs.cpp deleted file mode 100644 index d30a88d31c..0000000000 --- a/src/CLR/System.DateTime/nf_dt_native_nanoFramework_DateTime_RTC_stubs.cpp +++ /dev/null @@ -1,30 +0,0 @@ -// -// Copyright (c) 2017 The nanoFramework project contributors -// Portions Copyright (c) Microsoft Corporation. All rights reserved. -// See LICENSE file in the project root for full license information. -// -#include -#include "nf_dt_native.h" - -///////////////////////////////////////////////////////////////////////////// -// the stubs for this class are generated by nanoFramework.System.DateTime // -///////////////////////////////////////////////////////////////////////////// - - -__nfweak HRESULT Library_nf_dt_native_nanoFramework_DateTime_RTC::Native_RTC_SetSystemTime___STATIC__BOOLEAN__I4__U1__U1__U1__U1__U1__U1( CLR_RT_StackFrame& stack ) -{ - NANOCLR_HEADER(); - - NANOCLR_SET_AND_LEAVE(stack.NotImplementedStub()); - - NANOCLR_NOCLEANUP(); -} - -__nfweak HRESULT Library_nf_dt_native_nanoFramework_DateTime_RTC::Native_RTC_SetAlarm___STATIC__BOOLEAN__I4__U1__U1__U1__U1__U1__U1( CLR_RT_StackFrame& stack ) -{ - NANOCLR_HEADER(); - - NANOCLR_SET_AND_LEAVE(stack.NotImplementedStub()); - - NANOCLR_NOCLEANUP(); -} diff --git a/targets/CMSIS-OS/ChibiOS/nanoCLR/System.DateTime/nf_dt_native_nanoFramework_DateTime_RTC.cpp b/targets/CMSIS-OS/ChibiOS/nanoCLR/System.DateTime/nf_dt_native_nanoFramework_DateTime_RTC.cpp deleted file mode 100644 index 7621e3699d..0000000000 --- a/targets/CMSIS-OS/ChibiOS/nanoCLR/System.DateTime/nf_dt_native_nanoFramework_DateTime_RTC.cpp +++ /dev/null @@ -1,58 +0,0 @@ -// -// Copyright (c) 2017 The nanoFramework project contributors -// Portions Copyright (c) Microsoft Corporation. All rights reserved. -// See LICENSE file in the project root for full license information. -// -#include -#include -#include -#include "nf_dt_native.h" - - -///////////////////////////////////////////////////////////////////////////// -// the stubs for this class are generated by nanoFramework.System.DateTime // -///////////////////////////////////////////////////////////////////////////// - - -HRESULT Library_nf_dt_native_nanoFramework_DateTime_RTC::Native_RTC_SetSystemTime___STATIC__BOOLEAN__I4__U1__U1__U1__U1__U1__U1( CLR_RT_StackFrame& stack ) -{ - NANOCLR_HEADER(); - { - RTCDateTime newTime; - - newTime.year = stack.Arg0().NumericByRef().s4 - 1980; // ChibiOS time base is 1980-01-01 - newTime.month = (uint8_t)stack.Arg1().NumericByRef().u1; - newTime.day = stack.Arg2().NumericByRef().u1; - newTime.dayofweek = stack.Arg3().NumericByRef().u1; - newTime.millisecond = ((((uint32_t)stack.Arg4().NumericByRef().u1 * 3600) + - ((uint32_t)stack.Arg5().NumericByRef().u1 * 60) + - (uint32_t)stack.Arg6().NumericByRef().u1) * 1000); - - // set RTC time - rtcSetTime(&RTCD1, &newTime); - - // Return value to the managed application - stack.SetResult_Boolean(true); - } - NANOCLR_NOCLEANUP(); -} - -HRESULT Library_nf_dt_native_nanoFramework_DateTime_RTC::Native_RTC_SetAlarm___STATIC__BOOLEAN__I4__U1__U1__U1__U1__U1__U1( CLR_RT_StackFrame& stack ) -{ - NANOCLR_HEADER(); - { - NANOCLR_SET_AND_LEAVE(stack.NotImplementedStub()); - - // FIXME replace with proper code to set alarm time - // // perform conversion to RTCDateTime - // RTCAlarm alarmspec; - - // /* first disable all alrams if any */ - // rtcSetAlarm(&RTCD1, 0, NULL); - // rtcSetAlarm(&RTCD1, 1, NULL); - - // // Return value to the managed application - // stack.SetResult_Boolean(true); - } - NANOCLR_NOCLEANUP(); -}