Skip to content

Commit 4fccaf6

Browse files
committed
Revert "build c2str.exe with the host compiler; default it to gcc if cross prefix given"
This reverts commit 41fa74f. Reasons for the revert: 1. The commit message is lacking and the use case is not obvious. At the very least a concrete example of use case should be given (likely cross-building tcc on platform X for running on platform Y), followed by an issue description in such use case, and fix descr. (e.g. "On platform X, when running ./configure ... && make ..., the build fails because whatever. this commit does Y and fixes it"). 2. assign_opt is used incorrectly: 1st arg must be --OPTNAME=VALUE but it's not. The only thing it does is unconditional host_cc=gcc if --cross-prefix=... is used - no need for "assign_opt" at all. 3. cross-building tcc currently has several triggers: build/target cpu differ, or build/target OS differ, or --cross-prefix=... is used, but that commit only covers the --cross-prefix=... case. It's possible that it's intentional to only cover one case, but if so then it's not explained why. 4. The var name host_cc is likely incorrect and probably meant to be "native_cc", judging by the assigned value "gcc". 5. "gcc" is used unconditionally in such case, without any way to use a different native compiler (assuming that's indeed the goal). A better approach is likely supporting --native-cc=... option which defaults to $cc (which already defaults to "gcc") _before_ $cross_prefix is added in-front.
1 parent 41fa74f commit 4fccaf6

2 files changed

Lines changed: 2 additions & 5 deletions

File tree

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -256,7 +256,7 @@ endif
256256
$S./c2str.exe $< $@
257257

258258
c2str.exe : conftest.c
259-
$S$(HOST_CC) -DC2STR $< -o $@
259+
$S$(CC) -DC2STR $< -o $@
260260

261261
# target specific object rule
262262
$(X)%.o : %.c $(LIBTCC_INC)

configure

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,6 @@ build_cross=
5858
test -n "$CC" && cc="$CC"
5959
test -n "$AR" && ar="$AR"
6060

61-
host_cc="$CC"
62-
6361
# set default CFLAGS if unset in environment
6462
test -z "$CFLAGS" && CFLAGS="-Wall -O2"
6563

@@ -124,7 +122,7 @@ for opt do
124122
;;
125123
--source-path=*) assign_opt "$opt" source_path
126124
;;
127-
--cross-prefix=*) assign_opt "$opt" cross_prefix; assign_opt "gcc" host_cc
125+
--cross-prefix=*) assign_opt "$opt" cross_prefix
128126
;;
129127
--os-release=*) assign_opt "$opt" os_release
130128
;;
@@ -586,7 +584,6 @@ mandir=\$(DESTDIR)$mandir
586584
infodir=\$(DESTDIR)$infodir
587585
docdir=\$(DESTDIR)$docdir
588586
CC=$cc
589-
HOST_CC=$host_cc
590587
CC_NAME=$cc_name
591588
GCC_MAJOR=$gcc_major
592589
GCC_MINOR=$gcc_minor

0 commit comments

Comments
 (0)