diff options
author | Jason Rumney <jasonr@gnu.org> | 2003-01-25 20:50:48 +0000 |
---|---|---|
committer | Jason Rumney <jasonr@gnu.org> | 2003-01-25 20:50:48 +0000 |
commit | e00065384265cb8b1068757d044b2ad565301d68 (patch) | |
tree | 306963a395d06713ddd3f3504003d44e6ccab5f3 /nt | |
parent | c262430d1174625b0388f5be9a086dc8aedb4247 (diff) | |
download | emacs-e00065384265cb8b1068757d044b2ad565301d68.tar.gz |
Automatically detect libpng.
Diffstat (limited to 'nt')
-rwxr-xr-x | nt/configure.bat | 45 |
1 files changed, 42 insertions, 3 deletions
diff --git a/nt/configure.bat b/nt/configure.bat index 0525b53bd21..2aa477ca628 100755 --- a/nt/configure.bat +++ b/nt/configure.bat @@ -85,6 +85,7 @@ if "%1" == "--no-opt" goto noopt if "%1" == "--no-cygwin" goto nocygwin
if "%1" == "--cflags" goto usercflags
if "%1" == "--ldflags" goto userldflags
+if "%1" == "--without-png" goto withoutpng
if "%1" == "" goto checkutils
:usage
echo Usage: configure [options]
@@ -97,6 +98,7 @@ echo. --no-opt disable optimization echo. --no-cygwin use -mno-cygwin option with GCC
echo. --cflags FLAG pass FLAG to compiler
echo. --ldflags FLAG pass FLAG to compiler when linking
+echo. --without-png do not use libpng even if it is installed
goto end
rem ----------------------------------------------------------------------
:setprefix
@@ -143,6 +145,12 @@ set userldflags=%userldflags%%sep2%%1 set sep2= %nothing%
shift
goto again
+rem ----------------------------------------------------------------------
+
+:withoutpng
+set pngsupport=N
+set HAVE_PNG=
+goto again
rem ----------------------------------------------------------------------
rem Check that necessary utilities (cp and rm) are present.
@@ -165,7 +173,7 @@ goto end rem ----------------------------------------------------------------------
rem Auto-detect compiler if not specified, and validate GCC if chosen.
:checkcompiler
-if (%COMPILER%)==(cl) goto genmakefiles
+if (%COMPILER%)==(cl) goto compilercheckdone
if (%COMPILER%)==(gcc) goto checkgcc
echo Checking whether 'cl' is available...
@@ -231,13 +239,39 @@ goto end set COMPILER=gcc
rm -f junk.c junk.o
echo Using 'gcc'
-goto genmakefiles
+goto compilercheckdone
:clOk
set COMPILER=cl
rm -f junk.c junk.obj
echo Using 'MSVC'
-goto genmakefiles
+
+:compilercheckdone
+
+rem ----------------------------------------------------------------------
+rem Check for external image libraries. Since they are loaded
+rem dynamically, the libraries themselves do not need to be present
+rem at compile time, but the header files are required.
+
+if (%pngsupport%) == (N) goto pngDone
+
+echo Checking for libpng...
+echo #include "png.h" >junk.c
+echo main (){} >>junk.c
+rem -o option is ignored with cl, but allows result to be consistent.
+%COMPILER% %usercflags% -c junk.c -o junk.obj
+if exist junk.obj goto havePng
+
+echo ...building without PNG support.
+set HAVE_PNG=
+goto :pngDone
+
+:havePng
+echo ...PNG header available, building with PNG support.
+set HAVE_PNG=1
+
+:pngDone
+rm -f junk.c junk.obj
rem ----------------------------------------------------------------------
:genmakefiles
@@ -261,8 +295,13 @@ echo # End of settings from configure.bat>>config.settings echo. >>config.settings
copy config.nt ..\src\config.h
+echo. >>..\src\config.h
+echo /* Start of settings from configure.bat. */ >>..\src\config.h
if not "(%usercflags%)" == "()" echo #define USER_CFLAGS " %usercflags%">>..\src\config.h
if not "(%userldflags%)" == "()" echo #define USER_LDFLAGS " %userldflags%">>..\src\config.h
+if not "(%HAVE_PNG%)" == "()" echo #define HAVE_PNG 1 >>..\src\config.h
+echo /* End of settings from configure.bat. */ >>..\src\config.h
+
copy paths.h ..\src\epaths.h
copy /b config.settings+%MAKECMD%.defs+..\nt\makefile.w32-in ..\nt\makefile
|