8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-22 20:03:02 +01:00

Forward port Solaris fixes

This commit is contained in:
skidder 2003-10-27 18:42:47 +00:00
parent 82532b52ef
commit 1be4fe1d61
5 changed files with 18 additions and 24 deletions

View File

@ -9,12 +9,12 @@
# 30-Dec-2002 nmcc FB2 initial working build on Solaris8 with gcc 3.2.1
# Firebird defines specific to Solaris (and x86) build
CFLAGS_COMMON= -DSOLARIS -DSOLARIS26 -DSOLARIS_MT -DBSD_COMP
CFLAGS_COMMON= -DSOLARIS -DSOLARIS_MT -DBSD_COMP -DEXACT_NUMERICS
# compile flags for GCC compiler
COMMON_GCC_FLAGS= -fwritable-strings -pipe -MMD -p -fPIC
DEBUG_GCC_FLAGS= -ggdb
PROD_GCC_FLAGS= -O2
COMMON_GCC_FLAGS= -pipe -MMD -p -fPIC -m32
DEBUG_GCC_FLAGS= -ggdb -DDEBUG_GDS_ALLOC -Wall -Wno-switch
PROD_GCC_FLAGS= -mcpu=ultrasparc -mtune=ultrasparc -O3 -DNDEBUG
# compile flags for SUNWspro/Forte compiler - untested nmcc dec2002
COMMON_FORTE_FLAGS= -Xt -xstrconst -mt -K PIC
@ -61,3 +61,5 @@ EMBED_UTIL_TARGETS=gstat gds_drop gds_relay gsec nbackup fb_lock_print
CLIENT_UTIL_TARGETS=gds_drop gds_delay gstat gsec fbguard fbmgr_bin nbackup fb_lock_print
Physical_IO_Module=os/posix/unix.cpp
LD=gcc

View File

@ -1,4 +1,4 @@
dnl $Id: configure.in,v 1.166 2003-10-27 17:53:30 alexpeshkoff Exp $
dnl $Id: configure.in,v 1.167 2003-10-27 18:42:42 skidder Exp $
dnl ############################# INITIALISATION ###############################
@ -407,7 +407,8 @@ fi
AC_CHECK_SIZEOF(void*)
AC_CHECK_SIZEOF(long)
AC_CHECK_TYPES([socklen_t,semun])
AC_CHECK_TYPES([socklen_t],,,[#include <sys/socket.h>])
AC_CHECK_TYPES([semun])
if test "$ac_cv_type_semun" = "no"; then
AC_MSG_CHECKING(if sem.h defines semun)
AC_TRY_COMPILE([#include <sys/types.h>
@ -729,6 +730,7 @@ case "$PLATFORM" in
],[chmod a+x gen/install/scripts/*.sh gen/install/*sh 2>/dev/null])
;;
SINIX-Z)
AC_CONFIG_FILES([gen/install/pkginfo:builds/install/arch-specific/sinixz/pkginfo.in
gen/install/prototype:builds/install/arch-specific/sinixz/prototype.in

View File

@ -49,7 +49,7 @@
*
*/
/*
$Id: common.h,v 1.89 2003-10-14 13:10:03 eku Exp $
$Id: common.h,v 1.90 2003-10-27 18:42:45 skidder Exp $
*/
#ifndef JRD_COMMON_H
@ -412,16 +412,6 @@ static inline int sinixz_sigaction(int sig, const struct sinixz_sigaction *act,
**********/
#ifndef SOLARIS26
/* If our build platform is at least Solaris release 2.6, then unistd.h
declares these functions, so we must not define them with macros.
*/
#define setreuid(ruid,euid) ((setuid (ruid) == -1 || seteuid (euid) == -1) ? -1 : 0)
#define setregid(rgid,egid) ((setgid (rgid) == -1 || setegid (egid) == -1) ? -1 : 0)
#endif
/* The following define is the prefix to go in front of a "d" or "u"
format item in a ib_printf() format string, to indicate that the argument
is an SINT64 or UINT64. */

View File

@ -39,7 +39,7 @@
*/
/*
$Id: lock.cpp,v 1.74 2003-09-22 17:53:29 brodsom Exp $
$Id: lock.cpp,v 1.75 2003-10-27 18:42:46 skidder Exp $
*/
#include "firebird.h"
@ -1591,7 +1591,7 @@ static UCHAR *alloc( SSHORT size, ISC_STATUS * status_vector)
**************************************/
ULONG block;
size = FB_ALIGN(size, sizeof(IPTR));
size = FB_ALIGN(size, ALIGNMENT);
ASSERT_ACQUIRED;
block = LOCK_header->lhb_used;
LOCK_header->lhb_used += size;
@ -3299,7 +3299,7 @@ static void lock_initialize( void *arg, SH_MEM shmem_data, int initialize)
sizeof(lhb) +
(LOCK_header->lhb_hash_slots * sizeof(LOCK_header->lhb_hash[0]));
LOCK_header->lhb_length = shmem_data->sh_mem_length_mapped;
LOCK_header->lhb_used = FB_ALIGN(length, sizeof(IPTR));
LOCK_header->lhb_used = FB_ALIGN(length, ALIGNMENT);
SHB secondary_header;

View File

@ -177,18 +177,18 @@ typedef struct srq {
// STATIC_SEMAPHORES - preallocate semaphores for UNIX events
// if undefined UNIX events allocate semaphores dynamically
#if defined UNIX && !defined SUPERSERVER
#if defined UNIX && (!defined SUPERSERVER && !defined MULTI_THREAD)
#define USE_STATIC_SEMAPHORES
#endif
// USE_BLOCKING_THREAD - use thread to handle blocking ASTs
// real UNIX guys use signals instead
#if defined WIN_NT && !defined SUPERSERVER
// real UNIX guys use signals instead - but their CS is not MT
#if (defined WIN_NT || defined SOLARIS_MT) && !defined SUPERSERVER
#define USE_BLOCKING_THREAD
#endif
// USE_BLOCKING_SIGNALS - use UNIX signals to deliver blocking ASTs
#if !defined WIN_NT && !defined SUPERSERVER
#if !defined WIN_NT && !defined SOLARIS_MT && !defined SUPERSERVER
#define USE_BLOCKING_SIGNALS
#endif