public inbox for crossgcc@sourceware.org
 help / color / mirror / Atom feed
* Patches for eglibc to support cygwin host
       [not found] <4F647CC3.60004@cs.utoronto.ca>
@ 2012-03-22 15:03 ` Ryan Johnson
  2012-03-27 20:56   ` Khem Raj
  0 siblings, 1 reply; 3+ messages in thread
From: Ryan Johnson @ 2012-03-22 15:03 UTC (permalink / raw)
  To: crossgcc

[-- Attachment #1: Type: text/plain, Size: 1129 bytes --]

Hi all,

Thanks for this awesome tool. I'm attaching three patches for 
eglibc-2.12 which allowed me to target x86_64-unknown-linux-gnu-gcc 
(4.5.3 and 4.6.1) on both cygwin-1.5 and 1.7 hosts. I suspect the gcc 
version doesn't matter much, and probably the patches would work for 
other eglibc versions as well (they're pretty minimal).

Notes:

1. gcc can't be built with lto/plugin support on a cygwin host (very 
annoying to have the build fail after 2h for that reason). This might 
have been fixed for gcc-4.7 but I haven't tested this on a 
cross-compiler yet.

2. While building posix/cross-getconf, the error is encountered: 
i686-build_pc-cygwin-gcc: command not found.

Solution: add $XTOOLS/.build/$TARGET/buildtools/bin to $PATH before 
starting the build (the dir will be created as part of the build)

3. Run rebaseall before starting. Enable save states. If you encounter 
fork errors while a just-built gcc is running: background the build just 
after it finishes extracting the offending state, then issue the 
following command (from the .build directory): rebase -sv $(find . -name 
"*.dll").

Enjoy!
Ryan




[-- Attachment #2: .config --]
[-- Type: text/plain, Size: 10070 bytes --]

#
# Automatically generated make config: don't edit
# crosstool-NG 1.13.4 Configuration
# Sat Mar 17 07:36:01 2012
#
CT_CONFIGURE_has_xzutils=y
CT_CONFIGURE_has_cvs=y
CT_CONFIGURE_has_svn=y
CT_MODULES=y

#
# Paths and misc options
#

#
# crosstool-NG behavior
#
# CT_OBSOLETE is not set
CT_EXPERIMENTAL=y
CT_DEBUG_CT=y
# CT_DEBUG_PAUSE_STEPS is not set
CT_DEBUG_CT_SAVE_STEPS=y
CT_DEBUG_CT_SAVE_STEPS_GZIP=y
# CT_NO_OVERIDE_LC_MESSAGES is not set

#
# Paths
#
CT_LOCAL_TARBALLS_DIR="${HOME}/x-tools/tarballs"
CT_SAVE_TARBALLS=y
CT_WORK_DIR="${CT_TOP_DIR}/.build"
CT_PREFIX_DIR="${HOME}/x-tools/${CT_TARGET}"
CT_INSTALL_DIR="${CT_PREFIX_DIR}"
CT_RM_RF_PREFIX_DIR=y
CT_REMOVE_DOCS=y
CT_INSTALL_DIR_RO=y
CT_STRIP_ALL_TOOLCHAIN_EXECUTABLES=y

#
# Downloading
#
# CT_FORBID_DOWNLOAD is not set
# CT_FORCE_DOWNLOAD is not set
CT_CONNECT_TIMEOUT=10
# CT_ONLY_DOWNLOAD is not set
# CT_USE_MIRROR is not set

#
# Extracting
#
# CT_FORCE_EXTRACT is not set
CT_OVERIDE_CONFIG_GUESS_SUB=y
# CT_ONLY_EXTRACT is not set
CT_PATCH_BUNDLED=y
# CT_PATCH_LOCAL is not set
# CT_PATCH_BUNDLED_LOCAL is not set
# CT_PATCH_LOCAL_BUNDLED is not set
# CT_PATCH_BUNDLED_FALLBACK_LOCAL is not set
# CT_PATCH_LOCAL_FALLBACK_BUNDLED is not set
# CT_PATCH_NONE is not set
CT_PATCH_ORDER="bundled"

#
# Build behavior
#
CT_PARALLEL_JOBS=2
CT_LOAD=0
CT_USE_PIPES=y
CT_EXTRA_FLAGS_FOR_HOST=""
# CT_CONFIG_SHELL_SH is not set
# CT_CONFIG_SHELL_ASH is not set
CT_CONFIG_SHELL_BASH=y
# CT_CONFIG_SHELL_CUSTOM is not set
CT_CONFIG_SHELL="${bash}"

#
# Logging
#
# CT_LOG_ERROR is not set
# CT_LOG_WARN is not set
CT_LOG_INFO=y
# CT_LOG_EXTRA is not set
# CT_LOG_ALL is not set
# CT_LOG_DEBUG is not set
CT_LOG_LEVEL_MAX="INFO"
# CT_LOG_SEE_TOOLS_WARN is not set
CT_LOG_PROGRESS_BAR=y
CT_LOG_TO_FILE=y
CT_LOG_FILE_COMPRESS=y

#
# Target options
#
CT_ARCH="x86"
CT_ARCH_SUPPORTS_32=y
CT_ARCH_SUPPORTS_64=y
CT_ARCH_SUPPORT_ARCH=y
CT_ARCH_SUPPORT_CPU=y
CT_ARCH_SUPPORT_TUNE=y
CT_ARCH_DEFAULT_32=y
CT_ARCH_ARCH=""
CT_ARCH_CPU=""
CT_ARCH_TUNE=""
# CT_ARCH_32 is not set
CT_ARCH_64=y
CT_ARCH_BITNESS=64
CT_ARCH_FLOAT_HW=y
# CT_ARCH_FLOAT_SW is not set
CT_TARGET_CFLAGS=""
CT_TARGET_LDFLAGS=""
# CT_ARCH_blackfin is not set
# CT_ARCH_alpha is not set
# CT_ARCH_m68k is not set
# CT_ARCH_s390 is not set
# CT_ARCH_powerpc is not set
# CT_ARCH_sparc is not set
# CT_ARCH_mips is not set
# CT_ARCH_avr32 is not set
# CT_ARCH_sh is not set
CT_ARCH_x86=y
# CT_ARCH_arm is not set
CT_ARCH_blackfin_AVAILABLE=y
CT_ARCH_alpha_AVAILABLE=y
CT_ARCH_m68k_AVAILABLE=y
CT_ARCH_s390_AVAILABLE=y
CT_ARCH_powerpc_AVAILABLE=y
CT_ARCH_sparc_AVAILABLE=y
CT_ARCH_mips_AVAILABLE=y
CT_ARCH_avr32_AVAILABLE=y
CT_ARCH_sh_AVAILABLE=y
CT_ARCH_x86_AVAILABLE=y
CT_ARCH_arm_AVAILABLE=y

#
# Generic target options
#
CT_ARCH_USE_MMU=y

#
# Target optimisations
#

#
# Toolchain options
#

#
# General toolchain options
#
CT_FORCE_SYSROOT=y
CT_USE_SYSROOT=y
CT_SYSROOT_NAME="sysroot"
CT_SYSROOT_DIR_PREFIX=""
CT_WANTS_STATIC_LINK=y
# CT_STATIC_TOOLCHAIN is not set
CT_TOOLCHAIN_PKGVERSION=""
CT_TOOLCHAIN_BUGURL=""

#
# Tuple completion and aliasing
#
CT_TARGET_VENDOR="unknown"
CT_TARGET_ALIAS_SED_EXPR=""
CT_TARGET_ALIAS=""

#
# Toolchain type
#
# CT_NATIVE is not set
CT_CROSS=y
# CT_CROSS_NATIVE is not set
# CT_CANADIAN is not set
CT_TOOLCHAIN_TYPE="cross"

#
# Build system
#
CT_BUILD=""
CT_BUILD_PREFIX=""
CT_BUILD_SUFFIX=""

#
# Operating System
#
CT_KERNEL_SUPPORTS_SHARED_LIBS=y
CT_KERNEL="linux"
CT_KERNEL_VERSION="2.6.37.6"
CT_KERNEL_linux=y
# CT_KERNEL_bare_metal is not set
CT_KERNEL_linux_AVAILABLE=y
# CT_KERNEL_V_3_0_4 is not set
# CT_KERNEL_V_3_0_3 is not set
# CT_KERNEL_V_3_0_2 is not set
# CT_KERNEL_V_3_0_1 is not set
# CT_KERNEL_V_3_0 is not set
# CT_KERNEL_V_2_6_39_4 is not set
# CT_KERNEL_V_2_6_38_8 is not set
CT_KERNEL_V_2_6_37_6=y
# CT_KERNEL_V_2_6_36_4 is not set
# CT_KERNEL_V_2_6_35_14 is not set
# CT_KERNEL_V_2_6_34_10 is not set
# CT_KERNEL_V_2_6_33_19 is not set
# CT_KERNEL_V_2_6_32_46 is not set
# CT_KERNEL_V_2_6_31_14 is not set
# CT_KERNEL_V_2_6_27_59 is not set
# CT_KERNEL_LINUX_CUSTOM is not set
CT_KERNEL_bare_metal_AVAILABLE=y
CT_KERNEL_mingw32_AVAILABLE=y

#
# Common kernel options
#
CT_SHARED_LIBS=y

#
# linux other options
#
CT_KERNEL_LINUX_VERBOSITY_0=y
# CT_KERNEL_LINUX_VERBOSITY_1 is not set
# CT_KERNEL_LINUX_VERBOSITY_2 is not set
CT_KERNEL_LINUX_VERBOSE_LEVEL=0
CT_KERNEL_LINUX_INSTALL_CHECK=y

#
# Binary utilities
#
CT_ARCH_BINFMT_ELF=y

#
# GNU binutils
#
CT_BINUTILS_V_2_21_53=y
# CT_BINUTILS_V_2_21_1a is not set
# CT_BINUTILS_V_2_20_1a is not set
# CT_BINUTILS_V_2_19_1a is not set
# CT_BINUTILS_V_2_18a is not set
CT_BINUTILS_VERSION="2.21.53"
CT_BINUTILS_2_21_or_later=y
CT_BINUTILS_2_20_or_later=y
CT_BINUTILS_2_19_or_later=y
CT_BINUTILS_2_18_or_later=y
CT_BINUTILS_HAS_GOLD=y
CT_BINUTILS_GOLD_SUPPORTS_ARCH=y
CT_BINUTILS_HAS_PLUGINS=y
CT_BINUTILS_HAS_PKGVERSION_BUGURL=y
CT_BINUTILS_FORCE_LD_BFD=y
CT_BINUTILS_LINKER_LD=y
# CT_BINUTILS_LINKER_LD_GOLD is not set
# CT_BINUTILS_LINKER_GOLD_LD is not set
CT_BINUTILS_LINKERS_LIST="ld"
CT_BINUTILS_LINKER_DEFAULT="bfd"
# CT_BINUTILS_PLUGINS is not set
CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
# CT_BINUTILS_FOR_TARGET is not set

#
# C compiler
#
CT_CC="gcc"
CT_CC_VERSION="4.6.1"
CT_CC_gcc=y
# CT_CC_GCC_SHOW_LINARO is not set
CT_CC_V_4_6_1=y
# CT_CC_V_4_6_0 is not set
# CT_CC_V_4_5_3 is not set
# CT_CC_V_4_5_2 is not set
# CT_CC_V_4_5_1 is not set
# CT_CC_V_4_5_0 is not set
# CT_CC_V_4_4_6 is not set
# CT_CC_V_4_4_5 is not set
# CT_CC_V_4_4_4 is not set
# CT_CC_V_4_4_3 is not set
# CT_CC_V_4_4_2 is not set
# CT_CC_V_4_4_1 is not set
# CT_CC_V_4_4_0 is not set
# CT_CC_V_4_3_6 is not set
# CT_CC_V_4_3_5 is not set
# CT_CC_V_4_3_4 is not set
# CT_CC_V_4_3_3 is not set
# CT_CC_V_4_3_2 is not set
# CT_CC_V_4_3_1 is not set
# CT_CC_V_4_2_4 is not set
# CT_CC_V_4_2_2 is not set
CT_CC_GCC_4_2_or_later=y
CT_CC_GCC_4_3_or_later=y
CT_CC_GCC_4_4_or_later=y
CT_CC_GCC_4_5_or_later=y
CT_CC_GCC_4_6=y
CT_CC_GCC_4_6_or_later=y
CT_CC_GCC_HAS_GRAPHITE=y
CT_CC_GCC_HAS_LTO=y
CT_CC_GCC_HAS_PKGVERSION_BUGURL=y
CT_CC_GCC_HAS_BUILD_ID=y
CT_CC_GCC_USE_GMP_MPFR=y
CT_CC_GCC_USE_PPL_CLOOG=y
CT_CC_GCC_USE_MPC=y
# CT_CC_LANG_FORTRAN is not set
CT_CC_SUPPORT_CXX=y
CT_CC_SUPPORT_FORTRAN=y
CT_CC_SUPPORT_JAVA=y
CT_CC_SUPPORT_ADA=y
CT_CC_SUPPORT_OBJC=y
CT_CC_SUPPORT_OBJCXX=y

#
# Additional supported languages:
#
CT_CC_LANG_CXX=y
# CT_CC_LANG_JAVA is not set
# CT_CC_LANG_ADA is not set
# CT_CC_LANG_OBJC is not set
# CT_CC_LANG_OBJCXX is not set
CT_CC_LANG_OTHERS=""

#
# gcc other options
#
CT_CC_ENABLE_CXX_FLAGS=""
CT_CC_CORE_EXTRA_CONFIG_ARRAY=""
CT_CC_EXTRA_CONFIG_ARRAY=""
CT_CC_STATIC_LIBSTDCXX=y

#
# Optimisation features
#
CT_CC_GCC_USE_GRAPHITE=y
# CT_CC_GCC_USE_LTO is not set

#
# Settings for libraries running on target
#
CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y
# CT_CC_GCC_LIBMUDFLAP is not set
# CT_CC_GCC_LIBGOMP is not set
# CT_CC_GCC_LIBSSP is not set

#
# Misc. obscure options.
#
CT_CC_CXA_ATEXIT=y
# CT_CC_GCC_DISABLE_PCH is not set
CT_CC_GCC_SJLJ_EXCEPTIONS=m
CT_CC_GCC_LDBL_128=m
# CT_CC_GCC_BUILD_ID is not set

#
# C-library
#
CT_LIBC="eglibc"
CT_LIBC_VERSION="2_12"
CT_LIBC_eglibc=y
# CT_LIBC_uClibc is not set
# CT_LIBC_glibc is not set
CT_LIBC_eglibc_AVAILABLE=y
# CT_LIBC_EGLIBC_V_2_14 is not set
# CT_LIBC_EGLIBC_V_2_13 is not set
CT_LIBC_EGLIBC_V_2_12=y
# CT_LIBC_EGLIBC_V_2_11 is not set
# CT_LIBC_EGLIBC_V_2_10 is not set
# CT_LIBC_EGLIBC_V_2_9 is not set
# CT_LIBC_EGLIBC_V_TRUNK is not set
CT_LIBC_EGLIBC_2_12_or_later=y
CT_LIBC_EGLIBC_2_11_or_later=y
CT_LIBC_EGLIBC_2_10_or_later=y
CT_LIBC_EGLIBC_2_9_or_later=y
CT_LIBC_EGLIBC_HAS_PKGVERSION_BUGURL=y
CT_EGLIBC_REVISION="HEAD"
# CT_EGLIBC_HTTP is not set
# CT_EGLIBC_CHECKOUT is not set
CT_EGLIBC_OPT_SIZE=y
# CT_EGLIBC_CUSTOM_CONFIG is not set
CT_LIBC_uClibc_AVAILABLE=y
CT_LIBC_newlib_AVAILABLE=y
CT_LIBC_glibc_AVAILABLE=y
CT_LIBC_mingw_AVAILABLE=y
CT_LIBC_none_AVAILABLE=y
CT_LIBC_SUPPORT_THREADS_ANY=y
CT_LIBC_SUPPORT_NPTL=y
CT_LIBC_SUPPORT_LINUXTHREADS=y
CT_THREADS="nptl"

#
# Common C library options
#
CT_THREADS_NPTL=y
# CT_THREADS_LINUXTHREADS is not set
CT_LIBC_XLDD=y

#
# eglibc other options
#
CT_LIBC_glibc_familly=y
CT_LIBC_GLIBC_EXTRA_CONFIG_ARRAY=""
CT_LIBC_GLIBC_CONFIGPARMS=""
CT_LIBC_GLIBC_EXTRA_CFLAGS=""
CT_LIBC_EXTRA_CC_ARGS=""
# CT_LIBC_ENABLE_FORTIFIED_BUILD is not set
# CT_LIBC_DISABLE_VERSIONING is not set
CT_LIBC_OLDEST_ABI=""
CT_LIBC_GLIBC_FORCE_UNWIND=y
# CT_LIBC_GLIBC_USE_PORTS is not set
CT_LIBC_ADDONS_LIST=""
# CT_LIBC_LOCALES is not set
# CT_LIBC_GLIBC_KERNEL_VERSION_NONE is not set
CT_LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS=y
# CT_LIBC_GLIBC_KERNEL_VERSION_CHOSEN is not set
CT_LIBC_GLIBC_MIN_KERNEL="2.6.37.6"

#
# Debug facilities
#
# CT_DEBUG_strace is not set
# CT_DEBUG_dmalloc is not set
# CT_DEBUG_duma is not set
# CT_DEBUG_gdb is not set
# CT_DEBUG_ltrace is not set

#
# Companion libraries
#
CT_COMPLIBS_NEEDED=y
CT_GMP_NEEDED=y
CT_MPFR_NEEDED=y
CT_PPL_NEEDED=y
CT_CLOOG_NEEDED=y
CT_MPC_NEEDED=y
CT_COMPLIBS=y
CT_GMP=y
CT_MPFR=y
CT_PPL=y
CT_CLOOG=y
CT_MPC=y
CT_GMP_V_5_0_2=y
# CT_GMP_V_5_0_1 is not set
# CT_GMP_V_4_3_2 is not set
# CT_GMP_V_4_3_1 is not set
# CT_GMP_V_4_3_0 is not set
CT_GMP_VERSION="5.0.2"
CT_MPFR_V_3_0_1=y
# CT_MPFR_V_3_0_0 is not set
# CT_MPFR_V_2_4_2 is not set
# CT_MPFR_V_2_4_1 is not set
# CT_MPFR_V_2_4_0 is not set
CT_MPFR_VERSION="3.0.1"
CT_PPL_V_0_11_2=y
# CT_PPL_V_0_11_1 is not set
# CT_PPL_V_0_11 is not set
# CT_PPL_V_0_10_2 is not set
CT_PPL_VERSION="0.11.2"
CT_PPL_0_11=y
CT_PPL_NEEDS_LIBPWL=y
CT_CLOOG_V_0_15_11=y
# CT_CLOOG_V_0_15_10 is not set
# CT_CLOOG_V_0_15_9 is not set
# CT_CLOOG_V_0_15_8 is not set
# CT_CLOOG_V_0_15_7 is not set
# CT_CLOOG_V_0_15_6 is not set
CT_CLOOG_VERSION="0.15.11"
CT_CLOOG_0_15_1x=y
CT_CLOOG_NEEDS_AUTORECONF=y
CT_MPC_V_0_9=y
# CT_MPC_V_0_8_2 is not set
# CT_MPC_V_0_8_1 is not set
# CT_MPC_V_0_7 is not set
CT_MPC_VERSION="0.9"

#
# Companion libraries common options
#
# CT_COMPLIBS_CHECK is not set

#
# Companion tools
#

#
# READ HELP before you say 'Y' below !!!
#
# CT_COMP_TOOLS is not set

#
# Test suite
#
# CT_TEST_SUITE_GCC is not set


[-- Attachment #3: cross-zic-libintl.patch --]
[-- Type: text/plain, Size: 971 bytes --]

--- eglibc-2_9/timezone/Makefile.org	2011-02-08 10:46:29.000000000 +0100
+++ eglibc-2_9/timezone/Makefile	2011-02-08 10:45:34.000000000 +0100
@@ -176,6 +176,22 @@
 	$(zic-cmd) -p $(posixrules)
 endif
 
+OS?= $(shell uname)
+ifeq	($(OS),Darwin)
+CROSSZICLDFLAGS=-L/opt/local/lib -lintl
+endif
+ifneq	(,$(findstring Windows_NT,$(OS)))
+# cygwin!
+CROSSZICLDFLAGS=-L/usr/lib -lintl
+endif
+ifneq	(,$(findstring CYGWIN_NT,$(OS)))
+# cygwin!
+CROSSZICLDFLAGS=-L/usr/lib -lintl
+endif
+ifeq	($(OS),FreeBSD)
+CROSSZICLDFLAGS=-L/usr/local/lib -lintl
+endif
+
 zic-objs = zic.o ialloc.o scheck.o
 
 $(objpfx)zic: $(addprefix $(objpfx), $(zic-objs))
@@ -185,7 +193,7 @@
 		-DCROSS_ZIC $(compile-mkdep-flags)
 
 $(objpfx)cross-zic: $(addprefix $(objpfx)cross-,$(zic-objs))
-	gcc $(addprefix $(objpfx)cross-,$(zic-objs)) -o $@
+	gcc $(addprefix $(objpfx)cross-,$(zic-objs)) $(CROSSZICLDFLAGS) -o $@
 
 tz-cflags = -DTZDIR='"$(zonedir)"' \
 	    -DTZDEFAULT='"$(localtime-file)"' \



[-- Attachment #4: cross-rpcgen-bsd-u_char.patch --]
[-- Type: text/plain, Size: 707 bytes --]

--- eglibc-2_12/sunrpc/rpc/types.h.org	2011-02-07 20:48:29.000000000 +0100
+++ eglibc-2_12/sunrpc/rpc/types.h	2011-02-08 01:25:34.000000000 +0100
@@ -69,6 +69,7 @@
 #endif
 
 #ifndef __u_char_defined
+#if	!defined(__APPLE__) && !defined(__BSD__) && !defined(_BSDTYPES_DEFINED)
 typedef __u_char u_char;
 typedef __u_short u_short;
 typedef __u_int u_int;
@@ -76,11 +77,14 @@
 typedef __quad_t quad_t;
 typedef __u_quad_t u_quad_t;
 typedef __fsid_t fsid_t;
+#endif
 # define __u_char_defined
 #endif
 #ifndef __daddr_t_defined
+#if	!defined(__APPLE__) && !defined(__BSD__) && !defined(_BSDTYPES_DEFINED)
 typedef __daddr_t daddr_t;
 typedef __caddr_t caddr_t;
+#endif
 # define __daddr_t_defined
 #endif
 


[-- Attachment #5: cross-rpcgen-libintl.patch --]
[-- Type: text/plain, Size: 1000 bytes --]

--- eglibc-2_9/sunrpc/Makefile.org	2011-02-08 01:02:15.000000000 +0100
+++ eglibc-2_9/sunrpc/Makefile	2011-02-08 01:21:03.000000000 +0100
@@ -138,6 +138,22 @@
 
 include ../Rules
 
+OS?= $(shell uname)
+ifeq	($(OS),Darwin)
+CROSSRPCLDFLAGS=-L/opt/local/lib -lintl
+endif
+ifneq	(,$(findstring Windows_NT,$(OS)))
+# cygwin!
+CROSSRPCLDFLAGS=-L/usr/lib -lintl
+endif
+ifneq	(,$(findstring CYGWIN_NT,$(OS)))
+# cygwin!
+CROSSRPCLDFLAGS=-L/usr/lib -lintl
+endif
+ifeq	($(OS),FreeBSD)
+CROSSRPCLDFLAGS=-L/usr/local/lib -lintl
+endif
+
 $(objpfx)rpcgen: $(addprefix $(objpfx),$(rpcgen-objs)) \
   $(sort $(filter $(common-objpfx)libc%,$(link-libc))) \
   $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
@@ -148,7 +156,7 @@
 		$(OUTPUT_OPTION) $(compile-mkdep-flags)
 
 $(objpfx)cross-rpcgen: $(addprefix $(objpfx)cross-,$(rpcgen-objs))
-	gcc $^ -o $@
+	gcc $^ $(CROSSRPCLDFLAGS) -o $@
 
 # This makes sure -DNOT_IN_libc is passed for all these modules.
 cpp-srcs-left := $(rpcgen-objs:.o=.c)



[-- Attachment #6: Type: text/plain, Size: 71 bytes --]

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Patches for eglibc to support cygwin host
  2012-03-22 15:03 ` Patches for eglibc to support cygwin host Ryan Johnson
@ 2012-03-27 20:56   ` Khem Raj
  2012-03-27 22:21     ` Ryan Johnson
  0 siblings, 1 reply; 3+ messages in thread
From: Khem Raj @ 2012-03-27 20:56 UTC (permalink / raw)
  To: Ryan Johnson; +Cc: crossgcc

On Thu, Mar 22, 2012 at 8:02 AM, Ryan Johnson
<ryan.johnson@cs.utoronto.ca> wrote:
> Hi all,
>
> Thanks for this awesome tool. I'm attaching three patches for eglibc-2.12
> which allowed me to target x86_64-unknown-linux-gnu-gcc (4.5.3 and 4.6.1) on
> both cygwin-1.5 and 1.7 hosts. I suspect the gcc version doesn't matter
> much, and probably the patches would work for other eglibc versions as well
> (they're pretty minimal).
>
> Notes:
>
> 1. gcc can't be built with lto/plugin support on a cygwin host (very
> annoying to have the build fail after 2h for that reason). This might have
> been fixed for gcc-4.7 but I haven't tested this on a cross-compiler yet.
>
> 2. While building posix/cross-getconf, the error is encountered:
> i686-build_pc-cygwin-gcc: command not found.
>
> Solution: add $XTOOLS/.build/$TARGET/buildtools/bin to $PATH before starting
> the build (the dir will be created as part of the build)
>
> 3. Run rebaseall before starting. Enable save states. If you encounter fork
> errors while a just-built gcc is running: background the build just after it
> finishes extracting the offending state, then issue the following command
> (from the .build directory): rebase -sv $(find . -name "*.dll").
>

Can you also send these patches to eglibc mailing lists please.

> Enjoy!
> Ryan
>
>
>
>
> --
> For unsubscribe information see http://sourceware.org/lists.html#faq

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Patches for eglibc to support cygwin host
  2012-03-27 20:56   ` Khem Raj
@ 2012-03-27 22:21     ` Ryan Johnson
  0 siblings, 0 replies; 3+ messages in thread
From: Ryan Johnson @ 2012-03-27 22:21 UTC (permalink / raw)
  Cc: crossgcc

On 27/03/2012 4:55 PM, Khem Raj wrote:
> On Thu, Mar 22, 2012 at 8:02 AM, Ryan Johnson wrote:
>> Hi all,
>>
>> Thanks for this awesome tool. I'm attaching three patches for eglibc-2.12
>> which allowed me to target x86_64-unknown-linux-gnu-gcc (4.5.3 and 4.6.1) on
>> both cygwin-1.5 and 1.7 hosts. I suspect the gcc version doesn't matter
>> much, and probably the patches would work for other eglibc versions as well
>> (they're pretty minimal).
>>
>> Can you also send these patches to eglibc mailing lists please.
>>
http://www.eglibc.org/archives/patches/msg01116.html

Ryan

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-03-27 22:21 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <4F647CC3.60004@cs.utoronto.ca>
2012-03-22 15:03 ` Patches for eglibc to support cygwin host Ryan Johnson
2012-03-27 20:56   ` Khem Raj
2012-03-27 22:21     ` Ryan Johnson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).