mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-11-02 09:01:48 -05:00
Fix alsa/sound/*.h for external programs
The recent update of sound/*.h to sync with the latest Linus uapi files broke the build of alsa-tools programs. These files used to be a modified version of Linux sound/* header files, so that they could be built without Linux headers. The special prefix like __user and other things were worked around there. We may do that again, but a better approach is to fix those things in Linux kernel uapi side, while we keep the minimal workaround in alsa-lib such as the __u16 and co type definitions. This patch is such an attempt, namely: - Keep the original $LINUX/uapi/sound/*.h in include/sound/uapi directory - The "fixes" are applied to some uapi headers, so that they don't contain Linux-specific prefix and use of opaque struct like snd_ctl_elem_id - The uapi headers are included indirectly from include/sound/*.h - Some headers have inclusion of type_compat.h for the Linux variable types and prefixes - type_compat.h tries to use <linux/types.h> when __linux__ is defined, instead of the own conflicting definitions The last type might need a bit more adjustment depending on the compiler, but it can be fixed locally without disturbing else. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
780f17126a
commit
ae564665ec
25 changed files with 3452 additions and 3408 deletions
|
|
@ -1,7 +1,9 @@
|
|||
SUBDIRS = uapi
|
||||
|
||||
alsasoundincludedir = ${includedir}/alsa/sound
|
||||
|
||||
alsasoundinclude_HEADERS = asound_fm.h hdsp.h hdspm.h sb16_csp.h \
|
||||
sscape_ioctl.h emu10k1.h type_compat.h \
|
||||
asoc.h tlv.h
|
||||
sscape_ioctl.h emu10k1.h asoc.h tlv.h \
|
||||
type_compat.h
|
||||
|
||||
noinst_HEADERS = asound.h asequencer.h
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue