### ### %CopyrightBegin% ### ### Copyright Ericsson AB 2009. All Rights Reserved. ### ### The contents of this file are subject to the Erlang Public License, ### Version 1.1, (the "License"); you may not use this file except in ### compliance with the License. You should have received a copy of the ### Erlang Public License along with this software. If not, it can be ### retrieved online at http://www.erlang.org/. ### ### Software distributed under the License is distributed on an "AS IS" ### basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See ### the License for the specific language governing rights and limitations ### under the License. ### ### %CopyrightEnd% ### ### File: erl-xcomp-vxworks_ppc32.conf ### Author: Rickard Green/Patrik Nyblom ### ### ---------------------------------------------------------------------------- ### When cross compiling Erlang/OTP, copy this file and set the variables ### needed below. Then pass the path to the copy of this file as an argument ### to "eval `otp_build env_cross `". ### ---------------------------------------------------------------------------- ### ---------------------------------------------------------------------------- ### Variables in the following section *have* to be set. ### ## ## Target system. The value will be passed as '--host' argument to the configure ## script. It does not have to be a full CPU-VENDOR-OS tripplet, but can be. The ## full CPU-VENDOR-OS tripplet will be created by: ## $ERL_TOP/erts/autoconf/config.sub $erl_xcomp_host ## erl_xcomp_host=powerpc-wrs-vxworks ### ---------------------------------------------------------------------------- ### ---------------------------------------------------------------------------- ### To override the configure flags for a special target system, You ### can set this variable which overrides configure parameters on the ### command line and instead uses the specified options. The variable ### leaves the build-host system untouched. ### ---------------------------------------------------------------------------- erl_xcomp_configure_flags="--without-termcap" ###----------------------------------------------------------------------------- ### You can specify a specific CC or LD for the build target (the cross ### compiler) here along with magic CFLAGS and/or LDFLAGS if needed ### ar and ranlib might also be specified if needed. ###----------------------------------------------------------------------------- erl_xcomp_cc="$WIND_BASE/gnu/3.4.4-vxworks-6.3/$WIND_HOST_TYPE/bin/ccppc" erl_xcomp_ld="$WIND_BASE/gnu/3.4.4-vxworks-6.3/$WIND_HOST_TYPE/bin/ldppc" erl_xcomp_cflags="-DCPU=PPC32 -DTOOL_FAMILY=gnu -DTOOL=gnu -DWANT_NONBLOCKING -DHAVE_SENS -DHAVE_MEMMOVE -DVXWORKS -I$WIND_BASE/vxworks-6.3/target/h -I$WIND_BASE/gnu/3.4.4-vxworks-6.3/$WIND_HOST_TYPE/lib/gcc/powerpc-wrs-vxworks/3.4.4/include -I$WIND_BASE/vxworks-6.3/target/h/wrn/coreip -I$WIND_BASE/vxworks-6.3/target/h -mstrict-align -fvolatile -fno-builtin -mlongcall" erl_xcomp_cpp="$erl_xcomp_cc $erl_xcomp_cflags -E" erl_xcomp_ldflags="-mlongcall" erl_xcomp_ranlib="$WIND_BASE/gnu/3.4.4-vxworks-6.3/$WIND_HOST_TYPE/bin/ranlibppc" erl_xcomp_ar="$WIND_BASE/gnu/3.4.4-vxworks-6.3/$WIND_HOST_TYPE/bin/arppc" ###----------------------------------------------------------------------------- ### The ded_ls and ded_ldflags variables control linking of dynamically loaded ### erlang drivers. On i.e. Linux these are set to ### $(CC) and "-shared" respectively, but other OS'es might need other ### programs and flags to build a dynamic library. ### erl_xcomp_ded_ld_runtime_library_path is the flag to set a ### specific runtime library path for the shared library at link time, ### usually this should be left empty. ###----------------------------------------------------------------------------- erl_xcomp_ded_ld= erl_xcomp_ded_ldflags= erl_xcomp_ded_ld_runtime_library_path= ### ### Optional feature, or bug tests ### ### These tests cannot (always) be done automatically when cross compiling. ### You usually does not need to set these variables. Only set these if you ### really know what you are doing. ### ## ## erl_xcomp_bigendian - yes|no ## If yes, the target system must be big endian. If no, little endian. This ## can often be automatically detected, but not always. If not automatically ## detected, configure will fail unless this variable is set. No default value ## is used, i.e., configure will try to figure this out automatically. erl_xcomp_bigendian=yes ## ## erl_xcomp_linux_clock_gettime_correction - yes|no (defaults to yes) ## If yes, clock_gettime(CLOCK_MONOTONIC, _) on the target system must work. ## This variable is recommended to be set to no on Linux systems with kernel ## versions less than 2.6. ## erl_xcomp_linux_clock_gettime_correction= ## ## erl_xcomp_linux_nptl - yes|no (defaults to yes on Linux; otherwise, no) ## If yes, the target system must have NPTL (Native POSIX Thread Library). ## Older Linux systems have LinuxThreads instead of NPTL (Linux kernel ## versions typically less than 2.6). ## erl_xcomp_linux_nptl= ## ## erl_xcomp_linux_usable_sigusrx - yes|no (defaults to yes) ## If yes, the SIGUSR1 and SIGUSR2 must be usable by the ERTS. Old ## LinuxThreads thread libraries (Linux kernel versions less than 2.2) used ## these signals and made them unusable by the ERTS. ## erl_xcomp_linux_usable_sigusrx= ## ## erl_xcomp_linux_usable_sigaltstack - yes|no (defaults to yes) ## If yes, sigaltstack() must be usable on the target system. sigaltstack() ## on Linux kernel versions less than 2.4 are broken. ## erl_xcomp_linux_usable_sigaltstack= ## ## erl_xcomp_poll - yes|no (defaults to no on Darwin/MacOSX; otherwise, yes) ## If yes, the target system must have a working poll() implementation that ## also can handle devices. If no, select() will be used instead of poll(). ## erl_xcomp_poll= ## ## erl_xcomp_kqueue - yes|no (defaults to no) ## If yes, the target system must have a working kqueue() implementation that ## returns a file descriptor which can be used by poll() and/or select(). ## If no and the target system has not got epoll() or /dev/poll, the ## kernel-poll feature will be disabled. ## erl_xcomp_kqueue= ## ## erl_xcomp_putenv_copy - yes|no (defaults to no) ## If yes, the target system must have a putenv() implementation that stores a ## copy of the key/value pair. ## erl_xcomp_putenv_copy= ## ## erl_xcomp_reliable_fpe - yes|no (defaults to no) ## If yes, the target system must have reliable floating point exceptions. ## erl_xcomp_reliable_fpe= ## ## erl_xcomp_getaddrinfo - yes|no (defaults to no) ## If yes, the target system must have a working getaddrinfo() implementation ## that can handle both IPv4 and IPv6. ## erl_xcomp_getaddrinfo= ## ## erl_xcomp_gethrvtime_procfs_ioctl - yes|no (defaults to no) ## If yes, the target system must have a working gethrvtime() implementation ## and is used with procfs ioctl(). ## erl_xcomp_gethrvtime_procfs_ioctl= ## ## erl_xcomp_clock_gettime - yes|no (defaults to no) ## If yes, the target system must have a working clock_gettime() ## implementation that can be used for retrieving process CPU time. ## erl_xcomp_clock_gettime= ## ## erl_xcomp_after_morecore_hook - yes|no (defaults to no) ## If yes, the target system must have a working __after_morecore_hook that ## can be used for tracking used malloc() implementations core memory usage. ## erl_xcomp_after_morecore_hook= ## ## erl_xcomp_dlsym_brk_wrappers - yes|no (defaults to no) ## If yes, the target system must have a working dlsym(RTLD_NEXT, ) ## implementation that can be used on 'brk' and 'sbrk' symbols used by the ## malloc() implementation in use, and by this track the malloc() ## implementations core memory usage. ## erl_xcomp_dlsym_brk_wrappers= ### ----------------------------------------------------------------------------