diff options
author | Norbert Thiebaud <nthiebaud@gmail.com> | 2010-11-25 20:59:53 -0600 |
---|---|---|
committer | Norbert Thiebaud <nthiebaud@gmail.com> | 2010-11-25 20:59:53 -0600 |
commit | 40dce2b681387f27e24c735ac1d5e37e2fdb710d (patch) | |
tree | f4e0254d2227c1b943db69f051f7997cabe00761 | |
parent | f6f4ab31611d3af0fd06da94aba6203e5640f3f1 (diff) |
exile some download-dependent configure test into a post_download step
on windows, the configure check that some dll/exe are present.
these are in fact automatically downloaded by the ./download script.
but that script is run _after_ ./configure.
So the tests are postponed and run in a post_download script that is
invoked at the end of the download script.
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | configure.in | 94 | ||||
-rwxr-xr-x | download | 4 | ||||
-rw-r--r-- | post_download.in | 135 |
4 files changed, 149 insertions, 85 deletions
diff --git a/.gitignore b/.gitignore index 588c1f057..e1c4177a0 100644 --- a/.gitignore +++ b/.gitignore @@ -25,6 +25,7 @@ /makefile.mk /set_soenv /visibility.cxx +/post_download # misc /set_soenv.last diff --git a/configure.in b/configure.in index f23a849a3..b224b767b 100644 --- a/configure.in +++ b/configure.in @@ -3381,6 +3381,10 @@ if test "$_os" = "WINNT"; then with_jdk_home=`cygpath -u "$with_jdk_home"` fi fi +if test $_os = "WINNT"; then + WITH_VC_REDIST="TRUE" +fi +AC_SUBST(WITH_VC_REDIST) dnl =================================================================== dnl Checks for java @@ -6240,91 +6244,6 @@ fi AC_SUBST(ZIP_HOME) dnl =================================================================== -dnl Windows builds need dbghelp.dll in external/dbghelp/ -dnl =================================================================== -if test "$_os" = "WINNT"; then - AC_MSG_CHECKING([for dbghelp.dll]) - if test -x ./external/dbghelp/dbghelp.dll; then - AC_MSG_RESULT([found]) - else - AC_MSG_ERROR([dbghelp.dll is missing in external/dbghelp/. -Get it from the Microsoft site and put it into external/dbghelp. -(Note: Microsoft seems to enjoy changing the exact location of this file. You -may have to search Microsoft's website.) Last time it was seen at: -<http://www.microsoft.com/downloads/release.asp?releaseid=30682>.]) - fi -fi - -dnl =================================================================== -dnl Windows builds - use oowintool to copy CRT dlls and manifest -dnl =================================================================== -if test "$_os" = "WINNT" -a "$WITH_MINGWIN" != "yes"; then - if ./oowintool --msvc-copy-dlls ./external/msvcp ; then - : - else - AC_MSG_ERROR([oowintool failed to copy CRT]) - fi -fi - -dnl =================================================================== -dnl Windows builds need gdiplus.dll in external/gdiplus/ -dnl =================================================================== -if test "$_os" = "WINNT"; then - AC_MSG_CHECKING([for gdiplus.dll]) - if test -x ./external/gdiplus/gdiplus.dll; then - AC_MSG_RESULT([found]) - else - AC_MSG_ERROR([gdiplus.dll is missing in external/gdiplus/. -Get it from the Microsoft site and put it into external/gdiplus. -You may have to search Microsoft's website. Last time it was seen at: -<http://www.microsoft.com/downloads/details.aspx?familyid=6A63AB9C-DF12-4D41-933C-BE590FEAA05A&displaylang=en>.]) - fi -fi - -dnl =================================================================== -dnl Windows builds need vcredist_x86.exe and vcredist_x64.exe in external/vcredist/ -dnl =================================================================== -if test "$_os" = "WINNT"; then - AC_MSG_CHECKING([for vcredist_x86.exe]) - if test -e ./external/vcredist/vcredist_x86.exe; then - AC_MSG_RESULT([found]) - else - AC_MSG_ERROR([vcredist_x86.exe is missing in external/vcredist/. -Get the version corresponding to your Visual Studio from the Microsoft site -and put it into external/vcredist.]) - fi - AC_MSG_CHECKING([for vcredist_x64.exe]) - if test -e ./external/vcredist/vcredist_x64.exe; then - AC_MSG_RESULT([found]) - else - AC_MSG_ERROR([vcredist_x64.exe is missing in external/vcredist/. -Get the version corresponding to your Visual Studio from the Microsoft site -and put it into external/vcredist.]) - fi - WITH_VC_REDIST="TRUE" -fi -AC_SUBST(WITH_VC_REDIST) - -dnl =================================================================== -dnl Windows builds - attempt to auto-copy required instmsiX.exe into external/ -dnl =================================================================== -if test "$_os" = "WINNT"; then - ./oowintool --msvc-copy-instmsi ./external/msi -fi - -dnl =================================================================== -dnl Windows builds with MSVS 2008/2010 need instmsiw.exe in external/msi -dnl =================================================================== -if test "$_os" = "WINNT"; then - AC_MSG_CHECKING([for instmsiw.exe]) - if test -f ./external/msi/instmsiw.exe; then - AC_MSG_RESULT([found]) - else - AC_MSG_ERROR([instmsiw.exe is missing in external/msi.]) - fi -fi - -dnl =================================================================== dnl Test which vclplugs have to be built. dnl =================================================================== AC_MSG_CHECKING([which VCLplugs shall be built]) @@ -8093,3 +8012,8 @@ else fi echo fi + +dnl Setting up the post_download check script +echo "setting up the post_download check script" +autoconf post_download.in > post_download +chmod +x post_download @@ -156,6 +156,10 @@ done rm $TARFILE_LOCATION/tmp/*-* cd $start_dir +if [ -e post_download ] ; + ./post_download +fi + if [ ! -z "$failed" ]; then echo echo ERROR: failed on: diff --git a/post_download.in b/post_download.in new file mode 100644 index 000000000..674d6b10e --- /dev/null +++ b/post_download.in @@ -0,0 +1,135 @@ +AC_INIT([LibreOffice], [3.3],,, [http://documentfoundation.org/]) +AC_PREREQ(2.50) + +echo "********************************************************************" +echo "*" +echo "* Running the post download checks." +echo "*" +echo "********************************************************************" + +dnl =================================================================== +dnl The following is a list of supported systems. +dnl =================================================================== +#defaults unless the os test overrides this: + +case "$build_os" in + solaris*) + _os=SunOS + ;; + linux-gnu*|k*bsd*-gnu*) + _os=Linux + ;; + gnu) + _os=GNU + ;; + cygwin*) # Windows + _os=WINNT + ;; + darwin*) # Mac OS X + _os=Darwin + ;; + os2*) + _os=OS2 + ;; + freebsd*) + _os=FreeBSD + ;; + osf) + _os=OSF1 + ;; + *netbsd*) + _os=NetBSD + ;; + aix*) + _os=AIX + ;; + openbsd*) + _os=OpenBSD + ;; + *) + AC_MSG_ERROR([$_os operating system is not suitable to build LibreOffice!]) + ;; +esac + +dnl =================================================================== +dnl Windows builds need dbghelp.dll in external/dbghelp/ +dnl =================================================================== +if test "$_os" = "WINNT"; then + AC_MSG_CHECKING([for dbghelp.dll]) + if test -x ./external/dbghelp/dbghelp.dll; then + AC_MSG_RESULT([found]) + else + AC_MSG_ERROR([dbghelp.dll is missing in external/dbghelp/. +Get it from the Microsoft site and put it into external/dbghelp. +(Note: Microsoft seems to enjoy changing the exact location of this file. You +may have to search Microsoft's website.) Last time it was seen at: +<http://www.microsoft.com/downloads/release.asp?releaseid=30682>.]) + fi +fi + +dnl =================================================================== +dnl Windows builds - use oowintool to copy CRT dlls and manifest +dnl =================================================================== +if test "$_os" = "WINNT" -a "$WITH_MINGWIN" != "yes"; then + if ./oowintool --msvc-copy-dlls ./external/msvcp ; then + : + else + AC_MSG_ERROR([oowintool failed to copy CRT]) + fi +fi + +dnl =================================================================== +dnl Windows builds need gdiplus.dll in external/gdiplus/ +dnl =================================================================== +if test "$_os" = "WINNT"; then + AC_MSG_CHECKING([for gdiplus.dll]) + if test -x ./external/gdiplus/gdiplus.dll; then + AC_MSG_RESULT([found]) + else + AC_MSG_ERROR([gdiplus.dll is missing in external/gdiplus/. +Get it from the Microsoft site and put it into external/gdiplus. +You may have to search Microsoft's website. Last time it was seen at: +<http://www.microsoft.com/downloads/details.aspx?familyid=6A63AB9C-DF12-4D41-933C-BE590FEAA05A&displaylang=en>.]) + fi +fi + +dnl =================================================================== +dnl Windows builds need vcredist_x86.exe and vcredist_x64.exe in external/vcredist/ +dnl =================================================================== +if test "$_os" = "WINNT"; then + AC_MSG_CHECKING([for vcredist_x86.exe]) + if test -e ./external/vcredist/vcredist_x86.exe; then + AC_MSG_RESULT([found]) + else + AC_MSG_ERROR([vcredist_x86.exe is missing in external/vcredist/. +Get the version corresponding to your Visual Studio from the Microsoft site +and put it into external/vcredist.]) + fi + AC_MSG_CHECKING([for vcredist_x64.exe]) + if test -e ./external/vcredist/vcredist_x64.exe; then + AC_MSG_RESULT([found]) + else + AC_MSG_ERROR([vcredist_x64.exe is missing in external/vcredist/. +Get the version corresponding to your Visual Studio from the Microsoft site +and put it into external/vcredist.]) + fi +fi + +dnl =================================================================== +dnl Windows builds - attempt to auto-copy required instmsiX.exe into external/ +dnl =================================================================== +if test "$_os" = "WINNT"; then + ./oowintool --msvc-copy-instmsi ./external/msi +fi + +dnl =================================================================== +dnl Windows builds with MSVS 2008/2010 need instmsiw.exe in external/msi +dnl =================================================================== +if test "$_os" = "WINNT"; then + AC_MSG_CHECKING([for instmsiw.exe]) + if test -f ./external/msi/instmsiw.exe; then + AC_MSG_RESULT([found]) + else + AC_MSG_ERROR([instmsiw.exe is missing in external/msi.]) + fi +fi |