aboutsummaryrefslogblamecommitdiffstats
path: root/xcomp/erl-xcomp-vxworks_ppc32.conf
blob: aa7c652d80d169f72197d9057a04fa9933d2235b (plain) (tree)
























































                                                                               
                                  
 


                                                               
 
                                                                               
 


                                                                              
 

                                                               
 

                                                                                                                                                                                                                                                                                                                                                                         
 

                                           
 




                                                                            
 

                         
 

                                    
 

                      
 

                                 
 
               
                                                               
 

                          
 

                    
 


                                                         











                                                                         












                                                       

                     
                                        

                                                                       
                            

                                                               


                                                            























                                                                               



                                                                            

                                                                             
 
                               




                                                                             

                       











































































                                                                                
#### -*-shell-script-*-
####
#### %CopyrightBegin%
####
#### Copyright Ericsson AB 2009-2010. 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 using `otp_build', copy this file and set
#### the variables needed below. Then pass the path to the copy of this file as
#### an argument to `otp_build' in the configure stage:
####   `otp_build configure --xcomp-conf=<FILE>'
#### --------------------------------------------------------------------------

### Note that you cannot define arbitrary variables in a cross compilation
### configuration file. Only the ones listed below will be guaranteed to be
### visible throughout the whole execution of all `configure' scripts. Other
### variables needs to be defined as arguments to `configure' or exported in
### the environment.

### ---- `otp_build' only variables -------------------------------------------

### Variables in this section are only used, when configuring Erlang/OTP for
### cross compilation using `$ERL_TOP/otp_build configure'.

### NOTE! These variables currently have *no* effect if you configure using the
### `configure' script directly.

## erl_xcomp_build - Build system.
##    This value will be passed as `--build=$erl_xcomp_build' argument to the
##    `configure' script. It does not have to be a full CPU-VENDOR-OS triplet,
##    but can be. The full CPU-VENDOR-OS triplet will be created by:
##      `$ERL_TOP/erts/autoconf/config.sub $erl_xcomp_build'
##    If `erl_xcomp_build=guess', the build system will be guessed using:
##      `$ERL_TOP/erts/autoconf/config.guess'. 
erl_xcomp_build=guess

## erl_xcomp_host - Cross host system.
##    This value will be passed as `--host=$erl_xcomp_host' argument to the
##    `configure' script. It does not have to be a full CPU-VENDOR-OS triplet,
##    but can be. The full CPU-VENDOR-OS triplet will be created by:
##      `$ERL_TOP/erts/autoconf/config.sub $erl_xcomp_host'
erl_xcomp_host=powerpc-wrs-vxworks

## erl_xcomp_configure_flags - Extra configure flags.
##    Extra flags to pass to the `configure' script.
erl_xcomp_configure_flags="--disable-threads --without-termcap"

### ---- Cross compiler and other tools to use --------------------------------

### If the cross compilation tools are prefixed by `<HOST>-' you probably do
### not need to set these variables (where `<HOST>' is what has been passed as
### `--host=<HOST>' argument to `configure').

## CC - C compiler.
CC="$WIND_BASE/gnu/3.4.4-vxworks-6.3/$WIND_HOST_TYPE/bin/ccppc"

## CFLAGS - C compiler flags.
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"

## STATIC_CFLAGS - Static C compiler flags.
#STATIC_CFLAGS=

## CFLAG_RUNTIME_LIBRARY_PATH - C compiler runtime library path flag.
##    This flag should set a specific runtime library path for the shared
##    library at link time. Note that this is actually a linker flag, but it
##    needs to be passed via the compiler.
#CFLAG_RUNTIME_LIBRARY_PATH=

## CPP - C pre-processor.
CPP="$CC $CFLAGS -E"

## CPPFLAGS - C pre-processor flags.
#CPPFLAGS=

## CXX - C++ compiler.
#CXX=

## CXXFLAGS - C++ compiler flags.
#CXXFLAGS=

## LD - Linker.
LD="$WIND_BASE/gnu/3.4.4-vxworks-6.3/$WIND_HOST_TYPE/bin/ldppc"

## LDFLAGS - Linker flags.
LDFLAGS="-mlongcall"

## LIBS - Libraries.
#LIBS=

### -- Dynamic Erlang Driver linker flags --

### NOTE! Either set all or non of the DED_LD* variables.

## DED_LD - Linker.
#DED_LD=

## DED_LDFLAGS - Linker flags.
#DED_LDFLAGS=

## DED_LD_FLAG_RUNTIME_LIBRARY_PATH - Linker runtime library path flag.
##    This flag should set a specific runtime library path for the shared
##    library at link time.
#DED_LD_FLAG_RUNTIME_LIBRARY_PATH=

### -- Large file support --

### NOTE! Either set all or non of the LFS_* variables.

## LFS_CFLAGS - Large file support C compiler flags.
#LFS_CFLAGS=

## LFS_LDFLAGS - Large file support linker flags.
#LFS_LDFLAGS=

## LFS_LIBS - Large file support libraries.
#LFS_LIBS=

### -- Other tools --

## RANLIB - `ranlib' archive index tool.
RANLIB="$WIND_BASE/gnu/3.4.4-vxworks-6.3/$WIND_HOST_TYPE/bin/ranlibppc"

## AR - `ar' archiving tool.
AR="$WIND_BASE/gnu/3.4.4-vxworks-6.3/$WIND_HOST_TYPE/bin/arppc"

## GETCONF - `getconf' system configuration inspection tool.
#GETCONF=

### ---- Cross System Root Locations ------------------------------------------

## erl_xcomp_sysroot - Absolute cross system root path.
##    The absolute path to the system root of the cross compilation
##    environment. Currently, the `crypto', `odbc', `ssh' and `ssl'
##    applications need the system root. These applications will be skipped
##    if the system root has not been set. The system root might be needed
##    for other things too. If this is the case and the system root has not
##    been set, `configure' will fail and request you to set it.
#erl_xcomp_sysroot=

## erl_xcomp_isysroot - Absolute cross include system root path.
##    The absolute path to the system root for includes of the cross
##    compilation environment. If not set, this value defaults to
##    `$erl_xcomp_sysroot', i.e., only set this value if the include system
##    root path is not the same as the system root path.
#erl_xcomp_isysroot=

### ---- 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.

### Note that some of these values will override results of tests performed
### by `configure', and some will not be used until `configure' is sure that
### it cannot figure the result out.

### The `configure' script will issue a warning when a default value is used.
### When a variable has been set, no warning will be issued.

## 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' on
##                                                    Linux; otherwise, `no')
##    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' signals 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' on Linux;
##                                              otherwise, `no')
##    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_cpu_time - 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_cpu_time=

## 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, <S>)'
##    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=

#### --------------------------------------------------------------------------