forked from pool/velociraptor
138 lines
4.1 KiB
Diff
138 lines
4.1 KiB
Diff
|
From: Jeff Mahoney <jeffm@suse.com>
|
||
|
Subject: vendor: build fixes for SLE-12
|
||
|
|
||
|
SLE-12 uses gcc 4.8 and as a result requires definition
|
||
|
of _GNU_SOURCE and -std=c99 to build properly.
|
||
|
|
||
|
--- a/vendor/github.com/Velocidex/go-magic/magic/magic.go
|
||
|
+++ b/vendor/github.com/Velocidex/go-magic/magic/magic.go
|
||
|
@@ -1,7 +1,7 @@
|
||
|
package magic
|
||
|
|
||
|
/*
|
||
|
- #cgo CFLAGS: -DHAVE_CONFIG_H
|
||
|
+ #cgo CFLAGS: -DHAVE_CONFIG_H -std=c99 -D_GNU_SOURCE -DHAVE_STRNDUP
|
||
|
#include <magic.h>
|
||
|
#include <stdlib.h>
|
||
|
*/
|
||
|
--- a/vendor/github.com/Velocidex/go-magic/magic/regex.c
|
||
|
+++ b/vendor/github.com/Velocidex/go-magic/magic/regex.c
|
||
|
@@ -24,8 +24,6 @@
|
||
|
#pragma alloca
|
||
|
#endif
|
||
|
|
||
|
-#define _GNU_SOURCE
|
||
|
-
|
||
|
/* We need this for `regex.h', and perhaps for the Emacs include files. */
|
||
|
#include <sys/types.h>
|
||
|
|
||
|
--- a/vendor/github.com/Velocidex/go-yara/cgo.go
|
||
|
+++ b/vendor/github.com/Velocidex/go-yara/cgo.go
|
||
|
@@ -6,6 +6,6 @@
|
||
|
|
||
|
package yara
|
||
|
|
||
|
-// #cgo CFLAGS: -D_FILE_OFFSET_BITS=64
|
||
|
+// #cgo CFLAGS: -D_FILE_OFFSET_BITS=64 -std=c99 -D_GNU_SOURCE
|
||
|
// #cgo LDFLAGS:
|
||
|
import "C"
|
||
|
--- a/vendor/github.com/Velocidex/go-yara/endian.h
|
||
|
+++ /dev/null
|
||
|
@@ -1,96 +0,0 @@
|
||
|
-/*
|
||
|
-Copyright (c) 2016. The YARA Authors. All Rights Reserved.
|
||
|
-
|
||
|
-Redistribution and use in source and binary forms, with or without modification,
|
||
|
-are permitted provided that the following conditions are met:
|
||
|
-
|
||
|
-1. Redistributions of source code must retain the above copyright notice, this
|
||
|
-list of conditions and the following disclaimer.
|
||
|
-
|
||
|
-2. Redistributions in binary form must reproduce the above copyright notice,
|
||
|
-this list of conditions and the following disclaimer in the documentation and/or
|
||
|
-other materials provided with the distribution.
|
||
|
-
|
||
|
-3. Neither the name of the copyright holder nor the names of its contributors
|
||
|
-may be used to endorse or promote products derived from this software without
|
||
|
-specific prior written permission.
|
||
|
-
|
||
|
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||
|
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||
|
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||
|
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||
|
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||
|
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||
|
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||
|
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||
|
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||
|
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||
|
-*/
|
||
|
-
|
||
|
-#ifndef YR_ENDIAN_H
|
||
|
-#define YR_ENDIAN_H
|
||
|
-
|
||
|
-#include <yara_integers.h>
|
||
|
-
|
||
|
-#if defined(__has_builtin)
|
||
|
-#if __has_builtin(__builtin_bswap16)
|
||
|
-#define yr_bswap16(x) __builtin_bswap16(x)
|
||
|
-#endif
|
||
|
-#endif
|
||
|
-
|
||
|
-#if !defined(yr_bswap16) && defined(_MSC_VER)
|
||
|
-#define yr_bswap16(x) _byteswap_ushort(x)
|
||
|
-#endif
|
||
|
-
|
||
|
-#if !defined(yr_bswap16)
|
||
|
-uint16_t _yr_bswap16(uint16_t x);
|
||
|
-#define yr_bswap16(x) _yr_bswap16(x)
|
||
|
-#endif
|
||
|
-
|
||
|
-#if defined(__has_builtin)
|
||
|
-#if __has_builtin(__builtin_bswap32)
|
||
|
-#define yr_bswap32(x) __builtin_bswap32(x)
|
||
|
-#endif
|
||
|
-#endif
|
||
|
-
|
||
|
-#if !defined(yr_bswap32) && defined(_MSC_VER)
|
||
|
-#define yr_bswap32(x) _byteswap_ulong(x)
|
||
|
-#endif
|
||
|
-
|
||
|
-#if !defined(yr_bswap32)
|
||
|
-uint32_t _yr_bswap32(uint32_t x);
|
||
|
-#define yr_bswap32(x) _yr_bswap32(x)
|
||
|
-#endif
|
||
|
-
|
||
|
-#if defined(__has_builtin)
|
||
|
-#if __has_builtin(__builtin_bswap64)
|
||
|
-#define yr_bswap64(x) __builtin_bswap64(x)
|
||
|
-#endif
|
||
|
-#endif
|
||
|
-
|
||
|
-#if !defined(yr_bswap64) && defined(_MSC_VER)
|
||
|
-#define yr_bswap64(x) _byteswap_uint64(x)
|
||
|
-#endif
|
||
|
-
|
||
|
-#if !defined(yr_bswap64)
|
||
|
-uint64_t _yr_bswap64(uint64_t x);
|
||
|
-#define yr_bswap64(x) _yr_bswap64(x)
|
||
|
-#endif
|
||
|
-
|
||
|
-#if defined(WORDS_BIGENDIAN)
|
||
|
-#define yr_le16toh(x) yr_bswap16(x)
|
||
|
-#define yr_le32toh(x) yr_bswap32(x)
|
||
|
-#define yr_le64toh(x) yr_bswap64(x)
|
||
|
-#define yr_be16toh(x) (x)
|
||
|
-#define yr_be32toh(x) (x)
|
||
|
-#define yr_be64toh(x) (x)
|
||
|
-#else
|
||
|
-#define yr_le16toh(x) (x)
|
||
|
-#define yr_le32toh(x) (x)
|
||
|
-#define yr_le64toh(x) (x)
|
||
|
-#define yr_be16toh(x) yr_bswap16(x)
|
||
|
-#define yr_be32toh(x) yr_bswap32(x)
|
||
|
-#define yr_be64toh(x) yr_bswap64(x)
|
||
|
-#endif
|
||
|
-
|
||
|
-#endif
|