diff --git a/CMakeLists.txt b/CMakeLists.txt index b315e3e6..92c2efae 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -75,7 +75,13 @@ IF( MINGW OR UNIX ) -W ) ENDIF() - ADD_DEFINITIONS( -std=c++98 ) + + IF ( CYGWIN ) + ADD_DEFINITIONS( -std=gnu++98 ) # to support snprintf + ELSE() + ADD_DEFINITIONS( -std=c++98 ) + ENDIF() + ENDIF( MINGW OR UNIX ) IF( EXIV2_ENABLE_COMMERCIAL ) diff --git a/config/configure.ac b/config/configure.ac index ab8f00d1..e6760330 100644 --- a/config/configure.ac +++ b/config/configure.ac @@ -335,9 +335,16 @@ for u in gettext msginit msgmerge msgfmt msgconv msgfilter ; do fi done -# 1188 v0.26 use c++98 -# 1188 v0.27 should have an option to specify versions such as c++11 -CPPFLAGS="$CPPFLAGS -std=c++98" +# 1188 v0.26 uses c++98 +# 1188 v0.27 should have an option to specify versions such as c++11 +case "$host_os" in + *cygwin*) + CPPFLAGS="$CPPFLAGS -std=gnu++98" # cygwin requires gnu++98 to support snprintf + ;; + *) + CPPFLAGS="$CPPFLAGS -std=c++98" # // all others use c++98 + ;; +esac # --------------------------------------------------------------------------- # Create output files.