Date: Sun, 26 Feb 2006 11:25:09 +0900
From: Hayashi Naoyuki Subject: Re: [SDL] CVS stable again, please update SDL ports Some problems are caused on Tru64 UNIX. If applying SDL12-osf1.path, these problems are fixed. 1. configure-script say "recursive mutexes... no" and "pthread semaphores... no". checking for pthreads... yes checking for recursive mutexes... no checking for pthread semaphores... no This is because it compiled without pthread_cflags and pthread_lib when checking recursive mutexes and pthread semaphores. 2. Compiling src/audio/mme/SDL_mmeaudio.c fails. cc: Severe: ./src/audio/mme/SDL_mmeaudio.c, line 25: Cannot find file <mme_api.h> specified in #include directive. (noinclfilef) #include <mme_api.h> -^ This is because BUILD_CFLAGS is wrong. 3. Compiling src/cdrom/osf/SDL_syscdrom.c fails. cc: Warning: ./src/cdrom/osf/SDL_syscdrom.c, line 176: Too few actual parameters in the invocation of the macro "SDL_stack_alloc". (toofewactuals) cdpath = SDL_stack_alloc(len); ------------------------------------^ cc: Error: ./src/cdrom/osf/SDL_syscdrom.c, line 176: Invalid expression. (badexpr) cdpath = SDL_stack_alloc(len); -----------------^ SDL_stack_alloc is defined in include/SDL_stdinc.h. #define SDL_stack_alloc(type, count) (type*)alloca(sizeof(type)*count) 4. Linking fails if running configure with --enable-x11-shared=yes. /usr/ccs/bin/ld: Warning: Unresolved: p_XData32 5. Compiling src/video/x11/SDL_x11dyn.c fails if running configure with --enable-x11-shared=no. cc: Error: ./src/video/x11/SDL_x11sym.h, line 149: In this statement, "_SmtBufferOverflow" is not declared. (undeclared) SDL_X11_SYM(1,void,_SmtBufferOverflow,(Display *dpy,register smtDisplayPtr)) ^ cc: Error: ./src/video/x11/SDL_x11sym.h, line 150: In this statement, "_SmtBufferOverflow" is not declared. (undeclared) SDL_X11_SYM(1,void,_SmtBufferOverflow,(Display *dpy,register smtDisplayPtr)) ^ cc: Error: ./src/video/x11/SDL_x11sym.h, line 150: In this statement, "_SmtIpError" is not declared. (undeclared) SDL_X11_SYM(1,void,_SmtIpError,(Display *dpy,register smtDisplayPtr, int)) ^ --HG-- extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%401442
This commit is contained in:
parent
cbc63acdb0
commit
df36fe080a
4 changed files with 59 additions and 9 deletions
53
configure.in
53
configure.in
|
@ -397,6 +397,44 @@ CheckDMEDIA()
|
|||
fi
|
||||
}
|
||||
|
||||
dnl Check whether we want to use Tru64 UNIX native audio or not
|
||||
CheckMME()
|
||||
{
|
||||
dnl Make sure we are running on an Tru64 UNIX
|
||||
case $ARCH in
|
||||
osf)
|
||||
;;
|
||||
*)
|
||||
return
|
||||
;;
|
||||
esac
|
||||
if test x$enable_audio = xyes; then
|
||||
AC_MSG_CHECKING(for MME audio support)
|
||||
MME_CFLAGS="-I/usr/include/mme"
|
||||
MME_LIBS="-lmme"
|
||||
have_mme=no
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS $MME_CFLAGS"
|
||||
AC_TRY_COMPILE([
|
||||
#include <mme_api.h>
|
||||
],[
|
||||
HWAVEOUT sound;
|
||||
],[
|
||||
have_mme=yes
|
||||
])
|
||||
CFLAGS="$save_CFLAGS"
|
||||
AC_MSG_RESULT($have_mme)
|
||||
# Set up files for the audio library
|
||||
if test x$have_mme = xyes; then
|
||||
AC_DEFINE(SDL_AUDIO_DRIVER_MMEAUDIO)
|
||||
SOURCES="$SOURCES $srcdir/src/audio/mme/*.c"
|
||||
BUILD_CFLAGS="$BUILD_CFLAGS $MME_CFLAGS"
|
||||
BUILD_LDFLAGS="$BUILD_LDFLAGS $MME_LIBS"
|
||||
have_audio=yes
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
dnl Find the ESD includes and libraries
|
||||
CheckESD()
|
||||
{
|
||||
|
@ -1555,6 +1593,11 @@ AC_HELP_STRING([--enable-pthread-sem], [use pthread semaphores [default=yes]]),
|
|||
SDL_CFLAGS="$SDL_CFLAGS $pthread_cflags"
|
||||
SDL_LIBS="$SDL_LIBS $pthread_lib"
|
||||
|
||||
# Save the original compiler flags and libraries
|
||||
ac_save_cflags="$CFLAGS"; ac_save_libs="$LIBS"
|
||||
# Add the pthread compiler flags and libraries
|
||||
CFLAGS="$CFLAGS $pthread_cflags"; LIBS="$LIBS $pthread_lib"
|
||||
|
||||
# Check to see if recursive mutexes are available
|
||||
AC_MSG_CHECKING(for recursive mutexes)
|
||||
has_recursive_mutexes=no
|
||||
|
@ -1596,6 +1639,9 @@ AC_HELP_STRING([--enable-pthread-sem], [use pthread semaphores [default=yes]]),
|
|||
AC_MSG_RESULT($have_pthread_sem)
|
||||
fi
|
||||
|
||||
# Restore the compiler flags and libraries
|
||||
CFLAGS="$ac_save_cflags"; LIBS="$ac_save_libs"
|
||||
|
||||
# Basic thread creation functions
|
||||
SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_systhread.c"
|
||||
|
||||
|
@ -1903,6 +1949,7 @@ case "$target" in
|
|||
CheckAltivec
|
||||
CheckOSS
|
||||
CheckDMEDIA
|
||||
CheckMME
|
||||
CheckALSA
|
||||
CheckARTSC
|
||||
CheckESD
|
||||
|
@ -1945,12 +1992,6 @@ case "$target" in
|
|||
SOURCES="$SOURCES $srcdir/src/audio/paudio/*.c"
|
||||
have_audio=yes
|
||||
;;
|
||||
osf)
|
||||
AC_DEFINE(SDL_AUDIO_DRIVER_MMEAUDIO)
|
||||
SOURCES="$SOURCES $srcdir/src/audio/mme/*.c"
|
||||
BUILD_LDFLAGS="$BUILD_LDFLAGS -lmme"
|
||||
have_audio=yes
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
# Set up files for the joystick library
|
||||
|
|
|
@ -173,7 +173,7 @@ int SDL_SYS_CDInit(void)
|
|||
if ( SDLcdrom != NULL ) {
|
||||
char *cdpath, *delim;
|
||||
size_t len = SDL_strlen(SDLcdrom)+1;
|
||||
cdpath = SDL_stack_alloc(len);
|
||||
cdpath = SDL_stack_alloc(char, len);
|
||||
if ( cdpath != NULL ) {
|
||||
SDL_strlcpy(cdpath, SDLcdrom, len);
|
||||
SDLcdrom = cdpath;
|
||||
|
|
|
@ -50,6 +50,15 @@
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef __osf__
|
||||
extern int _XData32(Display *,register long *,unsigned);
|
||||
extern void _XRead32(Display *,register long *,long);
|
||||
extern void _SmtBufferOverflow(Display *,register smtDisplayPtr);
|
||||
extern void _SmtIpError(Display *,register smtDisplayPtr, int);
|
||||
extern int ipAllocateData(ChannelPtr, IPCard, IPDataPtr *);
|
||||
extern int ipUnallocateAndSendData(ChannelPtr, IPCard);
|
||||
#endif
|
||||
|
||||
/* evil function signatures... */
|
||||
typedef Bool (*SDL_X11_XESetWireToEventRetType)(Display*,XEvent*,xEvent*);
|
||||
typedef int (*SDL_X11_XSynchronizeRetType)(Display*);
|
||||
|
@ -72,7 +81,7 @@ typedef int (*SDL_X11_XSetExtensionErrorHandlerType)(Display *,char *,char *);
|
|||
#define XFree pXFree
|
||||
#define _XData32 p_XData32
|
||||
|
||||
#if defined(__osf__) && defined(SDL_VIDEO_DRIVER_X11_DYNAMIC)
|
||||
#if defined(__osf__)
|
||||
#define _SmtBufferOverflow p_SmtBufferOverflow
|
||||
#define _SmtIpError p_SmtIpError
|
||||
#define ipAllocateData pipAllocateData
|
||||
|
|
|
@ -140,7 +140,7 @@ SDL_X11_SYM(1,unsigned long,_XSetLastRequestRead,(Display*,xGenericReply*))
|
|||
* These don't exist in 32-bit versions and are removed by Xlib macros, but
|
||||
* 64+ bit systems will use them.
|
||||
*/
|
||||
#if defined(LONG64) && !defined(__osf__)
|
||||
#if defined(LONG64)
|
||||
SDL_X11_SYM(1,int,_XData32,(Display *dpy,register long *data,unsigned len))
|
||||
SDL_X11_SYM(1,void,_XRead32,(Display *dpy,register long *data,long len))
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue