diff options
| author | seyko <seyko2@gmail.com> | 2015-04-10 07:37:31 +0300 |
|---|---|---|
| committer | seyko <seyko2@gmail.com> | 2015-04-10 07:37:31 +0300 |
| commit | 7e7e6148fdb4adbda936f80b5d4ac3d738908d95 (patch) | |
| tree | 37bb17e54d38fdb905b79ba8dfa996500f066abe /configure | |
| parent | 5cd4393a542ef4c64df7dcbb3fbe3a629666239d (diff) | |
| download | tinycc-7e7e6148fdb4adbda936f80b5d4ac3d738908d95.tar.gz tinycc-7e7e6148fdb4adbda936f80b5d4ac3d738908d95.tar.bz2 | |
fix installation amd bcheck for Windows
* define targetos=Windows when --enable-tcc32-mingw, --enable-cygwin, ...
* use TARGETOS insteed HOST_OS when selecting PROGS
* use "$(tccdir)" insteed $(tccdir) on install (spaces in path)
* install tcc.exe too
* produce bcheck.o when cross-compiling too (lib/Makefile)
* force bcheck.o linking by compiling inside tcc_set_output_type()
a dummy program with local array. Otherwise bcheck.o may be not linked.
* replace %xz format specifier with %p in bcheck (don't supported on
Windows)
* call a __bound_init when __bound_ptr_add, __bound_ptr_indir,
__bound_new_region, __bound_delete_region called.
This is because a __bound_init inside ".init" section is not called
on Windows for unknown reason.
* print on stderr a message when an illegal pointer is returned:
there is no segmentation violation on Windows for a program
compiled with "tcc -b"
* remove "C:" subdir on clean if $HOST_OS = "Linux"
* default CFLAGS="-Wall -g -O0" insteed CFLAGS="-Wall -g -O2"
to speed up compilation and more precise debugging.
Diffstat (limited to 'configure')
| -rwxr-xr-x | configure | 15 |
1 files changed, 10 insertions, 5 deletions
@@ -47,7 +47,12 @@ tcc_elfinterp="" tcc_lddir= confvars= cpu= + host_os=`uname` +case $host_os in + MINGW32*) host_os=Windows; ;; + *) ;; +esac # OS specific targetos=`uname` @@ -170,13 +175,13 @@ for opt do ;; --enable-gprof) gprof="yes" ;; - --enable-mingw32) mingw32="yes" ; cross_prefix="i686-pc-mingw32-" ; cpu=x86 + --enable-mingw32) mingw32="yes" ; cross_prefix="i686-pc-mingw32-" ; cpu=x86; targetos=Windows; ;; - --enable-cygwin) mingw32="yes" ; cygwin="yes" ; cross_prefix="mingw32-" ; cpu=x86 + --enable-cygwin) mingw32="yes" ; cygwin="yes" ; cross_prefix="mingw32-" ; cpu=x86; targetos=Windows; ;; - --enable-tcc32-mingw) mingw32="yes" ; cross_prefix="i386-win-" ; cpu=x86; cc=tcc + --enable-tcc32-mingw) mingw32="yes" ; cross_prefix="i386-win-" ; cpu=x86; cc=tcc; targetos=Windows; ;; - --enable-tcc64-mingw) mingw32="yes" ; cross_prefix="x86_64-win-" ; cpu=x86_64; cc=tcc + --enable-tcc64-mingw) mingw32="yes" ; cross_prefix="x86_64-win-" ; cpu=x86_64; cc=tcc; targetos=Windows; ;; --enable-cross) build_cross="yes" ;; @@ -210,7 +215,7 @@ classify_cpu "$cpu" # Checking for CFLAGS if test -z "$CFLAGS"; then - CFLAGS="-Wall -g -O2" + CFLAGS="-Wall -g -O0" fi if test "$mingw32" = "yes" ; then |
