mpir/build.vc9/configure.bat
gladman 0ac38fd71c 1. repair Windows build script
2. Add tuning for nehalem on Windows
2010-01-06 15:07:32 +00:00

151 lines
4.9 KiB
Batchfile

@echo off
:: Copyright 2009 Jason Moxham
::
:: This file is part of the MPIR Library.
::
:: The MPIR Library is free software; you can redistribute it and/or modify
:: it under the terms of the GNU Lesser General Public License as published
:: by the Free Software Foundation; either version 2.1 of the License, or (at
:: your option) any later version.
::
:: The MPIR Library is distributed in the hope that it will be useful, but
:: WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
:: or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
:: License for more details.
::
:: You should have received a copy of the GNU Lesser General Public License
:: along with the MPIR Library; see the file COPYING.LIB. If not, write
:: to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
:: Boston, MA 02110-1301, USA.
set LIBTYPE=lib
set CPU=?
set BITS=?
set GBITS=?
set GCPU=?
:lp
shift
if "%0" == "" goto :exitlp
if "%0" == "--enable-shared" ( set LIBTYPE=dll)
if "%0" == "--enable-static" ( set LIBTYPE=lib)
if "%0" == "--disable-shared" ( set LIBTYPE=lib)
if "%0" == "--disable-static" ( set LIBTYPE=dll)
if "%0" == "--ABI32" ( set BITS=32)
if "%0" == "--ABI64" ( set BITS=64)
if "%0" == "--cpu-none" ( set CPU=none)
if "%0" == "--cpu-x86_64" ( set CPU=x86_64)
if "%0" == "--cpu-i486" ( set CPU=i486)
if "%0" == "--cpu-pentium" ( set CPU=pentium)
if "%0" == "--cpu-pentiummmx" ( set CPU=pentiummmx)
if "%0" == "--cpu-pentiumpro" ( set CPU=pentiumpro)
if "%0" == "--cpu-pentium2" ( set CPU=pentium2)
if "%0" == "--cpu-pentium3" ( set CPU=pentium3)
if "%0" == "--cpu-core" ( set CPU=core)
if "%0" == "--cpu-core2" ( set CPU=core2)
if "%0" == "--cpu-penryn" ( set CPU=penryn)
if "%0" == "--cpu-nehalem" ( set CPU=nehalem)
if "%0" == "--cpu-atom" ( set CPU=atom)
if "%0" == "--cpu-netburst" ( set CPU=netburst)
if "%0" == "--cpu-netburstlahf" ( set CPU=netburstlahf)
if "%0" == "--cpu-pentium4" ( set CPU=pentium4)
if "%0" == "--cpu-prescott" ( set CPU=prescott)
if "%0" == "--cpu-k5" ( set CPU=k5)
if "%0" == "--cpu-k6" ( set CPU=k6)
if "%0" == "--cpu-k62" ( set CPU=k62)
if "%0" == "--cpu-k63" ( set CPU=k63)
if "%0" == "--cpu-k7" ( set CPU=k7)
if "%0" == "--cpu-k8" ( set CPU=k8)
if "%0" == "--cpu-k10" ( set CPU=k10)
if "%0" == "--cpu-viac3" ( set CPU=viac3)
if "%0" == "--cpu-viac32" ( set CPU=viac32)
goto :lp
:exitlp
if %BITS% == ? (
set BITS=64
if %PROCESSOR_ARCHITECTURE% == x86 (set BITS=32)
)
set ARCH=x86
set ARCHW=Win32
if %BITS% == 64 (
set ARCH=amd64
set ARCHW=x64
)
cl config.guess.c > nul 2>&1
if errorlevel 1 goto :nocc1
config.guess.exe print > config.guess.bat
call config.guess.bat
if %GBITS% == %BITS% goto :gotcc
:nocc1
if exist "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" (
call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" %ARCH%
)
cl config.guess.c > nul 2>&1
if errorlevel 1 goto :nocc
config.guess.exe print > config.guess.bat
call config.guess.bat
if %GBITS% == %BITS% goto :gotcc
:nocc
echo Cant find a compiler for %ARCH%
exit /b 1
:gotcc
set YASM="%VCINSTALLDIR%\bin\yasm.exe"
if not exist %YASM% (
echo Cant find %YASM%
echo Download from http://www.tortall.net/projects/yasm/ and install to above
exit /b 1
)
set YASMRULES="%VCINSTALLDIR%\VCProjectDefaults\yasm.rules"
if not exist %YASMRULES% (
echo Cant find %YASMRULES%
echo copy from this directory to above
exit /b 1
)
if %CPU% == ? ( set CPU=%GCPU%)
set BCPU=none
if %BITS% == 64 (
if %CPU% == x86_64 ( set BCPU=gc)
if %CPU% == core2 ( set BCPU=core2)
if %CPU% == penryn ( set BCPU=core2)
if %CPU% == nehalem ( set BCPU=nehalem)
if %CPU% == atom ( set BCPU=gc)
if %CPU% == netburst ( set BCPU=gc)
if %CPU% == netburstlahf ( set BCPU=gc)
if %CPU% == k8 ( set BCPU=k8)
if %CPU% == k10 ( set BCPU=k10)
)
if %BITS% == 32 (
if %CPU% == i486 ( set BCPU=gc)
if %CPU% == pentium ( set BCPU=p0)
if %CPU% == pentiummmx ( set BCPU=p0)
if %CPU% == pentiumpro ( set BCPU=p0)
if %CPU% == pentium2 ( set BCPU=p0)
if %CPU% == pentium3 ( set BCPU=p3)
if %CPU% == core ( set BCPU=p3)
if %CPU% == core2 ( set BCPU=p3)
if %CPU% == penryn ( set BCPU=p3)
if %CPU% == nehalem ( set BCPU=p3)
if %CPU% == atom ( set BCPU=p3)
if %CPU% == netburst ( set BCPU=p4)
if %CPU% == netburstlahf ( set BCPU=p4)
if %CPU% == pentium4 ( set BCPU=p4)
if %CPU% == prescott ( set BCPU=p4)
if %CPU% == k5 ( set BCPU=p0)
if %CPU% == k6 ( set BCPU=p0)
if %CPU% == k62 ( set BCPU=p0)
if %CPU% == k63 ( set BCPU=p0)
if %CPU% == k7 ( set BCPU=p3)
if %CPU% == k8 ( set BCPU=p3)
if %CPU% == k10 ( set BCPU=p3)
if %CPU% == viac3 ( set BCPU=p0)
if %CPU% == viac32 ( set BCPU=p0)
)
if %CPU% == none ( set BCPU=gc)
echo Detected %GCPU%
echo (set LIBTYPE=%LIBTYPE%) > config_params.bat
echo (set ARCHW=%ARCHW%) >> config_params.bat
echo (set BCPU=%BCPU%) >> config_params.bat
echo setting params to
type config_params.bat
exit /b 0