From 28f2e968d8d8efdfefb87b908fcc2aa5a4954fd2 Mon Sep 17 00:00:00 2001 From: Selim Mustafaev Date: Sun, 21 Sep 2014 21:37:07 +0400 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=B1=D0=B0=D0=B7=D0=BE=D0=B2=D0=B0=D1=8F=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5=D1=80=D0=B6=D0=BA=D0=B0=20=D0=B0?= =?UTF-8?q?=D1=81=D1=81=D0=B5=D0=BC=D0=B1=D0=BB=D0=B5=D1=80=D0=B0=20(NASM)?= =?UTF-8?q?,=20=D0=BF=D0=BE=D0=BA=D0=B0=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5?= =?UTF-8?q?=D1=80=D0=B5=D0=BD=D0=BE=20=D1=82=D0=BE=D0=BB=D1=8C=D0=BA=D0=BE?= =?UTF-8?q?=20=D0=BD=D0=B0=20linux.=20=D0=B0=D1=81=D1=81=D0=B5=D1=8C=D0=B1?= =?UTF-8?q?=D0=BB=D0=B5=D1=80=D0=BD=D1=8B=D0=B9=20=D0=BA=D0=BE=D0=B4=20?= =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B5=D0=B4=D0=B5=D0=BB=D0=B0=D0=BD=20=D1=81?= =?UTF-8?q?=20FASM=20=D0=BD=D0=B0=20NASM?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 3 ++- src/CMakeLists.txt | 4 +++- .../linux/x86_64/{ustring_asm.s => ustring_asm.asm} | 10 ++++------ test/CMakeLists.txt | 7 +------ 4 files changed, 10 insertions(+), 14 deletions(-) rename src/asm/linux/x86_64/{ustring_asm.s => ustring_asm.asm} (94%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 77f12f8..9f1d877 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,9 +2,10 @@ cmake_minimum_required(VERSION 2.8) set(CMAKE_BUILD_TYPE DEBUG) -set(CMAKE_CXX_FLAGS "-std=c++11") +set(CMAKE_CXX_FLAGS "-std=c++11 -pthread") set(CMAKE_CXX_FLAGS_DEBUG "-g -O0") set(CMAKE_CXX_FLAGS_RELEASE "-O2") +set(CMAKE_EXE_LINKER_FLAGS "-pthread") set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin) set(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/lib) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7eab535..83b01f4 100755 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -4,8 +4,10 @@ set(MAIN_PROJECT_NAME "cpputil") set(SRC_DIR ".") set(INCLUDE_DIR ../include ./asm/include) -project(${MAIN_PROJECT_NAME} CXX) +project(${MAIN_PROJECT_NAME} CXX ASM_NASM) aux_source_directory(${SRC_DIR} SRC_FILES) +file(GLOB_RECURSE ASM_SRC_FILES "${SRC_DIR}/asm/linux/x86_64" "*.asm") +set(SRC_FILES ${SRC_FILES} ${ASM_SRC_FILES}) include_directories(${INCLUDE_DIR}) add_library(${MAIN_PROJECT_NAME} STATIC ${SRC_FILES}) target_link_libraries(${MAIN_PROJECT_NAME}) diff --git a/src/asm/linux/x86_64/ustring_asm.s b/src/asm/linux/x86_64/ustring_asm.asm similarity index 94% rename from src/asm/linux/x86_64/ustring_asm.s rename to src/asm/linux/x86_64/ustring_asm.asm index db97f71..6c8e073 100644 --- a/src/asm/linux/x86_64/ustring_asm.s +++ b/src/asm/linux/x86_64/ustring_asm.asm @@ -1,21 +1,19 @@ -format ELF64 - ; ; public exported functions ; -public _asm_ucs4_strstr -public _asm_ucs4_strchr +global _asm_ucs4_strstr +global _asm_ucs4_strchr ; ; code section ; -section '.text' executable +section '.text' ; constants -npos = -1 +npos db -1 ;================================================================================ ; diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 2d26c85..a543e3e 100755 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -15,7 +15,7 @@ ExternalProject_Add( TIMEOUT 100 CMAKE_ARGS -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=${CMAKE_SOURCE_DIR}/lib -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=${CMAKE_SOURCE_DIR}/lib - -Dgtest_force_shared_crt=ON + #-Dgtest_force_shared_crt=ON -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} INSTALL_COMMAND "" @@ -45,11 +45,6 @@ ExternalProject_Add( LOG_BUILD ON ) -ExternalProject_Get_Property( boost source_dir ) -ExternalProject_Get_Property( boost binary_dir ) -set( Boost_INCLUDE_DIRS ${source_dir} ) -set( Boost_LIBRARIES debug;${binary_dir}/stage/lib/libboost_program_options-vc110-mt-gd-1_49.lib;optimized;${binary_dir}/stage/lib/libboost_program_options-vc110-mt-1_49.lib ) - project(${TEST_PROJECT_NAME} CXX) aux_source_directory(${SRC_DIR} TEST_SRC) add_executable(${TEST_PROJECT_NAME} ${TEST_SRC})