- Timestamp:
- Jul 26, 2007 4:26:39 PM (17 years ago)
- Location:
- trunk/src
- Files:
-
- 17 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Makefile.kmk
r3765 r3888 442 442 endif 443 443 444 ifeq ($(BUILD_TARGET),solaris) 445 Drivers_SOURCES := $(filter-out \ 446 Storage/DrvHost% \ 447 , $(Drivers_SOURCES)) 448 Drivers_SOURCES.os2 = 449 endif 450 444 451 Drivers_SOURCES.win = \ 445 452 Network/DrvTAPWin32.cpp \ -
trunk/src/VBox/HostDrivers/Support/Makefile.kmk
r3621 r3888 37 37 SYSMODS.win += VBoxDrv 38 38 SYSMODS.os2 += VBoxDrv 39 SYSMODS.solaris += vboxdrv 39 40 endif 40 41 … … 245 246 246 247 248 # 249 # vboxdrv.o - The Solaris Kernel Module. 250 # 251 ifeq ($(BUILD_TARGET),solaris) 252 vboxdrv_TEMPLATE = VBOXR0DRV 253 vboxdrv_DEFS = IN_RT_R0 IN_SUP_R0 USE_NEW_OS_INTERFACE 254 vboxdrv_INCS := $(PATH_SUB_CURRENT) 255 vboxdrv_LIBS = $(PATH_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB) 256 vboxdrv_SOURCES = \ 257 $(BUILD_TARGET)/SUPDrv-$(BUILD_TARGET).c 258 # SUPDRVShared.c 259 endif # solaris 260 261 247 262 include $(PATH_KBUILD)/subfooter.kmk 248 263 -
trunk/src/VBox/HostDrivers/Support/SUPDRV.h
r3672 r3888 96 96 # include <iprt/string.h> 97 97 98 #elif defined(RT_OS_SOLARIS) 99 # include <iprt/string.h> 100 98 101 #else 99 102 # error "unsupported OS." … … 176 179 177 180 /* No log API in OS/2 only COM port. */ 181 # define OSDBGPRINT(a) printf a 182 183 184 /* 185 * Solaris 186 */ 187 #elif defined(RT_OS_SOLARIS) 178 188 # define OSDBGPRINT(a) printf a 179 189 … … 577 587 uint16_t Alignment; /**< Alignment */ 578 588 #endif 579 #if defined(RT_OS_DARWIN) || defined(RT_OS_OS2) 589 #if defined(RT_OS_DARWIN) || defined(RT_OS_OS2) || defined(RT_OS_SOLARIS) 580 590 /** Pointer to the next session with the same hash. */ 581 591 PSUPDRVSESSION pNextHash; -
trunk/src/VBox/Runtime/Makefile.kmk
r3707 r3888 396 396 timesup.cpp \ 397 397 398 RuntimeR3_SOURCES.solaris = \ 399 generic/RTDirQueryInfo-generic.cpp \ 400 generic/RTDirSetTimes-generic.cpp \ 401 generic/RTFileMove-generic.cpp \ 402 generic/RTLogWriteDebugger-generic.cpp \ 403 generic/RTTimerCreate-generic.cpp \ 404 generic/pathhost-generic.cpp \ 405 generic/sched-generic.cpp \ 406 generic/uuid-generic.cpp \ 407 r3/solaris/alloc-solaris.cpp \ 408 r3/posix/dir-posix.cpp \ 409 r3/posix/env-posix.cpp \ 410 r3/posix/fileio-posix.cpp \ 411 r3/posix/filelock-posix.cpp \ 412 r3/posix/fs-posix.cpp \ 413 r3/posix/ldrNative-posix.cpp \ 414 r3/posix/path-posix.cpp \ 415 r3/posix/process-posix.cpp \ 416 r3/posix/rand-posix.cpp \ 417 r3/posix/sems-posix.cpp \ 418 r3/posix/system-posix.cpp \ 419 r3/posix/thread-posix.cpp \ 420 r3/posix/time-posix.cpp \ 421 r3/posix/timelocal-posix.cpp \ 422 r3/posix/timer-posix.cpp \ 423 r3/posix/RTTimeNow-posix.cpp \ 424 generic/utf16locale-generic.cpp \ 425 r3/posix/utf8-posix.cpp \ 426 timesup.cpp \ 427 428 398 429 ## PORTME: Porters add their selection of platform specific files for Ring-3 here. 399 430 … … 729 760 r0drv/linux/thread-r0drv-linux.c 730 761 762 # SOLARISTODO - Todo for Solaris 763 # RuntimeR0Drv_SOURCES.solaris = \ 764 # generic/RTAssertDoBreakpoint-generic.cpp \ 765 # r0drv/solaris/alloc-r0drv-solaris.c \ 766 # r0drv/solaris/initterm-r0drv-solaris.c 767 768 731 769 RuntimeR0Drv_SOURCES.win = \ 732 770 generic/RTAssertDoBreakpoint-generic.cpp \ -
trunk/src/VBox/Runtime/VBox/log-vbox.cpp
r3672 r3888 126 126 # if defined(RT_OS_WINDOWS) 127 127 # include <Windows.h> 128 # elif defined(RT_OS_LINUX) 128 # elif defined(RT_OS_LINUX) || defined(RT_OS_SOLARIS) 129 129 # include <unistd.h> 130 130 # elif defined(RT_OS_L4) … … 300 300 RTLogLoggerEx(pLogger, 0, ~0U, "Commandline: %ls\n", GetCommandLineW()); 301 301 302 # elif defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) 302 # elif defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) || defined(RT_OS_SOLARIS) 303 303 # ifdef RT_OS_LINUX 304 304 FILE *pFile = fopen("/proc/self/cmdline", "r"); 305 # else 305 # elif defined(RT_OS_SOLARIS) 306 /* 307 * I have a sinking feeling solaris' psinfo format could be different from cmdline 308 * Must check at run time and possible just ignore this section for solaris 309 */ 310 char szArgFileBuf[80]; 311 RTStrPrintf(szArgFileBuf, sizeof(szArgFileBuf), "/proc/%ld/psinfo", (long)getpid()); 312 FILE* pFile = fopen(szArgFileBuf, "r"); 313 # else /* RT_OS_FREEBSD: */ 306 314 FILE *pFile = fopen("/proc/curproc/cmdline", "r"); 307 # endif 315 # endif 308 316 if (pFile) 309 317 { -
trunk/src/VBox/Runtime/r3/posix/dir-posix.cpp
r2981 r3888 44 44 #include "internal/path.h" 45 45 46 #if !defined(RT_OS_SOLARIS) 47 # define HAVE_DIRENT_D_TYPE 1 48 #endif 49 46 50 47 51 RTDECL(bool) RTDirExists(const char *pszPath) … … 225 229 226 230 231 #ifdef HAVE_DIRENT_D_TYPE 227 232 /** 228 233 * Converts the d_type field to IPRT directory entry type. … … 249 254 } 250 255 } 256 #endif /*HAVE_DIRENT_D_TYPE */ 251 257 252 258 … … 295 301 */ 296 302 pDirEntry->INodeId = pDir->Data.d_ino; /* may need #ifdefing later */ 303 #ifdef HAVE_DIRENT_D_TYPE 297 304 pDirEntry->enmType = rtDirType(pDir->Data.d_type); 305 #else 306 pDirEntry->enmType = RTDIRENTRYTYPE_UNKNOWN; 307 #endif 298 308 pDirEntry->cbName = (uint16_t)cchName; 299 309 Assert(pDirEntry->cbName == cchName); … … 416 426 if (RT_FAILURE(rc)) 417 427 { 428 #ifdef HAVE_DIRENT_D_TYPE 418 429 rtDirSetDummyInfo(&pDirEntry->Info, rtDirType(pDir->Data.d_type)); 430 #else 431 rtDirSetDummyInfo(&pDirEntry->Info, RTDIRENTRYTYPE_UNKNOWN); 432 #endif 419 433 rc = VWRN_NO_DIRENT_INFO; 420 434 } -
trunk/src/VBox/Runtime/r3/posix/fileio-posix.cpp
r3672 r3888 45 45 /* This is currently ifdef'ed out in the relevant L4 header file */ 46 46 /* Same as `utimes', but takes an open file descriptor instead of a name. */ 47 extern int futimes (int __fd, __const struct timeval __tvp[2]) __THROW; 47 extern int futimes(int __fd, __const struct timeval __tvp[2]) __THROW; 48 #endif 49 50 #ifdef RT_OS_SOLARIS 51 # define futimes(filedes, timeval) futimesat(filedes, NULL, timeval) 52 # define RTTIME_INCL_TIMEVAL /** @todo remove me after fixing iprt/time.h */ 48 53 #endif 49 54 -
trunk/src/VBox/Runtime/r3/posix/path-posix.cpp
r3672 r3888 34 34 #ifdef RT_OS_DARWIN 35 35 # include <mach-o/dyld.h> 36 #endif 37 #ifdef RT_OS_SOLARIS 38 # define RTTIME_INCL_TIMEVAL /** @todo remove me after fixing iprt/time.h */ 36 39 #endif 37 40 … … 408 411 */ 409 412 /** @todo use RTProcGetExecutableName() */ 410 #if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) 413 #if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) || defined(RT_OS_SOLARIS) 411 414 # ifdef RT_OS_LINUX 412 415 int cchLink = readlink("/proc/self/exe", &g_szrtProgramPath[0], sizeof(g_szrtProgramPath) - 1); 413 # else 416 # elif defined(RT_OS_SOLARIS) 417 pid_t curProcId = getpid(); 418 char szFileBuf[PATH_MAX + 1]; 419 sprintf(szFileBuf, "/proc/%ld/path/a.out", curProcId); 420 int cchLink = readlink(szFileBuf, &g_szrtProgramPath[0], sizeof(g_szrtProgramPath) - 1); 421 # else /* RT_OS_FREEBSD: */ 414 422 int cchLink = readlink("/proc/curproc/file", &g_szrtProgramPath[0], sizeof(g_szrtProgramPath) - 1); 415 423 # endif -
trunk/src/VBox/Runtime/r3/posix/process-posix.cpp
r3672 r3888 237 237 * files and code for this. 238 238 */ 239 #if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) 239 #if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) || defined(RT_OS_SOLARIS) 240 240 # ifdef RT_OS_LINUX 241 241 int cchLink = readlink("/proc/self/exe", pszExecName, cchExecName - 1); 242 # else 242 # elif defined(RT_OS_SOLARIS) 243 char szFileBuf[80]; 244 RTStrPrintf(szFileBuf, sizeof(szFileBuf), "/proc/%ld/path/a.out", (long)getpid()); 245 int cchLink = readlink(szFileBuf, pszExecName, cchExecName - 1); 246 # else 243 247 int cchLink = readlink("/proc/curproc/file", pszExecName, cchExecName - 1); 244 # endif 248 # endif 245 249 if (cchLink > 0 && (size_t)cchLink <= cchExecName - 1) 246 250 { -
trunk/src/VBox/Runtime/r3/posix/sems-posix.cpp
r3672 r3888 38 38 #endif 39 39 40 #ifdef RT_OS_SOLARIS 41 # include <sched.h> 42 # define pthread_yield() sched_yield() 43 #endif 44 40 45 41 46 /******************************************************************************* -
trunk/src/VBox/Runtime/r3/posix/system-posix.cpp
r2981 r3888 28 28 29 29 #include <unistd.h> 30 #include <sys/sysctl.h> 30 #if !defined(RT_OS_SOLARIS) 31 # include <sys/sysctl.h> 32 #endif 31 33 32 34 … … 39 41 { 40 42 int cCpus; NOREF(cCpus); 41 43 42 44 /* 43 45 * The sysconf way (linux and others). -
trunk/src/VBox/Runtime/r3/posix/thread-posix.cpp
r3672 r3888 28 28 #include <pthread.h> 29 29 #include <signal.h> 30 #if defined(RT_OS_SOLARIS) 31 # include <sched.h> 32 #endif 30 33 31 34 #include <iprt/thread.h> … … 205 208 #elif defined(RT_OS_FREEBSD) /* void pthread_yield */ 206 209 pthread_yield(); 210 #elif defined(RT_OS_SOLARIS) 211 sched_yield(); 207 212 #else 208 213 if (!pthread_yield()) … … 238 243 #ifdef RT_OS_DARWIN 239 244 pthread_yield_np(); 245 #elif defined(RT_OS_SOLARIS) 246 sched_yield(); 240 247 #else 241 248 pthread_yield(); -
trunk/src/VBox/VMM/Makefile.kmk
r3857 r3888 164 164 VBoxVMM_LDFLAGS.linux = -Wl,--no-undefined 165 165 VBoxVMM_LDFLAGS.darwin = -install_name @executable_path/VBoxVMM.dylib 166 VBoxVMM_LDFLAGS.solaris = -mimpure-text 166 167 167 168 -
trunk/src/recompiler/InnoTek/config-host.h
r3726 r3888 36 36 /*# define CONFIG_BSD*/ 37 37 # elif defined(RT_OS_SOLARIS) 38 /*# define CONFIG_SUN*/ 38 # define CONFIG_SOLARIS 39 39 # elif !defined(IPRT_NO_CRT) 40 40 # define HAVE_BYTESWAP_H 1 -
trunk/src/recompiler/InnoTek/crt/stdio.h
r2981 r3888 20 20 */ 21 21 22 #ifndef __ stdio_h__23 #define __ stdio_h__22 #ifndef ___InnoTek_stdio_h 23 #define ___InnoTek_stdio_h 24 24 25 25 #ifndef LOG_GROUP … … 41 41 42 42 typedef struct FILE FILE; 43 44 #if defined(RT_OS_SOLARIS) 45 /** @todo check solaris' floatingpoint.h as to why we do this */ 46 # define _FILEDEFED 47 #endif 43 48 44 49 DECLINLINE(int) fprintf(FILE *ignored, const char *pszFormat, ...) -
trunk/src/recompiler/Makefile.kmk
r3533 r3888 68 68 ifeq ($(BUILD_TARGET_ARCH),amd64) 69 69 REM_USE_NOCRT := 1 70 endif 71 72 # 73 # We need to figure out the solaris version. 74 # 75 ifeq ($(BUILD_TARGET),solaris) 76 ifndef HOST_SOLARIS 77 # fixme- HOST_SOLARIS := $(shell uname ... | $(SED_EXT)... ) 78 endif 70 79 endif 71 80 … … 197 206 $(REM_MOD)_LDFLAGS.os2 = -Zomf 198 207 $(REM_MOD)_LDFLAGS.debug = -g 208 $(REM_MOD)_LDFLAGS.solaris = -mimpure-text 209 $(REM_MOD)_DEFS.solaris += HOST_SOLARIS=$(HOST_SOLARIS) 199 210 ifeq ($(BUILD_TARGET_ARCH),amd64) 200 211 $(REM_MOD)_LIBS = $(FILE_TOOL_GCC3_LIBGCC) -
trunk/src/recompiler/fpu/softfloat-native.c
r1 r3888 7 7 { 8 8 STATUS(float_rounding_mode) = val; 9 #if defined(_BSD) && !defined(__APPLE__) || (defined(HOST_SOLARIS) && HOST_SOLARIS < 10)9 #if defined(_BSD) && !defined(__APPLE__) || (defined(HOST_SOLARIS) && (HOST_SOLARIS < 10 || HOST_SOLARIS == 11)) 10 10 fpsetround(val); 11 11 #elif defined(__arm__)
Note:
See TracChangeset
for help on using the changeset viewer.