)
add_dependencies(daccess dactablerva_header)
-endif()
+endif(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_FREEBSD OR CLR_CMAKE_HOST_NETBSD OR CLR_CMAKE_HOST_SUNOS)
if(CLR_CMAKE_HOST_SUNOS)
# Add linker exports file option
set(EXPORTS_LINKER_OPTION -Wl,-M,${EXPORTS_FILE})
-endif()
+endif(CLR_CMAKE_HOST_SUNOS)
add_library_clr(dbgshim SHARED ${DBGSHIM_SOURCES})
if(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_FREEBSD OR CLR_CMAKE_HOST_NETBSD OR CLR_CMAKE_HOST_SUNOS)
generate_exports_file(${DEF_SOURCES} ${EXPORTS_FILE})
- endif()
+ endif(CLR_CMAKE_HOST_OSX OR CLR_CMAKE_HOST_FREEBSD OR CLR_CMAKE_HOST_NETBSD OR CLR_CMAKE_HOST_SUNOS)
if(CLR_CMAKE_HOST_LINUX)
# Add linker exports file option
set(EXPORTS_LINKER_OPTION -Wl,--version-script=${EXPORTS_FILE})
-endif()
+endif(CLR_CMAKE_HOST_LINUX OR CLR_CMAKE_HOST_FREEBSD OR CLR_CMAKE_HOST_NETBSD)
if(CLR_CMAKE_HOST_OSX)
# Add linker exports file option
set(EXPORTS_LINKER_OPTION -Wl,-exported_symbols_list,${EXPORTS_FILE})
-endif()
+endif(CLR_CMAKE_HOST_OSX)
if(CLR_CMAKE_HOST_SUNOS)
# Add linker exports file option
set(EXPORTS_LINKER_OPTION -Wl,-M,${EXPORTS_FILE})
-endif()
+endif(CLR_CMAKE_HOST_SUNOS)
# Create object library to enable creation of proper dependency of mscordaccore.exp on mscordac.obj and
# mscordaccore on both the mscordaccore.exp and mscordac.obj.
if(CLR_CMAKE_HOST_SUNOS)
# Add linker exports file option
set(EXPORTS_LINKER_OPTION -Wl,-M,${EXPORTS_FILE})
-endif()
+endif(CLR_CMAKE_HOST_SUNOS)
add_library_clr(mscordbi SHARED ${MSCORDBI_SOURCES})
target_precompile_header(TARGET mscordbi HEADER stdafx.h)
if(CLR_CMAKE_TARGET_ANDROID AND CLR_CMAKE_HOST_ARCH_ARM)
set(EXPORTS_LINKER_OPTION "${EXPORTS_LINKER_OPTION} -Wl,--no-warn-shared-textrel")
- endif()
+ endif(CLR_CMAKE_TARGET_ANDROID AND CLR_CMAKE_HOST_ARCH_ARM)
if(CLR_CMAKE_HOST_SUNOS)
# Add linker exports file option
set(EXPORTS_LINKER_OPTION -Wl,-M,${EXPORTS_FILE})
- endif()
+ endif(CLR_CMAKE_HOST_SUNOS)
endif (CLR_CMAKE_HOST_WIN32)
# ensure proper resolving of circular references between a subset of the libraries.
set(START_LIBRARY_GROUP -Wl,--start-group)
set(END_LIBRARY_GROUP -Wl,--end-group)
-endif()
+endif(CLR_CMAKE_HOST_LINUX OR CLR_CMAKE_HOST_FREEBSD OR CLR_CMAKE_HOST_NETBSD OR CLR_CMAKE_HOST_SUNOS)
_add_executable(ilasm
${ILASM_SOURCES}
# ensure proper resolving of circular references between a subset of the libraries.
set(START_LIBRARY_GROUP -Wl,--start-group)
set(END_LIBRARY_GROUP -Wl,--end-group)
-endif()
+endif(CLR_CMAKE_HOST_LINUX OR CLR_CMAKE_HOST_FREEBSD OR CLR_CMAKE_HOST_NETBSD OR CLR_CMAKE_HOST_SUNOS)
_add_executable(ildasm
${ILDASM_SOURCES}
elseif(CLR_CMAKE_HOST_SUNOS)
# Add linker exports file option
set(JIT_EXPORTS_LINKER_OPTION -Wl,-M,${JIT_EXPORTS_FILE})
- endif()
+ endif(CLR_CMAKE_HOST_SUNOS)
set(SHARED_LIB_SOURCES ${SOURCES})
endif()
if(CLR_CMAKE_TARGET_OSX OR CLR_CMAKE_TARGET_FREEBSD)
# On OSX and *BSD, we use the libunwind that's part of the OS
set(CLR_CMAKE_USE_SYSTEM_LIBUNWIND 1)
-endif()
+endif(CLR_CMAKE_TARGET_OSX OR CLR_CMAKE_TARGET_FREEBSD)
if(NOT DEFINED ENV{ROOTFS_DIR})
include_directories(SYSTEM /usr/local/include)
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU")
add_compile_options(-Wno-unused-result)
-endif()
+endif(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
set(ARCH_SOURCES
arch/${PAL_ARCH_SOURCES_DIR}/context2.S
#if HAVE_MACH_EXCEPTIONS
return pthrCurrent->EnableMachExceptions();
#elif defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__sun)
- // TODO: This needs to be implemented. Cannot put an ASSERT here
- // because it will make other parts of PAL fail.
return NO_ERROR;
#else// HAVE_MACH_EXCEPTIONS
#error not yet implemented
{
#if HAVE_MACH_EXCEPTIONS
return pthrCurrent->DisableMachExceptions();
- // TODO: This needs to be implemented. Cannot put an ASSERT here
- // because it will make other parts of PAL fail.
#elif defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__sun)
return NO_ERROR;
#else // HAVE_MACH_EXCEPTIONS
#define FPREG_StatusWord(uc) (FPREG_Fpstate(uc)->sw)
#define FPREG_MxCsr_Mask(uc) (FPREG_Fpstate(uc)->mxcsr_mask)
-// on Solaris, fctw and __fx_rsvd are uint8_t, whereas on linux ftw is uint16_t,
-// so we use split and join these two uint8_t members at callsites.
+// on SunOS, fctw and __fx_rsvd are uint8_t, whereas on linux ftw is uint16_t,
+// so we use split and join technique for these two uint8_t members at call sites.
#define FPREG_TagWord1(uc) (FPREG_Fpstate(uc)->fctw)
#define FPREG_TagWord2(uc) (FPREG_Fpstate(uc)->__fx_rsvd)
#else
}
#undef ASSIGN_REG
-#if (HAVE_GREGSET_T || HAVE_GREGSET_T) && !HAVE_FPREGS_WITH_CW
+#if !HAVE_FPREGS_WITH_CW
+#if HAVE_GREGSET_T || HAVE_GREGSET_T
#if HAVE_GREGSET_T
if (native->uc_mcontext.fpregs == nullptr)
#elif HAVE___GREGSET_T
if (native->uc_mcontext.__fpregs == nullptr)
-#endif
+#endif // HAVE_GREGSET_T
{
// If the pointer to the floating point state in the native context
// is not valid, we can't copy floating point registers regardless of
// whether CONTEXT_FLOATING_POINT is set in the CONTEXT's flags.
return;
}
-#endif
+#endif // HAVE_GREGSET_T || HAVE_GREGSET_T
+#endif // !HAVE_FPREGS_WITH_CW
if ((lpContext->ContextFlags & CONTEXT_FLOATING_POINT) == CONTEXT_FLOATING_POINT)
{
}
#undef ASSIGN_REG
-#if (HAVE_GREGSET_T || HAVE___GREGSET_T) && !HAVE_FPREGS_WITH_CW
+#if !HAVE_FPREGS_WITH_CW
+#if HAVE_GREGSET_T || HAVE___GREGSET_T
#if HAVE_GREGSET_T
if (native->uc_mcontext.fpregs == nullptr)
#elif HAVE___GREGSET_T
if (native->uc_mcontext.__fpregs == nullptr)
-#endif
+#endif // HAVE_GREGSET_T
{
// Reset the CONTEXT_FLOATING_POINT bit(s) and the CONTEXT_XSTATE bit(s) so it's
// clear that the floating point and extended state data in the CONTEXT is not
// Bail out regardless of whether the caller wanted CONTEXT_FLOATING_POINT or CONTEXT_XSTATE
return;
}
-#endif
+#endif // HAVE_GREGSET_T || HAVE___GREGSET_T
+#endif // !HAVE_FPREGS_WITH_CW
if ((contextFlags & CONTEXT_FLOATING_POINT) == CONTEXT_FLOATING_POINT)
{
if(CLR_CMAKE_TARGET_LINUX OR CLR_CMAKE_TARGET_FREEBSD OR CLR_CMAKE_TARGET_NETBSD)
set(EXPORTS_LINKER_OPTION1 -Wl,--version-script=${EXPORTS_FILE1})
-endif()
+endif(CLR_CMAKE_TARGET_LINUX OR CLR_CMAKE_TARGET_FREEBSD OR CLR_CMAKE_TARGET_NETBSD)
if(CLR_CMAKE_TARGET_OSX)
set(EXPORTS_LINKER_OPTION1 -Wl,-exported_symbols_list,${EXPORTS_FILE1})
-endif()
+endif(CLR_CMAKE_HOST_OSX)
if(CLR_CMAKE_HOST_SUNOS)
# Add linker exports file option
set(EXPORTS_LINKER_OPTION -Wl,-M,${EXPORTS_FILE})
-endif()
+endif(CLR_CMAKE_HOST_SUNOS)
set(DLL1SOURCES dlltest1.cpp)
add_library(paltest_pal_sxs_test1_dll1 SHARED ${DLL1SOURCES})
# ensure proper resolving of circular references between a subset of the libraries.
set(START_LIBRARY_GROUP -Wl,--start-group)
set(END_LIBRARY_GROUP -Wl,--end-group)
-endif()
+endif(CLR_CMAKE_HOST_LINUX OR CLR_CMAKE_HOST_FREEBSD OR CLR_CMAKE_HOST_NETBSD OR CLR_CMAKE_HOST_SUNOS)
target_link_libraries(crossgen
${START_LIBRARY_GROUP} # Start group of libraries that have circular references