dogecoin/depends/packages/libXext.mk

54 lines
2.2 KiB
Makefile

package=libXext
$(package)_version=1.3.3
$(package)_download_path=https://xorg.freedesktop.org/releases/individual/lib/
$(package)_file_name=$(package)-$($(package)_version).tar.bz2
$(package)_sha256_hash=b518d4d332231f313371fdefac59e3776f4f0823bcb23cf7c7305bfb57b16e35
$(package)_dependencies=xproto xextproto libX11 libXau
define $(package)_set_vars
# A number of steps in the autoconfig process implicitly assume that the build
# system and the host system are the same. For example, library components
# want to build and run test programs to determine the behavior of certain
# host system elements. This is clearly impossible when crosscompiling. To
# work around these issues, the --enable-malloc0returnsnull (or
# --disable-malloc0returnsnull, depending on the host system) must be passed
# to configure.
# -- https://www.x.org/wiki/CrossCompilingXorg/
#
# Concretely, between the releases of libXext 1.3.2 and 1.3.3,
# XORG_CHECK_MALLOC_ZERO from xorg-macros was changed to use the autoconf
# cache, expecting cross-compilation environments to seed this cache as there
# is no single correct value when cross compiling (think uclibc, musl, etc.).
# You can see the actual change in commit 72fdc868b56fe2b7bdc9a69872651baeca72
# in the freedesktop/xorg-macros repo.
#
# As a result of this change, if we don't seed the cache and we don't use
# either --{en,dis}able-malloc0returnsnull, the AC_RUN_IFELSE block has no
# optional action-if-cross-compiling argument and configure prints an error
# message and exits as documented in the autoconf manual. Prior to this
# commit, the AC_RUN_IFELSE block had an action-if-cross-compiling argument
# which set the more pessimistic default value MALLOC_ZERO_RETURNS_NULL=yes.
# This is why the flag was not required prior to libXext 1.3.3.
$(package)_config_opts=--disable-static --disable-malloc0returnsnull
endef
define $(package)_preprocess_cmds
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub .
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm lib/*.la
endef