comparison configure.bat @ 632:ed19b429a152

- added explicit arm64 target, and clang tool options to Windows' configure.bat - configure.{bat,rc} now writing Makefile.config, for consistency/compatibility (e.g. configure.bat can now be used to set up env flags for a non-nmake toolchain) - simplified/decluttered Windows and Plan9 configure scripts (removal of unused/stale options, ...) - removed stale test/makepkg.sh helper
author Tassilo Philipp
date Sat, 19 Nov 2022 15:45:41 +0100
parents f5e9f7f8a932
children 840a870c093c
comparison
equal deleted inserted replaced
631:e5ad8cf0aa72 632:ed19b429a152
1 @ECHO OFF 1 @ECHO OFF
2 REM /////////////////////////////////////////////////////////////////////////// 2 REM ///////////////////////////////////////////////////////////////////////////
3 REM 3 REM
4 REM Copyright (c) 2007-2009 Daniel Adler <dadler@uni-goettingen.de>, 4 REM Copyright (c) 2007-2022 Daniel Adler <dadler@uni-goettingen.de>,
5 REM Tassilo Philipp <tphilipp@potion-studios.com> 5 REM Tassilo Philipp <tphilipp@potion-studios.com>
6 REM 6 REM
7 REM Permission to use, copy, modify, and distribute this software for any 7 REM Permission to use, copy, modify, and distribute this software for any
8 REM purpose with or without fee is hereby granted, provided that the above 8 REM purpose with or without fee is hereby granted, provided that the above
9 REM copyright notice and this permission notice appear in all copies. 9 REM copyright notice and this permission notice appear in all copies.
25 SET PACKAGE=dyncall 25 SET PACKAGE=dyncall
26 SET CONFIG_HOST=windows 26 SET CONFIG_HOST=windows
27 SET CONFIG_OS=windows 27 SET CONFIG_OS=windows
28 SET CONFIG_TOOL=msvc 28 SET CONFIG_TOOL=msvc
29 SET CONFIG_ASM=ml 29 SET CONFIG_ASM=ml
30 SET CONFIG_CONFIG=release
31 IF [%PROCESSOR_ARCHITECTURE%] == [AMD64] ( 30 IF [%PROCESSOR_ARCHITECTURE%] == [AMD64] (
32 SET CONFIG_ARCH=x64 31 SET CONFIG_ARCH=x64
33 ) ELSE IF [%PROCESSOR_ARCHITEW6432%] == [AMD64] ( 32 ) ELSE IF [%PROCESSOR_ARCHITEW6432%] == [AMD64] (
34 SET CONFIG_ARCH=x64 33 SET CONFIG_ARCH=x64
34 ) ELSE IF [%PROCESSOR_ARCHITECTURE%] == [ARM64] (
35 SET CONFIG_ARCH=arm64
35 ) ELSE ( 36 ) ELSE (
36 SET CONFIG_ARCH=x86 37 SET CONFIG_ARCH=x86
37 ) 38 )
38 39
39 REM Scan arguments. 40 REM Scan arguments.
50 ECHO. configure.bat [ options ] 51 ECHO. configure.bat [ options ]
51 ECHO. 52 ECHO.
52 ECHO.Options: 53 ECHO.Options:
53 ECHO. /? print this page 54 ECHO. /? print this page
54 ECHO. 55 ECHO.
55 ECHO. /prefix PATH set installation prefix ^(GNU make only^)
56 ECHO. /prefix-bd PATH set build directory prefix ^(GNU make only^)
57 ECHO. ^(only for use with gmake^)
58 ECHO.
59 ECHO. /target-x86 build for x86 architecture 56 ECHO. /target-x86 build for x86 architecture
60 ECHO. /target-x64 build for x64 architecture 57 ECHO. /target-x64 build for x64 architecture
61 ECHO. /target-psp build for PlayStation Portable ^(homebrew SDK^) 58 ECHO. /target-arm64 build for arm64 architecture
62 ECHO. /target-nds-arm build for Nintendo DS ^(devkitPro, ARM mode^) 59 ECHO. /target-psp cross-build for PlayStation Portable ^(homebrew SDK^)
63 ECHO. /target-nds-thumb build for Nintendo DS ^(devkitPro, THUMB mode^) 60 ECHO. /target-nds-arm cross-build for Nintendo DS ^(devkitPro, ARM mode^)
61 ECHO. /target-nds-thumb cross-build for Nintendo DS ^(devkitPro, THUMB mode^)
64 ECHO. 62 ECHO.
65 ECHO. /tool-msvc use Microsoft Visual C++ compiler ^(default^) 63 ECHO. /tool-msvc use Microsoft Visual C++ compiler ^(default^)
66 ECHO. /tool-gcc use GNU Compiler Collection 64 ECHO. /tool-gcc use GNU Compiler Collection
65 ECHO. /tool-clang use LLVM clang compiler
67 ECHO. 66 ECHO.
68 ECHO. /asm-ml use Microsoft Macro Assembler ^(default^) 67 ECHO. /asm-ml use Microsoft Macro Assembler ^(default^)
69 ECHO. /asm-as use the GNU Assembler 68 ECHO. /asm-as use the GNU or LLVM Assembler
70 ECHO. /asm-nasm use NASM Assembler 69 ECHO. /asm-nasm use NASM Assembler
71 ECHO.
72 ECHO. /config-release build release version ^(default^)
73 ECHO. /config-debug build debug version
74 GOTO:EOF 70 GOTO:EOF
75 ) ELSE IF [%1]==[/prefix] (
76 SET CONFIG_PREFIX=%2
77 SHIFT
78 ) ELSE IF [%1]==[/prefix-bd] (
79 SET CONFIG_BUILDPREFIX=%2
80 SHIFT
81 ) ELSE IF [%1]==[/target-x86] ( 71 ) ELSE IF [%1]==[/target-x86] (
82 SET CONFIG_ARCH=x86 72 SET CONFIG_ARCH=x86
83 ) ELSE IF [%1]==[/target-x64] ( 73 ) ELSE IF [%1]==[/target-x64] (
84 SET CONFIG_ARCH=x64 74 SET CONFIG_ARCH=x64
75 ) ELSE IF [%1]==[/target-arm64] (
76 SET CONFIG_ARCH=arm64
85 ) ELSE IF [%1]==[/target-psp] ( 77 ) ELSE IF [%1]==[/target-psp] (
86 SET CONFIG_ARCH=mips32 78 SET CONFIG_ARCH=mips32
87 SET CONFIG_OS=psp 79 SET CONFIG_OS=psp
88 ) ELSE IF [%1]==[/target-nds-arm] ( 80 ) ELSE IF [%1]==[/target-nds-arm] (
89 SET CONFIG_ARCH=arm32_arm 81 SET CONFIG_ARCH=arm32_arm
95 SET CONFIG_TOOL=gcc 87 SET CONFIG_TOOL=gcc
96 SET CONFIG_ASM=as 88 SET CONFIG_ASM=as
97 ) ELSE IF [%1]==[/tool-msvc] ( 89 ) ELSE IF [%1]==[/tool-msvc] (
98 SET CONFIG_TOOL=msvc 90 SET CONFIG_TOOL=msvc
99 SET CONFIG_ASM=ml 91 SET CONFIG_ASM=ml
92 ) ELSE IF [%1]==[/tool-clang] (
93 SET CONFIG_TOOL=clang
94 SET CONFIG_ASM=as
100 ) ELSE IF [%1]==[/asm-as] ( 95 ) ELSE IF [%1]==[/asm-as] (
101 SET CONFIG_ASM=as 96 SET CONFIG_ASM=as
102 ) ELSE IF [%1]==[/asm-nasm] ( 97 ) ELSE IF [%1]==[/asm-nasm] (
103 SET CONFIG_ASM=nasm 98 SET CONFIG_ASM=nasm
104 ) ELSE IF [%1]==[/asm-ml] ( 99 ) ELSE IF [%1]==[/asm-ml] (
105 SET CONFIG_ASM=ml 100 SET CONFIG_ASM=ml
106 ) ELSE IF [%1]==[/config-release] (
107 SET CONFIG_CONFIG=release
108 ) ELSE IF [%1]==[/config-debug] (
109 SET CONFIG_CONFIG=debug
110 ) ELSE ( 101 ) ELSE (
111 ECHO Unknown parameter '%1'. 102 ECHO Unknown parameter '%1'.
112 GOTO DONE 103 GOTO DONE
113 ) 104 )
114 105
115 SHIFT 106 SHIFT
116 GOTO MAIN_LOOP 107 GOTO MAIN_LOOP
117 :DONE 108 :DONE
118 109
119 IF [%CONFIG_PREFIX%]==[] ( 110 ECHO # auto-generated by configure.bat >Makefile.config
120 SET CONFIG_PREFIX=%CD%\install_%CONFIG_OS%_%CONFIG_ARCH%_%CONFIG_TOOL%_%CONFIG_CONFIG% 111 ECHO CONFIG_PACKAGE=%PACKAGE%#>>Makefile.config
121 ) 112 ECHO CONFIG_HOST=%CONFIG_HOST%#>>Makefile.config
122 IF [%CONFIG_BUILDPREFIX%]==[] ( 113 ECHO CONFIG_OS=%CONFIG_OS%#>>Makefile.config
123 SET CONFIG_BUILDPREFIX=%CD%\build_out\%CONFIG_OS%_%CONFIG_ARCH%_%CONFIG_TOOL%_%CONFIG_CONFIG% 114 ECHO CONFIG_ARCH=%CONFIG_ARCH%#>>Makefile.config
124 ) 115 ECHO CONFIG_TOOL=%CONFIG_TOOL%#>>Makefile.config
116 ECHO CONFIG_ASM=%CONFIG_ASM%#>>Makefile.config
125 117
126 ECHO # auto-generated by configure.bat >ConfigVars 118 ECHO Writing following configuration to Makefile.config:
127 ECHO CONFIG_PACKAGE=%PACKAGE%#>>ConfigVars
128 ECHO CONFIG_HOST=%CONFIG_HOST%#>>ConfigVars
129 ECHO CONFIG_OS=%CONFIG_OS%#>>ConfigVars
130 ECHO CONFIG_ARCH=%CONFIG_ARCH%#>>ConfigVars
131 ECHO CONFIG_TOOL=%CONFIG_TOOL%#>>ConfigVars
132 ECHO CONFIG_ASM=%CONFIG_ASM%#>>ConfigVars
133 ECHO CONFIG_CONFIG=%CONFIG_CONFIG%#>>ConfigVars
134 ECHO CONFIG_PREFIX=%CONFIG_PREFIX%#>>ConfigVars
135 ECHO CONFIG_BUILDPREFIX=%CONFIG_BUILDPREFIX%#>>ConfigVars
136
137 ECHO Writing following configuration to ConfigVars:
138 ECHO. 119 ECHO.
139 ECHO Host OS: %CONFIG_HOST% 120 ECHO Host OS: %CONFIG_HOST%
140 ECHO Target OS: %CONFIG_OS% 121 ECHO Target OS: %CONFIG_OS%
141 ECHO Target Architecture: %CONFIG_ARCH% 122 ECHO Target Architecture: %CONFIG_ARCH%
142 ECHO Compiler: %CONFIG_TOOL% 123 ECHO Compiler: %CONFIG_TOOL%
143 ECHO Assembler: %CONFIG_ASM% 124 ECHO Assembler: %CONFIG_ASM%
144 ECHO Build configuration: %CONFIG_CONFIG%
145 ECHO Install prefix: %CONFIG_PREFIX%
146 ECHO Build prefix: %CONFIG_BUILDPREFIX%
147 125
148 126
149 REM We have to transform some pathes for the nds/devkitPro build. 127 REM We have to transform some pathes for the nds/devkitPro build.
150 IF [%CONFIG_OS%]==[nds] ( 128 IF [%CONFIG_OS%]==[nds] (
151 REM Check if DEVKITPRO is set. 129 REM Check if DEVKITPRO is set.
153 ECHO ERROR: Environment variable DEVKITPRO must be set to absolute devkitPro path. 131 ECHO ERROR: Environment variable DEVKITPRO must be set to absolute devkitPro path.
154 ) ELSE ( 132 ) ELSE (
155 buildsys\scripts\conf-nds.bat 133 buildsys\scripts\conf-nds.bat
156 ) 134 )
157 ) 135 )
136