Fixed compilation --with-versioned=no

This commit is contained in:
Jaroslav Kysela 2003-03-11 18:51:32 +00:00
parent 915de60abf
commit fea03e9eba
6 changed files with 31 additions and 12 deletions

View file

@ -102,6 +102,7 @@ if test "$versioned" = "yes"; then
else
AC_MSG_RESULT(no)
fi
AM_CONDITIONAL(VERSIONED_SYMBOLS, test x$versioned = xyes)
dnl Check for debug...
AC_MSG_CHECKING(for debug)

View file

@ -34,4 +34,16 @@
#define default_symbol_version(real, name, version) \
__asm__ (".symver " #real "," #name "@@" #version)
#ifdef USE_VERSIONED_SYMBOLS
#define use_symbol_version(real, name, version) \
symbol_version(real, name, version)
#define use_default_symbol_version(real, name, version) \
default_symbol_version(real, name, version)
#else
#define use_symbol_version(real, name, version) /* nothing */
#define use_default_symbol_version(real, name, version) \
__asm__ (".weak " #name); \
__asm__ (".set " #name "," #real)
#endif
#endif /* __ALSA_SYMBOLS_H */

View file

@ -2,6 +2,12 @@ SUBDIRS=control mixer pcm rawmidi timer hwdep seq instr compat conf
EXTRA_DIST=Versions
COMPATNUM=@LIBTOOL_VERSION_INFO@
if VERSIONED_SYMBOLS
VSYMS = -Wl,--version-script=Versions
else
VSYMS =
endif
lib_LTLIBRARIES = libasound.la
libasound_la_SOURCES = conf.c confmisc.c input.c output.c async.c error.c dlmisc.c
libasound_la_LIBADD = control/libcontrol.la mixer/libmixer.la pcm/libpcm.la \
@ -10,7 +16,7 @@ libasound_la_LIBADD = control/libcontrol.la mixer/libmixer.la pcm/libpcm.la \
compat/libcompat.la -lm -ldl -lpthread
libasound_la_LDFLAGS = -version-info $(COMPATNUM)
LDFLAGS = -Wl,--version-script=Versions
LDFLAGS = $(VSYMS)
control/libcontrol.la:
$(MAKE) -C control libcontrol.la

View file

@ -1022,7 +1022,7 @@ snd_pcm_sframes_t snd_pcm_forward(snd_pcm_t *pcm, snd_pcm_uframes_t frames)
assert(frames > 0);
return pcm->fast_ops->forward(pcm->fast_op_arg, frames);
}
default_symbol_version(__snd_pcm_forward, snd_pcm_forward, ALSA_0.9.0rc8);
use_default_symbol_version(__snd_pcm_forward, snd_pcm_forward, ALSA_0.9.0rc8);
/**
* \brief Write interleaved frames to a PCM
@ -1555,7 +1555,7 @@ const char *snd_pcm_type_name(snd_pcm_type_t type)
return NULL;
return snd_pcm_type_names[type];
}
default_symbol_version(__snd_pcm_type_name, snd_pcm_type_name, ALSA_0.9.0);
use_default_symbol_version(__snd_pcm_type_name, snd_pcm_type_name, ALSA_0.9.0);
/**
* \brief Dump current hardware setup for PCM
@ -5633,7 +5633,7 @@ void snd_pcm_status_get_trigger_htstamp(const snd_pcm_status_t *obj, snd_htimest
assert(obj && ptr);
*ptr = obj->trigger_tstamp;
}
default_symbol_version(__snd_pcm_status_get_trigger_htstamp, snd_pcm_status_get_trigger_htstamp, ALSA_0.9.0rc8);
use_default_symbol_version(__snd_pcm_status_get_trigger_htstamp, snd_pcm_status_get_trigger_htstamp, ALSA_0.9.0rc8);
/**
* \brief Get "now" timestamp from a PCM status container
@ -5659,7 +5659,7 @@ void snd_pcm_status_get_htstamp(const snd_pcm_status_t *obj, snd_htimestamp_t *p
assert(obj && ptr);
*ptr = obj->tstamp;
}
default_symbol_version(__snd_pcm_status_get_htstamp, snd_pcm_status_get_htstamp, ALSA_0.9.0rc8);
use_default_symbol_version(__snd_pcm_status_get_htstamp, snd_pcm_status_get_htstamp, ALSA_0.9.0rc8);
/**
* \brief Get delay from a PCM status container (see #snd_pcm_delay)

View file

@ -581,7 +581,7 @@ void snd_timer_params_set_exclusive(snd_timer_params_t * params, int exclusive)
else
params->flags &= ~SNDRV_TIMER_PSFLG_EXCLUSIVE;
}
default_symbol_version(__snd_timer_params_set_exclusive, snd_timer_params_set_exclusive, ALSA_0.9.0);
use_default_symbol_version(__snd_timer_params_set_exclusive, snd_timer_params_set_exclusive, ALSA_0.9.0);
/**
* \brief determine if timer has exclusive flag
@ -597,7 +597,7 @@ int snd_timer_params_get_exclusive(snd_timer_params_t * params)
assert(params);
return params->flags & SNDRV_TIMER_PSFLG_EXCLUSIVE ? 1 : 0;
}
default_symbol_version(__snd_timer_params_get_exclusive, snd_timer_params_get_exclusive, ALSA_0.9.0);
use_default_symbol_version(__snd_timer_params_get_exclusive, snd_timer_params_get_exclusive, ALSA_0.9.0);
/**
* \brief set timer ticks
@ -654,7 +654,7 @@ void snd_timer_params_set_filter(snd_timer_params_t * params, unsigned int filte
assert(params);
params->filter = filter;
}
default_symbol_version(__snd_timer_params_set_filter, snd_timer_params_set_filter, ALSA_0.9.0);
use_default_symbol_version(__snd_timer_params_set_filter, snd_timer_params_set_filter, ALSA_0.9.0);
/**
* \brief get timer event filter
@ -670,7 +670,7 @@ unsigned int snd_timer_params_get_filter(snd_timer_params_t * params)
assert(params);
return params->filter;
}
default_symbol_version(__snd_timer_params_get_filter, snd_timer_params_get_filter, ALSA_0.9.0);
use_default_symbol_version(__snd_timer_params_get_filter, snd_timer_params_get_filter, ALSA_0.9.0);
/**
* \brief set parameters for timer handle

View file

@ -236,7 +236,7 @@ int snd_timer_query_info(snd_timer_query_t *timer, snd_timer_ginfo_t *info)
assert(info);
return timer->ops->info(timer, info);
}
default_symbol_version(__snd_timer_query_info, snd_timer_query_info, ALSA_0.9.0);
use_default_symbol_version(__snd_timer_query_info, snd_timer_query_info, ALSA_0.9.0);
/**
* \brief set the timer global parameters
@ -254,7 +254,7 @@ int snd_timer_query_params(snd_timer_query_t *timer, snd_timer_gparams_t *params
assert(params);
return timer->ops->params(timer, params);
}
default_symbol_version(__snd_timer_query_params, snd_timer_query_params, ALSA_0.9.0);
use_default_symbol_version(__snd_timer_query_params, snd_timer_query_params, ALSA_0.9.0);
/**
* \brief get the timer global status
@ -272,7 +272,7 @@ int snd_timer_query_status(snd_timer_query_t *timer, snd_timer_gstatus_t *status
assert(status);
return timer->ops->status(timer, status);
}
default_symbol_version(__snd_timer_query_status, snd_timer_query_status, ALSA_0.9.0);
use_default_symbol_version(__snd_timer_query_status, snd_timer_query_status, ALSA_0.9.0);
/**
* \brief get size of the snd_timer_id_t structure in bytes