[PATCH] cgcc: Fix preprocessing of assembler files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The old code does not preprocess assembler files when cgcc is called like
this:

cgcc -E -o multiboot.asm multiboot.S

As the preprocessor is not called, no multiboot.asm is generated, and any
further build steps which need it will fail.

Fix this by using a new intermediate variable $do_preprocess.

Signed-off-by: Stefan Weil <sw@xxxxxxxxxxx>
---

This patch allows using cgcc for QEMU builds. I did not run any other tests,
so please review carefully.

Thanks,
Stefan Weil

 cgcc |    9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/cgcc b/cgcc
index c075e5f..a43e074 100755
--- a/cgcc
+++ b/cgcc
@@ -10,6 +10,7 @@ my $has_specs = 0;
 my $gendeps = 0;
 my $do_check = 0;
 my $do_compile = 1;
+my $do_preprocess = 0;
 my $gcc_base_dir;
 my $verbose = 0;
 
@@ -44,8 +45,7 @@ while (@ARGV) {
         next;
     }
 
-    # If someone adds "-E", don't pre-process twice.
-    $do_compile = 0 if $_ eq '-E';
+    $do_preprocess = 1 if $_ eq '-E';
 
     $verbose = 1 if $_ eq '-v';
 
@@ -59,6 +59,11 @@ if ($gendeps) {
     $do_check = 0;
 }
 
+if ($do_check && $do_preprocess) {
+    # If someone adds "-E", don't pre-process twice.
+    $do_compile = 0;
+}
+
 if ($do_check) {
     if (!$has_specs) {
 	$check .= &add_specs ('host_arch_specs');
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux