[segyio] 49/376: appveyor.yml
Jørgen Kvalsvik
jokva-guest at moszumanska.debian.org
Wed Sep 20 08:04:06 UTC 2017
This is an automated email from the git hooks/post-receive script.
jokva-guest pushed a commit to branch debian
in repository segyio.
commit c427b5fcd574c99cdcb4c1b483f26da29c14f019
Author: Jørgen Kvalsvik <jokva at statoil.com>
Date: Tue Oct 18 11:39:08 2016 +0200
appveyor.yml
---
CMakeLists.txt | 11 ++++++++++-
appveyor.yml | 26 +++++++++++++++++++++++++
cmake/check_includes.cmake | 1 +
cmake/segyio_testing.cmake | 5 ++++-
python/CMakeLists.txt | 47 +++++++++++++++++++++++++++++----------------
src/applications/segyinfo.c | 8 ++++----
src/segyio/segy.c | 4 ++--
src/segyio/segy.h | 2 +-
tests/test_utils.c | 6 +++---
9 files changed, 81 insertions(+), 29 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fd7d072..b54857f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -21,7 +21,14 @@ include(cmake/segyio_testing.cmake)
enable_testing()
include(cmake/check_includes.cmake)
-set(CMAKE_C_FLAGS "-std=c99 ${CMAKE_C_FLAGS}")
+if (MSVC)
+ add_definitions("/W3 /wd4996")
+else() # assuming gcc-style options
+ set(C_WARNINGS "-Wall -Wextra -pedantic -Wformat-nonliteral -Wcast-align -Wpointer-arith -Wmissing-declarations -Wcast-qual -Wshadow -Wwrite-strings -Wchar-subscripts -Wredundant-decls")
+ set(CMAKE_C_FLAGS "-std=c99 ${CMAKE_C_FLAGS}")
+ set(CMAKE_C_FLAGS_DEBUG "${C_WARNINGS} ${CMAKE_C_FLAGS_DEBUG}")
+ set(CMAKE_C_FLAGS_RELWITHDEBINFO "${C_WARNINGS} ${CMAKE_C_FLAGS_RELWITHDEBINFO}")
+endif (MSVC)
if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
set(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/install" CACHE PATH "Default install path" FORCE)
@@ -41,10 +48,12 @@ install(FILES src/segyio/segy.h DESTINATION ${CMAKE_INSTALL_PREFIX}/include/segy
add_library(segyio-object OBJECT ${SOURCE_FILES})
add_library(segyio-static STATIC $<TARGET_OBJECTS:segyio-object>)
+target_link_libraries(segyio-static ${SEGYIO_LIBRARIES})
set_target_properties(segyio-static PROPERTIES OUTPUT_NAME segyio CLEAN_DIRECT_OUTPUT 1)
set_target_properties(segyio-static PROPERTIES COMPILE_FLAGS "-fPIC")
add_library(segyio-shared SHARED $<TARGET_OBJECTS:segyio-object>)
+target_link_libraries(segyio-shared ${SEGYIO_LIBRARIES} ${SEGYIO_LIBRARIES})
set_target_properties(segyio-shared PROPERTIES OUTPUT_NAME segyio CLEAN_DIRECT_OUTPUT 1)
install(TARGETS segyio-static segyio-shared DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
diff --git a/appveyor.yml b/appveyor.yml
new file mode 100644
index 0000000..a51c0d7
--- /dev/null
+++ b/appveyor.yml
@@ -0,0 +1,26 @@
+version: 1.0.{build}
+
+clone_depth: 1
+
+configuration:
+ - Debug
+ - Release
+
+os: Visual Studio 2015
+image: Visual Studio 2015
+
+platform:
+ - x86
+ - x64
+
+environment:
+ matrix:
+ - PYTHON: C:\Python27
+
+build_script:
+ - python -m pip install --user numpy
+ - mkdir build
+ - pushd build
+ - cmake C:\projects\SegyIO -DBUILD_MEX=OFF -DBUILD_PYTHON=ON -DCMAKE_BUILD_TYPE=%configuration%
+ - cmake --build . --config %configuration%
+ - ctest -C %configuration% --output-on-failure
diff --git a/cmake/check_includes.cmake b/cmake/check_includes.cmake
index e6491d4..9ca9dcd 100644
--- a/cmake/check_includes.cmake
+++ b/cmake/check_includes.cmake
@@ -10,6 +10,7 @@ if (HAVE_NETINET_IN_H)
elseif (HAVE_ARPA_INET_H)
add_definitions("-DHAVE_ARPA_INET_H")
elseif (HAVE_WINSOCK2_H)
+ list(APPEND SEGYIO_LIBRARIES ws2_32)
add_definitions("-DHAVE_WINSOCK2_H")
else()
message(FATAL_ERROR "Could not find htons.")
diff --git a/cmake/segyio_testing.cmake b/cmake/segyio_testing.cmake
index 5b6f42c..7aede08 100644
--- a/cmake/segyio_testing.cmake
+++ b/cmake/segyio_testing.cmake
@@ -21,8 +21,11 @@ function(add_memcheck_test NAME BINARY)
endfunction(add_memcheck_test)
function(add_segyio_test TESTNAME TEST_SOURCES)
+ if(NOT MSVC)
+ set(MATH_LIB "m")
+ endif()
add_executable(test_${TESTNAME} unittest.h "${TEST_SOURCES}")
- target_link_libraries(test_${TESTNAME} segyio-static m)
+ target_link_libraries(test_${TESTNAME} segyio-static ${MATH_LIB})
add_dependencies(test_${TESTNAME} segyio-static)
add_test(NAME ${TESTNAME} COMMAND ${EXECUTABLE_OUTPUT_PATH}/test_${TESTNAME})
add_memcheck_test(${TESTNAME} ${EXECUTABLE_OUTPUT_PATH}/test_${TESTNAME})
diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt
index d857a01..da955a6 100644
--- a/python/CMakeLists.txt
+++ b/python/CMakeLists.txt
@@ -12,23 +12,36 @@ if (NOT DEFINED PY_numpy)
return()
endif()
-if (PYTHONLIBS_FOUND)
- include_directories(${PYTHON_INCLUDE_DIRS})
- add_library(_segyio SHARED segyio/_segyio.c $<TARGET_OBJECTS:segyio-object>)
-
- if (MAC_OS)
- set_target_properties(_segyio PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
- else ()
- set_target_properties(_segyio PROPERTIES LINK_FLAGS "-Xlinker -export-dynamic")
- endif ()
-
- set_target_properties(_segyio PROPERTIES PREFIX "" SUFFIX ".so")
- install(TARGETS _segyio DESTINATION ${CMAKE_INSTALL_PREFIX}/${PYTHON_INSTALL_PREFIX}/segyio)
-
- add_custom_command(TARGET _segyio POST_BUILD
- COMMAND ${CMAKE_COMMAND} -E copy
- $<TARGET_FILE:_segyio> ${CMAKE_BINARY_DIR}/python/segyio/_segyio.so)
-endif ()
+if (NOT PYTHONLIBS_FOUND)
+ message("Python libraries not found.")
+ unset(BUILD_PYTHON)
+ return()
+endif()
+
+include_directories(${PYTHON_INCLUDE_DIRS})
+add_library(_segyio SHARED segyio/_segyio.c $<TARGET_OBJECTS:segyio-object>)
+
+if (MSVC)
+ set(LIB_SUFFIX "pyd")
+ set(LINK_FLAGS "/DLL ${PYTHON_LIBRARY}")
+elseif (MAC_OS)
+ set(LIB_SUFFIX "so")
+ set(LINK_FLAGS "-undefined dynamic_lookup")
+else()
+ set(LIB_SUFFIX "so")
+ set(LINK_FLAGS "-Xlinker -export-dynamic")
+endif()
+
+set_target_properties(_segyio PROPERTIES PREFIX "" SUFFIX ".${LIB_SUFFIX}")
+set_target_properties(_segyio PROPERTIES LINK_FLAGS ${LINK_FLAGS})
+target_link_libraries(_segyio ${SEGYIO_LIBRARIES})
+
+install(TARGETS _segyio DESTINATION ${CMAKE_INSTALL_PREFIX}/${PYTHON_INSTALL_PREFIX}/segyio)
+
+add_custom_command(TARGET _segyio POST_BUILD
+ COMMAND ${CMAKE_COMMAND} -E copy
+ $<TARGET_FILE:_segyio>
+ ${CMAKE_BINARY_DIR}/python/segyio/_segyio.${LIB_SUFFIX})
add_subdirectory(segyio)
add_subdirectory(segyview)
diff --git a/src/applications/segyinfo.c b/src/applications/segyinfo.c
index e098b40..514db1f 100644
--- a/src/applications/segyinfo.c
+++ b/src/applications/segyinfo.c
@@ -17,11 +17,11 @@ static void printSegyTraceInfo( const char* buf ) {
printf("Inline3D: %d\n", il );
}
-static inline int min( int x, int y ) {
+static inline int minimum( int x, int y ) {
return x < y ? x : y;
}
-static inline int max( int x, int y ) {
+static inline int maximum( int x, int y ) {
return x > y ? x : y;
}
@@ -113,8 +113,8 @@ int main(int argc, char* argv[]) {
exit( err );
}
- min_sample_count = min( samples, min_sample_count );
- max_sample_count = max( samples, max_sample_count );
+ min_sample_count = minimum( samples, min_sample_count );
+ max_sample_count = maximum( samples, max_sample_count );
}
puts("");
diff --git a/src/segyio/segy.c b/src/segyio/segy.c
index 8f8d841..52f6c5d 100644
--- a/src/segyio/segy.c
+++ b/src/segyio/segy.c
@@ -576,7 +576,7 @@ int segy_sample_indexes(FILE* fp, double* buf, double t0, size_t count) {
return err;
}
- for (int i = 0; i < count; i++) {
+ for (size_t i = 0; i < count; i++) {
buf[i] = t0 + i * dt;
}
@@ -1088,7 +1088,7 @@ int segy_write_textheader( FILE* fp, unsigned int pos, const char* buf ) {
return SEGY_OK;
}
-unsigned int segy_textheader_size() {
+int segy_textheader_size() {
return SEGY_TEXT_HEADER_SIZE + 1;
}
diff --git a/src/segyio/segy.h b/src/segyio/segy.h
index fce6a7a..c9b0baf 100644
--- a/src/segyio/segy.h
+++ b/src/segyio/segy.h
@@ -54,7 +54,7 @@ int segy_sample_indexes(FILE* fp, double* buf, double t0, size_t count);
/* text header operations */
int segy_read_textheader(FILE *, char *buf);
-unsigned int segy_textheader_size();
+int segy_textheader_size();
int segy_write_textheader( FILE*, unsigned int pos, const char* buf );
/* Read the trace header at `traceno` into `buf`. */
diff --git a/tests/test_utils.c b/tests/test_utils.c
index bf893e9..e74947c 100644
--- a/tests/test_utils.c
+++ b/tests/test_utils.c
@@ -7,10 +7,10 @@ void ebcdic2ascii( const char*, char* );
void ascii2ebcdic( const char*, char* );
void testEbcdicConversion() {
- char* expected = (char*) "Hello there!";
+ char expected[] = "Hello there!";
char str[] = "\xc8\x85\x93\x93\x96\x40\xa3\x88\x85\x99\x85\x4f";
- char result[strlen(expected)];
+ char result[ sizeof( expected ) ];
ebcdic2ascii(str, result);
assertTrue(strcmp(result, expected) == 0, "Converted string did not match the expected result!");
@@ -41,7 +41,7 @@ void testConversionAllocation() {
char* expected = (char*) "Hello there!";
char str[] = "\xc8\x85\x93\x93\x96\x40\xa3\x88\x85\x99\x85\x4f";
- char result[strlen(str) + 1];
+ char result[ sizeof( str ) ];
ebcdic2ascii(str, result);
assertTrue(strcmp(result, expected) == 0, "Converted string did not match the expected result!");
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/segyio.git
More information about the debian-science-commits
mailing list