mirror of
https://github.com/autc04/Retro68.git
synced 2025-01-25 21:32:42 +00:00
libretro: use separate library file names for Carbon and Classic PPC
This commit is contained in:
parent
bf9cba16b8
commit
a135f0b196
@ -494,6 +494,11 @@ for arch in $ARCHS; do
|
|||||||
"$PREFIX/bin/${arch}-apple-macos-ar" cqs "$PREFIX/${arch}-apple-macos/lib/libretrocrt.a"
|
"$PREFIX/bin/${arch}-apple-macos-ar" cqs "$PREFIX/${arch}-apple-macos/lib/libretrocrt.a"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
if [ ! -e "$PREFIX/powerpc-apple-macos/lib/libretrocrt-carbon.a" ]; then
|
||||||
|
echo "Creating dummy libretrocrt-carbon.a for $arch..."
|
||||||
|
"$PREFIX/bin/powerpc-apple-macos-ar" cqs "$PREFIX/powerpc-apple-macos/lib/libretrocrt-carbon.a"
|
||||||
|
fi
|
||||||
|
|
||||||
# the real libretrocrt.a is built and installed by
|
# the real libretrocrt.a is built and installed by
|
||||||
# `cmake --build build-target --target install` later
|
# `cmake --build build-target --target install` later
|
||||||
|
|
||||||
|
@ -169,9 +169,9 @@
|
|||||||
%{shared:-bM:SRE}"
|
%{shared:-bM:SRE}"
|
||||||
|
|
||||||
#define LIB_SPEC "-lc"
|
#define LIB_SPEC "-lc"
|
||||||
#define LIBGCC_SPEC "-lgcc -lretrocrt -lgcc %{carbon: -lCarbonLib} %{!carbon: -lInterfaceLib}"
|
#define LIBGCC_SPEC "-lgcc %{carbon: -lretrocrt-carbon} %{!carbon: -lretrocrt} -lgcc %{carbon: -lCarbonLib} %{!carbon: -lInterfaceLib}"
|
||||||
|
|
||||||
#define LINK_GCC_C_SEQUENCE_SPEC "--start-group -lgcc -lc -lretrocrt %{carbon: -lCarbonLib} %{!carbon: -lInterfaceLib} --end-group"
|
#define LINK_GCC_C_SEQUENCE_SPEC "--start-group -lgcc -lc %{carbon: -lretrocrt-carbon} %{!carbon: -lretrocrt} %{carbon: -lCarbonLib} %{!carbon: -lInterfaceLib} --end-group"
|
||||||
|
|
||||||
#undef STARTFILE_SPEC
|
#undef STARTFILE_SPEC
|
||||||
#define STARTFILE_SPEC ""
|
#define STARTFILE_SPEC ""
|
||||||
|
@ -78,3 +78,9 @@ set_target_properties(retrocrt
|
|||||||
COMPILE_OPTIONS -ffunction-sections)
|
COMPILE_OPTIONS -ffunction-sections)
|
||||||
|
|
||||||
install(TARGETS retrocrt DESTINATION lib)
|
install(TARGETS retrocrt DESTINATION lib)
|
||||||
|
|
||||||
|
# different library name for Carbon
|
||||||
|
# (Carbon shares the powerpc-apple-macos/ directory with Classic PPC)
|
||||||
|
if(CMAKE_SYSTEM_NAME MATCHES RetroCarbon)
|
||||||
|
set_target_properties(retrocrt PROPERTIES OUTPUT_NAME retrocrt-carbon)
|
||||||
|
endif()
|
||||||
|
@ -85,17 +85,17 @@ ssize_t _read_r(struct _reent *reent, int fd, void *buf, size_t count)
|
|||||||
int _open_r(struct _reent *reent, const char* name, int flags, int mode)
|
int _open_r(struct _reent *reent, const char* name, int flags, int mode)
|
||||||
{
|
{
|
||||||
Str255 pname;
|
Str255 pname;
|
||||||
/*#if TARGET_API_MAC_CARBON
|
#if TARGET_API_MAC_CARBON
|
||||||
// Carbon has the new, sane version.
|
// Carbon has the new, sane version.
|
||||||
c2pstrcpy(pname,name);
|
c2pstrcpy(pname,name);
|
||||||
#else*/
|
#else
|
||||||
// It is also availble in various glue code libraries and
|
// It is also availble in various glue code libraries and
|
||||||
// in some versions of InterfaceLib, but it's confusing.
|
// in some versions of InterfaceLib, but it's confusing.
|
||||||
// Using the inplace variant, c2pstr, isn't much better than
|
// Using the inplace variant, c2pstr, isn't much better than
|
||||||
// doing things by hand:
|
// doing things by hand:
|
||||||
strncpy(&pname[1],name,255);
|
strncpy(&pname[1],name,255);
|
||||||
pname[0] = strlen(name);
|
pname[0] = strlen(name);
|
||||||
//#endif
|
#endif
|
||||||
short ref;
|
short ref;
|
||||||
|
|
||||||
SInt8 permission;
|
SInt8 permission;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user