Index: head/devel/jsoncpp/Makefile =================================================================== --- head/devel/jsoncpp/Makefile (revision 415394) +++ head/devel/jsoncpp/Makefile (revision 415395) @@ -1,32 +1,48 @@ # Created by: Johan Str??m # $FreeBSD$ PORTNAME= jsoncpp -DISTVERSION= 0.6.0-rc2 -PORTREVISION= 2 +DISTVERSION= 1.7.2 CATEGORIES= devel -MASTER_SITES= SF/${PORTNAME}/jsoncpp/${DISTVERSION} -DISTNAME= jsoncpp-src-${DISTVERSION} MAINTAINER= johan@stromnet.se COMMENT= JSON reader and writer library for C++ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE +USE_GITHUB= yes +GH_ACCOUNT= open-source-parsers + USES= dos2unix scons USE_LDCONFIG= yes MAKE_ARGS= platform=linux-gcc +.include + +.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1000000 +# NOTE Certain newest compiler features unlock some parts of jsoncpp API (ex. see JSON_HAS_RVALUE_REFERENCES). +# Use c++11 above to be most inclusive. +USES+= compiler:c++11-lang +CXXFLAGS+= --std=c++11 +.endif + do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/include/jsoncpp (cd ${WRKSRC}/include/ && ${COPYTREE_SHARE} json/ ${STAGEDIR}${PREFIX}/include/jsoncpp/) ${INSTALL_DATA} ${WRKSRC}/libs/linux-gcc-FreeBSD/libjsoncpp.a \ ${STAGEDIR}${PREFIX}/lib - ${INSTALL_LIB} ${WRKSRC}/libs/linux-gcc-FreeBSD/libjsoncpp.so.0.6.0 \ + ${INSTALL_LIB} ${WRKSRC}/libs/linux-gcc-FreeBSD/libjsoncpp.so.${DISTVERSION} \ ${STAGEDIR}${PREFIX}/lib - ${LN} -s libjsoncpp.so.0.6.0 ${STAGEDIR}${PREFIX}/lib/libjsoncpp.so.0 - ${LN} -s libjsoncpp.so.0.6.0 ${STAGEDIR}${PREFIX}/lib/libjsoncpp.so + ${LN} -s libjsoncpp.so.${DISTVERSION} ${STAGEDIR}${PREFIX}/lib/libjsoncpp.so.1 + ${LN} -s libjsoncpp.so.${DISTVERSION} ${STAGEDIR}${PREFIX}/lib/libjsoncpp.so + ${CP} ${WRKSRC}/pkg-config/jsoncpp.pc.in ${STAGEDIR}${PREFIX}/libdata/pkgconfig/jsoncpp.pc + @${REINPLACE_CMD} -i '' \ + -e 's|@CMAKE_INSTALL_PREFIX@|${PREFIX}|g' \ + -e 's|@LIBRARY_INSTALL_DIR@|${PREFIX}/lib|g' \ + -e 's|@INCLUDE_INSTALL_DIR@|${PREFIX}/jsoncpp|g' \ + -e 's|@JSONCPP_VERSION@|${DISTVERSION}|g' \ + ${STAGEDIR}${PREFIX}/libdata/pkgconfig/jsoncpp.pc -.include +.include Index: head/devel/jsoncpp/distinfo =================================================================== --- head/devel/jsoncpp/distinfo (revision 415394) +++ head/devel/jsoncpp/distinfo (revision 415395) @@ -1,2 +1,2 @@ -SHA256 (jsoncpp-src-0.6.0-rc2.tar.gz) = d4d193d163f520b08b9155cba978615892ca1359d77e3fb261fce2f86d09b283 -SIZE (jsoncpp-src-0.6.0-rc2.tar.gz) = 117661 +SHA256 (open-source-parsers-jsoncpp-1.7.2_GH0.tar.gz) = 2179a7df19c1c6dc87e02c65b847efc914625a9b87df3e443d9610fc70c0f557 +SIZE (open-source-parsers-jsoncpp-1.7.2_GH0.tar.gz) = 205391 Index: head/devel/jsoncpp/files/patch-SConstruct =================================================================== --- head/devel/jsoncpp/files/patch-SConstruct (revision 415394) +++ head/devel/jsoncpp/files/patch-SConstruct (revision 415395) @@ -1,67 +1,67 @@ ---- SConstruct +--- SConstruct.orig 2016-05-09 23:15:49 UTC +++ SConstruct -@@ -26,7 +26,7 @@ +@@ -26,7 +26,7 @@ try: if platform == 'linux-gcc': CXX = 'g++' # not quite right, but env is not yet available. import commands - version = commands.getoutput('%s -dumpversion' %CXX) + version = 'FreeBSD' platform = 'linux-gcc-%s' %version print "Using platform '%s'" %platform LD_LIBRARY_PATH = os.environ.get('LD_LIBRARY_PATH', '') -@@ -65,7 +65,7 @@ +@@ -65,7 +65,7 @@ def make_environ_vars(): return vars -env = Environment( ENV = make_environ_vars(), +env = Environment( ENV = os.environ, toolpath = ['scons-tools'], tools=[] ) #, tools=['default'] ) -@@ -121,6 +121,7 @@ +@@ -121,6 +121,7 @@ elif platform.startswith('linux-gcc'): env.Tool( 'default' ) - env.Append( LIBS = ['pthread'], CCFLAGS = "-Wall" ) + env.Append( LIBS = ['pthread'], CCFLAGS = os.environ.get("CXXFLAGS", "-Wall"), LINKFLAGS=os.environ.get("LDFLAGS", "") ) env['SHARED_LIB_ENABLED'] = True + env['CXX'] = os.environ['CXX'] else: print "UNSUPPORTED PLATFORM." env.Exit(1) -@@ -147,6 +148,11 @@ +@@ -147,6 +148,11 @@ env['JSONCPP_VERSION'] = JSONCPP_VERSION env['BUILD_DIR'] = env.Dir(build_dir) env['ROOTBUILD_DIR'] = env.Dir(rootbuild_dir) env['DIST_DIR'] = DIST_DIR + +# Set SHLIBVERSION for env.InstallVersionedLib(). We use the version number +# without the "-rcXX" part. +env['SHLIBVERSION'] = JSONCPP_VERSION.partition('-')[0] + if 'TarGz' in env['BUILDERS']: class SrcDistAdder: def __init__( self, env ): -@@ -164,7 +170,7 @@ +@@ -164,7 +170,7 @@ env['SRCDIST_ADD'] = SrcDistAdder( env ) env['SRCDIST_TARGET'] = os.path.join( DIST_DIR, 'jsoncpp-src-%s.tar.gz' % env['JSONCPP_VERSION'] ) env_testing = env.Clone( ) -env_testing.Append( LIBS = ['json_${LIB_NAME_SUFFIX}'] ) +env_testing.Append( LIBS = ['jsoncpp'] ) def buildJSONExample( env, target_sources, target_name ): env = env.Clone() -@@ -187,14 +193,14 @@ +@@ -187,14 +193,14 @@ def buildUnitTests( env, target_sources, env.AlwaysBuild( check_alias_target ) def buildLibrary( env, target_sources, target_name ): - static_lib = env.StaticLibrary( target=target_name + '_${LIB_NAME_SUFFIX}', + static_lib = env.StaticLibrary( target=target_name, source=target_sources ) global lib_dir env.Install( lib_dir, static_lib ) if env['SHARED_LIB_ENABLED']: - shared_lib = env.SharedLibrary( target=target_name + '_${LIB_NAME_SUFFIX}', + shared_lib = env.SharedLibrary( target=target_name, source=target_sources ) - env.Install( lib_dir, shared_lib ) + env.InstallVersionedLib( lib_dir, shared_lib ) env['SRCDIST_ADD']( source=[target_sources] ) Export( 'env env_testing buildJSONExample buildLibrary buildJSONTests buildUnitTests' ) Index: head/devel/jsoncpp/files/patch-include_json_config.h =================================================================== --- head/devel/jsoncpp/files/patch-include_json_config.h (nonexistent) +++ head/devel/jsoncpp/files/patch-include_json_config.h (revision 415395) @@ -0,0 +1,11 @@ +--- include/json/config.h.orig 2016-05-09 23:16:22 UTC ++++ include/json/config.h +@@ -77,7 +77,7 @@ + + #endif // defined(_MSC_VER) + +-#if defined(_MSC_VER) && _MSC_VER <= 1600 // MSVC <= 2010 ++#if defined(__FreeBSD__) || (defined(_MSC_VER) && _MSC_VER <= 1600) // MSVC <= 2010 + # define JSONCPP_OVERRIDE + #else + # define JSONCPP_OVERRIDE override Property changes on: head/devel/jsoncpp/files/patch-include_json_config.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/devel/jsoncpp/files/patch-src_lib__json_sconscript =================================================================== --- head/devel/jsoncpp/files/patch-src_lib__json_sconscript (revision 415394) +++ head/devel/jsoncpp/files/patch-src_lib__json_sconscript (revision 415395) @@ -1,8 +1,8 @@ ---- src/lib_json/sconscript.orig 2015-06-22 20:34:03 UTC +--- src/lib_json/sconscript.orig 2016-05-09 23:15:49 UTC +++ src/lib_json/sconscript @@ -5,4 +5,4 @@ buildLibrary( env, Split( """ json_value.cpp json_writer.cpp """ ), - 'json' ) + 'jsoncpp' ) Index: head/devel/jsoncpp/pkg-descr =================================================================== --- head/devel/jsoncpp/pkg-descr (revision 415394) +++ head/devel/jsoncpp/pkg-descr (revision 415395) @@ -1,6 +1,6 @@ jsoncpp is an implementation of a JSON reader and writer in C++. JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. -WWW: http://jsoncpp.sourceforge.net/ +WWW: https://github.com/open-source-parsers/jsoncpp Index: head/devel/jsoncpp/pkg-plist =================================================================== --- head/devel/jsoncpp/pkg-plist (revision 415394) +++ head/devel/jsoncpp/pkg-plist (revision 415395) @@ -1,12 +1,16 @@ -lib/libjsoncpp.so.0.6.0 -lib/libjsoncpp.so.0 -lib/libjsoncpp.so -lib/libjsoncpp.a -include/jsoncpp/json/writer.h -include/jsoncpp/json/json.h -include/jsoncpp/json/forwards.h +include/jsoncpp/json/allocator.h +include/jsoncpp/json/assertions.h +include/jsoncpp/json/autolink.h include/jsoncpp/json/config.h -include/jsoncpp/json/value.h -include/jsoncpp/json/reader.h include/jsoncpp/json/features.h -include/jsoncpp/json/autolink.h +include/jsoncpp/json/forwards.h +include/jsoncpp/json/json.h +include/jsoncpp/json/reader.h +include/jsoncpp/json/value.h +include/jsoncpp/json/version.h +include/jsoncpp/json/writer.h +lib/libjsoncpp.a +lib/libjsoncpp.so +lib/libjsoncpp.so.1 +lib/libjsoncpp.so.1.7.2 +libdata/pkgconfig/jsoncpp.pc