Due to different HW implementation, the
surface could require a different alignment size
rather than the default ones, here introduces
a new VASurfaceAttribute, alignment size, which
contains two variables log2_width_alignment
and log2_height_alignment, each has 4 bits,
and the alignment needs to be left shifted
2**size from the application side.
The alignment is in the powers of 2 and
range in [2**0, ... 2**15] = [1, 2, 4, 8, ... 32768]
And this alignment should be met when creating
context as an add-on requirement. If not
implemented, the existing/default alignment
logic will be used.
meson: create dist archives suitable for building with configure, too
Run autogen.sh as a dist script while creating the tarball. Also update
autogen.sh to detect when it is being run from `meson dist`, and use
that as the srcdir.
Signed-off-by: Eli Schwartz <email address hidden>
autogen.sh: successfully detect if the autoreconf program is installed
The "which" utility is not guaranteed to be installed either, and if it
is, its behavior is not portable either. This means that when autoreconf
is installed, the `which` check will report a fatal error because the
which tool did not exist and the shell returned a nonzero status when
attempting to fork+exec. If it did exist, it might not be an
implementation of `which` that returns nonzero when commands do not
exist.
The general scripting suggestion is to use the "command -v" shell
builtin; this is required to exist in all POSIX 2008 compliant shells,
and is thus guaranteed to work everywhere.
Examples of open-source shells likely to be installed as /bin/sh on
Linux, which implement the 15-year-old standard: ash, bash, busybox,
dash, ksh, mksh and zsh.
Signed-off-by: Eli Schwartz <email address hidden>