diff options
author | Vicent Marti <vicent@github.com> | 2014-05-01 01:23:10 -0700 |
---|---|---|
committer | Vicent Marti <vicent@github.com> | 2014-05-01 01:23:10 -0700 |
commit | 9d878fc420037a78f6ab36b86a42641cbd9425e0 (patch) | |
tree | 7f3f5f6b059a553cbb2a9a3266d57e51ca51e81c | |
parent | c522bed0af3f249d8617d214d2b3297ca6cac777 (diff) | |
parent | 183aa4f8317f5a64f1bc931551a342e6a93ce1c3 (diff) | |
download | libgit2-9d878fc420037a78f6ab36b86a42641cbd9425e0.tar.gz |
Merge pull request #2304 from jacquesg/solaris
Solaris!
-rw-r--r-- | CMakeLists.txt | 6 | ||||
-rw-r--r-- | src/common.h | 1 | ||||
-rw-r--r-- | src/config.c | 4 | ||||
-rw-r--r-- | src/remote.c | 2 |
4 files changed, 9 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index b5bd669f0..884c9bcf1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -172,7 +172,7 @@ IF (ENABLE_TRACE STREQUAL "ON") ENDIF() # Include POSIX regex when it is required -IF(WIN32 OR AMIGA OR ANDROID) +IF(WIN32 OR AMIGA OR ANDROID OR CMAKE_SYSTEM_NAME MATCHES "(Solaris|SunOS)") INCLUDE_DIRECTORIES(deps/regex) SET(SRC_REGEX deps/regex/regex.c) ENDIF() @@ -290,6 +290,10 @@ IF (MSVC) ELSE () SET(CMAKE_C_FLAGS "-D_GNU_SOURCE -Wall -Wextra ${CMAKE_C_FLAGS}") + IF (CMAKE_SYSTEM_NAME MATCHES "(Solaris|SunOS)") + SET(CMAKE_C_FLAGS "-std=c99 -D_POSIX_C_SOURCE=200112L -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS ${CMAKE_C_FLAGS}") + ENDIF() + IF (WIN32 AND NOT CYGWIN) SET(CMAKE_C_FLAGS_DEBUG "-D_DEBUG") ENDIF () diff --git a/src/common.h b/src/common.h index 9c8bdc18a..dd97a3099 100644 --- a/src/common.h +++ b/src/common.h @@ -44,6 +44,7 @@ #else # include <unistd.h> +# include <strings.h> # ifdef GIT_THREADS # include <pthread.h> # include <sched.h> diff --git a/src/config.c b/src/config.c index b3168f735..16854c0c8 100644 --- a/src/config.c +++ b/src/config.c @@ -1144,7 +1144,7 @@ int git_config_parse_int64(int64_t *out, const char *value) } fail_parse: - giterr_set(GITERR_CONFIG, "Failed to parse '%s' as an integer", value); + giterr_set(GITERR_CONFIG, "Failed to parse '%s' as an integer", value ? value : "(null)"); return -1; } @@ -1164,7 +1164,7 @@ int git_config_parse_int32(int32_t *out, const char *value) return 0; fail_parse: - giterr_set(GITERR_CONFIG, "Failed to parse '%s' as a 32-bit integer", value); + giterr_set(GITERR_CONFIG, "Failed to parse '%s' as a 32-bit integer", value ? value : "(null)"); return -1; } diff --git a/src/remote.c b/src/remote.c index ea638e373..be7198a98 100644 --- a/src/remote.c +++ b/src/remote.c @@ -73,7 +73,7 @@ static int ensure_remote_name_is_valid(const char *name) if (!git_remote_is_valid_name(name)) { giterr_set( GITERR_CONFIG, - "'%s' is not a valid remote name.", name); + "'%s' is not a valid remote name.", name ? name : "(null)"); error = GIT_EINVALIDSPEC; } |