diff --git a/v2/tools/gcc.jam b/v2/tools/gcc.jam index ba31b668e..406a69768 100644 --- a/v2/tools/gcc.jam +++ b/v2/tools/gcc.jam @@ -439,20 +439,34 @@ class gcc-linking-generator : unix-linking-generator } } -generators.register [ new gcc-linking-generator gcc.link : LIB OBJ : EXE - : gcc ] ; - .IMPLIB-COMMAND = ; -.IMPLIB-TYPE = ; if [ os.on-windows ] { .IMPLIB-COMMAND = "-Wl,--out-implib," ; - .IMPLIB-TYPE = IMPORT_LIB ; + generators.register + [ new gcc-linking-generator gcc.link + : OBJ SEARCHED_LIB STATIC_LIB IMPORT_LIB + : EXE + : gcc ] ; + generators.register + [ new gcc-linking-generator gcc.link.dll + : OBJ SEARCHED_LIB STATIC_LIB IMPORT_LIB + : IMPORT_LIB SHARED_LIB + : gcc ] ; +} +else +{ + generators.register + [ new gcc-linking-generator gcc.link + : LIB OBJ + : EXE + : gcc ] ; + generators.register + [ new gcc-linking-generator gcc.link.dll + : LIB OBJ + : SHARED_LIB + : gcc ] ; } - -generators.register - [ new gcc-linking-generator gcc.link.dll : LIB OBJ : $(.IMPLIB-TYPE) SHARED_LIB - : gcc ] ; # Declare flags for linking # First, the common flags