# Contributor: William Pitcock # Maintainer: William Pitcock global pkgname := 'jsoncpp' global pkgver := '1.8.1' global pkgrel := '0' global pkgdesc := '"JSON C++ library'" global url := '"https://github.com/open-source-parsers/jsoncpp'" global arch := '"all'" global license := '"PublicDomain'" global makedepends := '"scons'" global subpackages := ""$pkgname-dev"" global source := ""$pkgname-$pkgver.tar.gz::https://github.com/open-source-parsers/jsoncpp/archive/$pkgver.tar.gz"" global builddir := ""$srcdir"/jsoncpp-$pkgver" proc build { cd $builddir # we cannot use cmake since jsoncpp is a dependency for cmake which # means we would get circular buildtime deps scons platform=linux-gcc # build a proper shared lib g++ -o libjsoncpp.so.0.0.0 -shared -Wl,-soname,libjsoncpp.so.0 \ buildscons/linux-gcc-*/src/lib_json/*.os -lpthread } proc package { cd $builddir mkdir -p "$pkgdir"/usr/lib cp "$builddir"/libjsoncpp.so.0.0.0 "$pkgdir"/usr/lib/ ln -s libjsoncpp.so.0.0.0 "$pkgdir"/usr/lib/libjsoncpp.so.0 ln -s libjsoncpp.so.0.0.0 "$pkgdir"/usr/lib/libjsoncpp.so mkdir -p "$pkgdir"/usr/include/jsoncpp cp -r "$builddir"/include/json/* "$pkgdir"/usr/include/jsoncpp/ ln -s jsoncpp "$pkgdir"/usr/include/json mkdir -p "$pkgdir"/usr/lib/pkgconfig sed -e 's:@CMAKE_INSTALL_PREFIX@:/usr:g' \ -e 's:@LIBRARY_INSTALL_DIR@:lib:g' \ -e 's:@INCLUDE_INSTALL_DIR@:include/jsoncpp:g'\ -e "s:@JSONCPP_VERSION@:$pkgver:g"\ pkg-config/jsoncpp.pc.in \ > "$pkgdir"/usr/lib/pkgconfig/jsoncpp.pc } global sha512sums := '"4203826fca4c366b51d28ffc928399c914ffaba8be1cada64ff118b5742e6b469d3fc3e59344587d851447857b479794c5697d4fd11a9a55b32a3a7a801b745b jsoncpp-1.8.1.tar.gz'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(jsoncpp)} spids:[6])] spids: [6] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.8.1)} spids:[9])] spids: [9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[12])] spids: [12] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("JSON C++ library"))} spids: [15] ) ] spids: [15] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("https://github.com/open-source-parsers/jsoncpp"))} spids: [20] ) ] spids: [20] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[25])] spids: [25] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (PublicDomain))} spids:[30])] spids: [30] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:makedepends) op:Equal rhs:{(DQ (scons))} spids:[35])] spids: [35] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname") (-dev))} spids: [40] ) ] spids: [40] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver") (".tar.gz::https://github.com/open-source-parsers/jsoncpp/archive/") ($ VSub_Name "$pkgver") (.tar.gz) ) } spids: [46] ) ] spids: [46] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:builddir) op: Equal rhs: {(DQ ($ VSub_Name "$srcdir")) (/jsoncpp-) ($ VSub_Name "$pkgver")} spids: [56] ) ] spids: [56] ) (FuncDef name: build body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(scons)} {(Lit_VarLike "platform=") (linux-gcc)}) (C {(g) (Lit_Other "+") (Lit_Other "+")} {(-o)} {(libjsoncpp.so.0.0.0)} {(-shared)} {(-Wl) (Lit_Comma ",") (-soname) (Lit_Comma ",") (libjsoncpp.so.0)} {(buildscons/linux-gcc-) (Lit_Other "*") (/src/lib_json/) (Lit_Other "*") (.os)} {(-lpthread)} ) ] spids: [68] ) spids: [64 67] ) (FuncDef name: package body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib)}) (C {(cp)} {(DQ ($ VSub_Name "$builddir")) (/libjsoncpp.so.0.0.0)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/)} ) (C {(ln)} {(-s)} {(libjsoncpp.so.0.0.0)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libjsoncpp.so.0)} ) (C {(ln)} {(-s)} {(libjsoncpp.so.0.0.0)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libjsoncpp.so)} ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/jsoncpp)}) (C {(cp)} {(-r)} {(DQ ($ VSub_Name "$builddir")) (/include/json/) (Lit_Other "*")} {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/jsoncpp/)} ) (C {(ln)} {(-s)} {(jsoncpp)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/json)}) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/pkgconfig)}) (SimpleCommand words: [ {(sed)} {(-e)} {(SQ <"s:@CMAKE_INSTALL_PREFIX@:/usr:g">)} {(-e)} {(SQ <"s:@LIBRARY_INSTALL_DIR@:lib:g">)} {(-e)} {(SQ <"s:@INCLUDE_INSTALL_DIR@:include/jsoncpp:g">)} {(-e)} {(DQ ("s:@JSONCPP_VERSION@:") ($ VSub_Name "$pkgver") (":g"))} {(pkg-config/jsoncpp.pc.in)} ] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/pkgconfig/jsoncpp.pc)} spids: [276] ) ] ) ] spids: [130] ) spids: [126 129] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "4203826fca4c366b51d28ffc928399c914ffaba8be1cada64ff118b5742e6b469d3fc3e59344587d851447857b479794c5697d4fd11a9a55b32a3a7a801b745b jsoncpp-1.8.1.tar.gz" ) ) } spids: [286] ) ] spids: [286] ) ] )