#cmake version
cmake_minimum_required ( VERSION 3.10 )

project (HELLO)

#reset output path
set ( EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin )
set ( LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib )

set ( CMAKE_SHARED_LIBRARY_LINK_C_FLAGS )

#opcua setting
# SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -flto")
# SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -flto")
# SET(CMAKE_AR  "gcc-ar")
# SET(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> qcs <TARGET> <LINK_FLAGS> <OBJECTS>")
# SET(CMAKE_C_ARCHIVE_FINISH   true)



add_definitions (
	# -DELPP_FEATURE_ALL
	# -DELPP_FEATURE_CRASH_LOG
	# #-DELPP_NO_DEFAULT_LOG_FILE
	# -DELPP_THREAD_SAFE
	# -DELPP_OS_UNIX
	-std=c99
	#-DELPP_SYSLOG
)


#set include file
include_directories (./inc)

#set source file
aux_source_directory ( . DIR_USR_SOURCE )
aux_source_directory ( ./src DIR_USR_SOURCE)

# set CC AR LD AS
set ( CMAKE_C_COMPILER $ENV{CC} )
set ( CMAKE_C_AR $ENV{AR} )
set ( CMAKE_C_LD $ENV{LD} )

#CFLAGS
set ( CMAKE_C_FLAGS "-g -std=c++11" )
set ( CMAKE_CXX_FLAGS "-g -std=c++11" )


#set debug
if(CMAKE_BUILD_TYPE STREQUAL Debug)
	add_definitions (
		-DPRINT_DEBUG_INFO
	)
endif()



MESSAGE( STATUS "There are source files : ${DIR_USR_SOURCE}.")
#generate target
add_executable ( ${CMAKE_PROJECT_NAME} ${DIR_USR_SOURCE} )

#add custom
add_custom_target ( clean-all COMMAND rm -rf {CMAKE_BINARY_DIR}/* )
