xref: /OK3568_Linux_fs/buildroot/package/dieharder/dieharder.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1################################################################################
2#
3# dieharder
4#
5################################################################################
6
7DIEHARDER_VERSION = 3.31.1
8DIEHARDER_SITE = http://www.phy.duke.edu/~rgb/General/dieharder
9DIEHARDER_SOURCE = dieharder-$(DIEHARDER_VERSION).tgz
10DIEHARDER_STRIP_COMPONENTS = 2
11DIEHARDER_LICENSE = GPL-2.0 with beverage clause
12DIEHARDER_LICENSE_FILES = COPYING
13DIEHARDER_DEPENDENCIES = gsl
14
15# The original configure does not use variables provided in the
16# environment so _CONF_ENV does not work. (_CONF_OPTS does).
17#
18# Finally, we patch configure.ac and some Makefile.am so we need to
19# autoreconf anyway
20DIEHARDER_AUTORECONF = YES
21
22# The m4/*.m4 files are symlinks to /usr/share, which clearly doesn't
23# work, and doing an autoreconf does not replace them.
24define DIEHARDER_M4_CLEAN
25	rm -f $(@D)/m4/*.m4
26endef
27DIEHARDER_POST_PATCH_HOOKS += DIEHARDER_M4_CLEAN
28
29# fix endianness detection
30ifeq ($(BR2_ENDIAN),"BIG")
31DIEHARDER_CONF_ENV = ac_cv_c_endian=big
32else
33DIEHARDER_CONF_ENV = ac_cv_c_endian=little
34endif
35
36# parallel build fail, disable it
37DIEHARDER_MAKE = $(MAKE1)
38
39# Too many fixes needed to build with -fno-common which is default since gcc 10
40ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_10),y)
41DIEHARDER_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -fcommon"
42endif
43
44$(eval $(autotools-package))
45