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