Yajl (#1489)
* Initial build of yajl package * Common PKGBUILD for msys and mingw * Minor updates and cleaning * Fixed tests
This commit is contained in:
30
mingw-w64-yajl/01-fix-compiler.patch
Normal file
30
mingw-w64-yajl/01-fix-compiler.patch
Normal file
@@ -0,0 +1,30 @@
|
||||
diff -ruN yajl-2.1.0-orig/CMakeLists.txt yajl-2.1.0/CMakeLists.txt
|
||||
--- yajl-2.1.0-orig/CMakeLists.txt 2014-03-19 04:58:29.000000000 +0100
|
||||
+++ yajl-2.1.0/CMakeLists.txt 2016-06-15 11:39:01.048338100 +0200
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
|
||||
|
||||
-IF (WIN32)
|
||||
+IF (MSVC)
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W4")
|
||||
ADD_DEFINITIONS(-DWIN32)
|
||||
SET(linkFlags "/PDB:NONE /INCREMENTAL:NO /OPT:NOREF /OPT:NOICF")
|
||||
@@ -46,7 +46,7 @@
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4996 /wd4255 /wd4130 /wd4100 /wd4711")
|
||||
SET(CMAKE_C_FLAGS_DEBUG "/D DEBUG /Od /Z7")
|
||||
SET(CMAKE_C_FLAGS_RELEASE "/D NDEBUG /O2")
|
||||
-ELSE (WIN32)
|
||||
+ELSE (MSVC)
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
|
||||
IF(CMAKE_COMPILER_IS_GNUCC)
|
||||
INCLUDE(CheckCCompilerFlag)
|
||||
@@ -60,7 +60,7 @@
|
||||
|
||||
SET(CMAKE_C_FLAGS_DEBUG "-DDEBUG -g")
|
||||
SET(CMAKE_C_FLAGS_RELEASE "-DNDEBUG -O2 -Wuninitialized")
|
||||
-ENDIF (WIN32)
|
||||
+ENDIF (MSVC)
|
||||
|
||||
|
||||
ADD_SUBDIRECTORY(src)
|
||||
29
mingw-w64-yajl/02-fix-tests.patch
Normal file
29
mingw-w64-yajl/02-fix-tests.patch
Normal file
@@ -0,0 +1,29 @@
|
||||
diff -ruN yajl-2.1.0-orig/test/parsing/run_tests.sh yajl-2.1.0/test/parsing/run_tests.sh
|
||||
--- yajl-2.1.0-orig/test/parsing/run_tests.sh 2014-03-19 04:58:29 +0000
|
||||
+++ yajl-2.1.0/test/parsing/run_tests.sh 2016-11-04 10:05:47 +0000
|
||||
@@ -68,7 +68,7 @@
|
||||
# parse with a read buffer size ranging from 1-31 to stress stream parsing
|
||||
while [ $iter -lt 32 ] && [ $success = "SUCCESS" ] ; do
|
||||
$testBin $allowPartials $allowComments $allowGarbage $allowMultiple -b $iter < $file > ${file}.test 2>&1
|
||||
- diff ${DIFF_FLAGS} ${file}.gold ${file}.test > ${file}.out
|
||||
+ diff -a ${DIFF_FLAGS} ${file}.gold ${file}.test > ${file}.out
|
||||
if [ $? -eq 0 ] ; then
|
||||
if [ $iter -eq 31 ] ; then testsSucceeded=$(( $testsSucceeded + 1 )) ; fi
|
||||
else
|
||||
|
||||
diff -ruN yajl-2.1.0-orig/test/parsing/cases/doubles_in_array.json.gold yajl-2.1.0/test/parsing/cases/doubles_in_array.json.gold
|
||||
--- yajl-2.1.0-orig/test/parsing/cases/doubles_in_array.json.gold 2014-03-19 04:58:29 +0000
|
||||
+++ yajl-2.1.0/test/parsing/cases/doubles_in_array.json.gold 2016-11-04 09:52:17 +0000
|
||||
@@ -1,8 +1,8 @@
|
||||
array open '['
|
||||
double: 0.00012
|
||||
-double: 6e-06
|
||||
-double: 6e-06
|
||||
-double: 1e-06
|
||||
-double: 1e-06
|
||||
+double: 6e-006
|
||||
+double: 6e-006
|
||||
+double: 1e-006
|
||||
+double: 1e-006
|
||||
array close ']'
|
||||
memory leaks: 0
|
||||
60
mingw-w64-yajl/PKGBUILD
Normal file
60
mingw-w64-yajl/PKGBUILD
Normal file
@@ -0,0 +1,60 @@
|
||||
# Contributor: Tobias Smolka <tsmolka@gmail.com>
|
||||
_realname=yajl
|
||||
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
|
||||
pkgver=2.1.0
|
||||
pkgrel=1
|
||||
pkgdesc='Yet Another JSON Library.'
|
||||
arch=('any')
|
||||
url='http://lloyd.github.com/yajl/'
|
||||
license=('ISC')
|
||||
source=(
|
||||
"$_realname-$pkgver.tar.gz::https://github.com/lloyd/$_realname/archive/$pkgver.tar.gz"
|
||||
'01-fix-compiler.patch'
|
||||
'02-fix-tests.patch'
|
||||
)
|
||||
sha256sums=(
|
||||
'3fb73364a5a30efe615046d07e6db9d09fd2b41c763c5f7d3bfb121cd5c5ac5a'
|
||||
'fa629191df14f32d54cc03999e9913ed2afa83c032249f9399ee93d87380b49a'
|
||||
'2345c74a3a005f4bb5a9ff49bc0700d41672b742eea0775a3637f164118f9195'
|
||||
)
|
||||
makedepends=(
|
||||
"make"
|
||||
"patch"
|
||||
"${MINGW_PACKAGE_PREFIX}-gcc"
|
||||
"${MINGW_PACKAGE_PREFIX}-cmake"
|
||||
"${MINGW_PACKAGE_PREFIX}-diffutils"
|
||||
)
|
||||
prepare() {
|
||||
cd "${srcdir}/${_realname}-${pkgver}"
|
||||
|
||||
patch -p1 -i "${srcdir}/01-fix-compiler.patch"
|
||||
patch -p1 -i "${srcdir}/02-fix-tests.patch"
|
||||
}
|
||||
build() {
|
||||
mkdir -p "${srcdir}/build-${CARCH}"
|
||||
cd "${srcdir}/build-${CARCH}"
|
||||
|
||||
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
|
||||
${MINGW_PREFIX}/bin/cmake \
|
||||
-G"MSYS Makefiles" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
|
||||
../${_realname}-${pkgver}
|
||||
|
||||
make
|
||||
}
|
||||
check() {
|
||||
cd "${srcdir}/build-${CARCH}"
|
||||
|
||||
make test
|
||||
PATH="$PATH:${srcdir}/build-${CARCH}/${_realname}-${pkgver}/lib" make test-api
|
||||
}
|
||||
package() {
|
||||
cd "${srcdir}/build-${CARCH}"
|
||||
|
||||
make DESTDIR=${pkgdir} install
|
||||
mv ${pkgdir}${MINGW_PREFIX}/lib/*.dll ${pkgdir}${MINGW_PREFIX}/bin/
|
||||
|
||||
install -Dm644 "../${_realname}-${pkgver}/COPYING" \
|
||||
"${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
|
||||
}
|
||||
Reference in New Issue
Block a user