mirror of
				https://github.com/Klipper3d/klipper.git
				synced 2025-11-03 20:05:49 +01:00 
			
		
		
		
	chelper: Fix check for failed code build
Commit 73b78af6 inadvertently removed the check for a successful gcc
compilation.  Add the check back in.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
			
			
This commit is contained in:
		@@ -199,12 +199,21 @@ def check_build_code(sources, target):
 | 
			
		||||
    obj_times = get_mtimes([target])
 | 
			
		||||
    return not obj_times or max(src_times) > min(obj_times)
 | 
			
		||||
 | 
			
		||||
# Check if the current gcc version supports a particular command-line option
 | 
			
		||||
def check_gcc_option(option):
 | 
			
		||||
    cmd = "%s %s -S -o /dev/null -xc /dev/null > /dev/null 2>&1" % (
 | 
			
		||||
        GCC_CMD, option)
 | 
			
		||||
    res = os.system(cmd)
 | 
			
		||||
    return res == 0
 | 
			
		||||
 | 
			
		||||
# Check if the current gcc version supports a particular command-line option
 | 
			
		||||
def do_build_code(cmd):
 | 
			
		||||
    res = os.system(cmd)
 | 
			
		||||
    if res:
 | 
			
		||||
        msg = "Unable to build C code module (error=%s)" % (res,)
 | 
			
		||||
        logging.error(msg)
 | 
			
		||||
        raise Exception(msg)
 | 
			
		||||
 | 
			
		||||
FFI_main = None
 | 
			
		||||
FFI_lib = None
 | 
			
		||||
pyhelper_logging_callback = None
 | 
			
		||||
@@ -223,7 +232,7 @@ def get_ffi():
 | 
			
		||||
            else:
 | 
			
		||||
                cmd = "%s %s" % (GCC_CMD, COMPILE_ARGS)
 | 
			
		||||
            logging.info("Building C code module %s", DEST_LIB)
 | 
			
		||||
            os.system(cmd % (destlib, ' '.join(srcfiles)))
 | 
			
		||||
            do_build_code(cmd % (destlib, ' '.join(srcfiles)))
 | 
			
		||||
        FFI_main = cffi.FFI()
 | 
			
		||||
        for d in defs_all:
 | 
			
		||||
            FFI_main.cdef(d)
 | 
			
		||||
@@ -254,7 +263,7 @@ def run_hub_ctrl(enable_power):
 | 
			
		||||
    destlib = get_abs_files(hubdir, [HC_TARGET])[0]
 | 
			
		||||
    if check_build_code(srcfiles, destlib):
 | 
			
		||||
        logging.info("Building C code module %s", HC_TARGET)
 | 
			
		||||
        os.system(HC_COMPILE_CMD % (destlib, ' '.join(srcfiles)))
 | 
			
		||||
        do_build_code(HC_COMPILE_CMD % (destlib, ' '.join(srcfiles)))
 | 
			
		||||
    os.system(HC_CMD % (hubdir, enable_power))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -73,7 +73,7 @@ def check_fatfs_build(printfunc=lambda o: o):
 | 
			
		||||
        else:
 | 
			
		||||
            cmd = "%s %s" % (chelper.GCC_CMD, chelper.COMPILE_ARGS)
 | 
			
		||||
        printfunc("Building FatFS shared library...")
 | 
			
		||||
        os.system(cmd % (destlib, ' '.join(srcfiles)))
 | 
			
		||||
        chelper.do_build_code(cmd % (destlib, ' '.join(srcfiles)))
 | 
			
		||||
        printfunc("Done\n")
 | 
			
		||||
    global fatfs_ffi_main, fatfs_ffi_lib
 | 
			
		||||
    ffi_main.cdef(FATFS_CDEFS)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user