diff options
Diffstat (limited to 'erts')
-rw-r--r-- | erts/configure.in | 69 | ||||
-rw-r--r-- | erts/doc/src/inet_cfg.xml | 13 |
2 files changed, 79 insertions, 3 deletions
diff --git a/erts/configure.in b/erts/configure.in index a3b6fe319f..f4ee1fe935 100644 --- a/erts/configure.in +++ b/erts/configure.in @@ -226,6 +226,19 @@ AC_ARG_ENABLE(m64-build, esac ],enable_m64_build=no) +AC_ARG_ENABLE(m32-build, +[ --enable-m32-build build 32bit binaries using the -m32 flag to (g)cc], +[ case "$enableval" in + no) enable_m32_build=no ;; + *) + if test X${enable_darwin_64bit} = Xyes -o X${enable_m64_build} = Xyes; + then + AC_MSG_ERROR([(--enable-darwin-64bit or --enable-m64-build) and --enable-m32-build are mutually exclusive]) ; + fi ; + enable_m32_build=yes ;; + esac +],enable_m32_build=no) + AC_ARG_ENABLE(fixalloc, [ --disable-fixalloc disable the use of fix_alloc]) if test x${enable_fixalloc} = xno ; then @@ -335,6 +348,17 @@ else esac ;; *) + if test X${enable_m32_build} = Xyes; + then + enable_hipe=no; + case $CFLAGS in + *-m32*) + ;; + *) + CFLAGS="-m32 $CFLAGS" + ;; + esac ; + fi ;; esac fi @@ -432,6 +456,35 @@ CFLAGS="$CFLAGS $extra_flags" DEBUG_CFLAGS="-g $CPPFLAGS $extra_flags" DEBUG_FLAGS=-g +dnl +dnl Adjust DEBUG_CFLAGS to match CFLAGS in terms of -m +dnl + +case $CFLAGS in + *-m64*) + case $DEBUG_CFLAGS in + *-m64*) + ;; + *) + DEBUG_CFLAGS="-m64 $DEBUG_CFLAGS" + ;; + esac + ;; + *-m32*) + case $DEBUG_CFLAGS in + *-m32*) + ;; + *) + DEBUG_CFLAGS="-m32 $DEBUG_CFLAGS" + ;; + esac + ;; + *) + ;; +esac + + + CFLAG_RUNTIME_LIBRARY_PATH="-Wl,-R" case $host_os in darwin*) @@ -664,6 +717,16 @@ case $ARCH-$OPSYS in LDFLAGS="-m64 $LDFLAGS" ;; esac + fi; + if test X${enable_m32_build} = Xyes; then + AC_MSG_NOTICE([Adjusting LDFLAGS to use -m32]) ; + case $LDFLAGS in + *-m32*) + ;; + *) + LDFLAGS="-m32 $LDFLAGS" + ;; + esac ; fi ;; esac @@ -3220,6 +3283,9 @@ case $host_os in DED_LDFLAGS="-shared -Wl,-Bsymbolic" if test X${enable_m64_build} = Xyes; then DED_LDFLAGS="-m64 $DED_LDFLAGS" + fi; + if test X${enable_m32_build} = Xyes; then + DED_LDFLAGS="-m32 $DED_LDFLAGS" fi ;; freebsd*) @@ -3228,6 +3294,9 @@ case $host_os in DED_LDFLAGS="-shared" if test X${enable_m64_build} = Xyes; then DED_LDFLAGS="-m64 $DED_LDFLAGS" + fi; + if test X${enable_m32_build} = Xyes; then + DED_LDFLAGS="-m32 $DED_LDFLAGS" fi ;; osf*) diff --git a/erts/doc/src/inet_cfg.xml b/erts/doc/src/inet_cfg.xml index 18cf65759a..2a033c037c 100644 --- a/erts/doc/src/inet_cfg.xml +++ b/erts/doc/src/inet_cfg.xml @@ -4,7 +4,7 @@ <chapter> <header> <copyright> - <year>2004</year><year>2009</year> + <year>2004</year><year>2010</year> <holder>Ericsson AB. All Rights Reserved.</holder> </copyright> <legalnotice> @@ -13,12 +13,12 @@ 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. - + </legalnotice> <title>Inet configuration</title> @@ -230,6 +230,13 @@ (use the Erlang DNS client <seealso marker="kernel:inet_res">inet_res</seealso> for nameserver queries).</p> + <p>The lookup method <c><![CDATA[string]]></c> tries to + parse the hostname as a IPv4 or IPv6 string and return + the resulting IP address. It is automatically tried + first when <c><![CDATA[native]]></c> is <em>not</em> + in the <c><![CDATA[Methods]]></c> list. To skip it in this case + the pseudo lookup method <c><![CDATA[nostring]]></c> can be + inserted anywhere in the <c><![CDATA[Methods]]></c> list.</p> <p></p> </item> <tag><em><c><![CDATA[{cache_size, Size}.]]></c></em></tag> |