82 lines
2.9 KiB
CMake
82 lines
2.9 KiB
CMake
#
|
|
# Create a library called "CompilerRT" which includes the source files.
|
|
|
|
#INCLUDE_DIRECTORIES(
|
|
# ${CMAKE_CURRENT_BINARY_DIR}
|
|
#)
|
|
|
|
# Generic functions needed for each architecture
|
|
# libcompiler_rt.Generic.a libcompiler_rt.Optimized.a
|
|
|
|
# Generic
|
|
SET( Generic_SRCS
|
|
absvdi2.c absvsi2.c addvdi3.c addvsi3.c ashldi3.c ashrdi3.c
|
|
clzdi2.c clzsi2.c cmpdi2.c ctzdi2.c ctzsi2.c
|
|
divdc3.c divdi3.c divsc3.c ffsdi2.c
|
|
fixdfdi.c fixsfdi.c fixunsdfdi.c fixunsdfsi.c fixunssfdi.c
|
|
fixunssfsi.c floatdidf.c floatdisf.c floatundidf.c floatundisf.c
|
|
gcc_personality_v0.c lshrdi3.c moddi3.c muldc3.c muldi3.c
|
|
mulsc3.c mulvdi3.c mulvsi3.c negdi2.c negvdi2.c negvsi2.c
|
|
paritydi2.c paritysi2.c popcountdi2.c popcountsi2.c powidf2.c
|
|
powisf2.c subvdi3.c subvsi3.c ucmpdi2.c udivdi3.c
|
|
udivmoddi4.c umoddi3.c apple_versioning.c eprintf.c
|
|
)
|
|
|
|
# Optimized functions for each architecture
|
|
|
|
# Commenting out for the min until the basics are working first.
|
|
# ADD_SUBDIRECTORY( ppc )
|
|
# ADD_SUBDIRECTORY( x86_64 )
|
|
# ADD_SUBDIRECTORY( i386 )
|
|
# ADD_SUBDIRECTORY( arm )
|
|
|
|
# List of functions needed for each architecture.
|
|
SET( i386_Functions
|
|
divxc3.c fixunsxfdi.c fixunsxfsi.c fixxfdi.c floatdixf.c
|
|
floatundixf.c mulxc3.c powixf2.c clear_cache.c enable_execute_stack.c
|
|
)
|
|
|
|
SET( x86_64_Functions
|
|
absvti2.c addvti3.c ashlti3.c ashrti3.c clzti2.c cmpti2.c
|
|
ctzti2.c divti3.c divxc3.c ffsti2.c fixdfti.c fixsfti.c
|
|
fixunsdfti.c fixunssfti.c fixunsxfdi.c fixunsxfsi.c
|
|
fixunsxfti.c fixxfdi.c fixxfti.c floatdixf.c floattidf.c
|
|
floattisf.c floattixf.c floatundixf.c floatuntidf.c
|
|
floatuntisf.c floatuntixf.c lshrti3.c modti3.c multi3.c
|
|
mulvti3.c mulxc3.c negti2.c negvti2.c parityti2.c
|
|
popcountti2.c powixf2.c subvti3.c ucmpti2.c udivmodti4.c
|
|
udivti3.c umodti3.c clear_cache.c enable_execute_stack.c
|
|
)
|
|
|
|
SET( PPC_Functions
|
|
divtc3.c fixtfdi.c fixunstfdi.c floatditf.c floatunditf.c
|
|
gcc_qadd.c gcc_qdiv.c gcc_qmul.c gcc_qsub.c multc3.c
|
|
powitf2.c restFP.c saveFP.c trampoline_setup.c
|
|
clear_cache.c enable_execute_stack.c
|
|
)
|
|
|
|
SET( ARM_Functions
|
|
adddf3vfp.c addsf3vfp.c bswapdi2.c bswapsi2.c divdf3vfp.c
|
|
divsf3vfp.c eqdf2vfp.c eqsf2vfp.c extendsfdf2vfp.c
|
|
fixdfsivfp.c fixsfsivfp.c fixunsdfsivfp.c fixunssfsivfp.c
|
|
floatsidfvfp.c floatsisfvfp.c floatunssidfvfp.c floatunssisfvfp.c
|
|
gedf2vfp.c gesf2vfp.c gtdf2vfp.c gtsf2vfp.c
|
|
ledf2vfp.c lesf2vfp.c ltdf2vfp.c ltsf2vfp.c
|
|
muldf3vfp.c mulsf3vfp.c
|
|
nedf2vfp.c negdf2vfp.c negsf2vfp.c nesf2vfp.c
|
|
subdf3vfp.c subsf3vfp.c truncdfsf2vfp.c unorddf2vfp.c unordsf2vfp.c
|
|
modsi3.c umodsi3.c udivsi3.c divsi3.c switch.c
|
|
)
|
|
|
|
#FOREACH( LOOP_VAR ${Achitectures} )
|
|
# See ARCHIVE_OUTPUT_DIRECTORY docs.
|
|
#${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}/${LOOP_VAR}
|
|
#ENDFOREACH
|
|
|
|
ADD_LIBRARY( ${PROJECT_NAME}-Generic STATIC ${Generic_SRCS} )
|
|
#ADD_LIBRARY( ${PROJECT_NAME}-i386 STATIC ${i386_Functions} )
|
|
|
|
# [[debug|optimized|general]
|
|
#TARGET_LINK_LIBRARIES( ${PROJECT_NAME} ${PROJECT_NAME}-Common optimized ${PROJECT_NAME}-i386 )
|
|
|