On Fri, Dec 4, 2020 at 9:38 PM Ryan Schmidt <ryandes...@macports.org> wrote: > > On Dec 4, 2020, at 20:27, Jeffrey Walton wrote: > > > On Fri, Dec 4, 2020 at 9:26 PM Ryan Schmidt wrote: > > > >> On Dec 4, 2020, at 20:24, Jeffrey Walton wrote: > >> > >>> On Fri, Dec 4, 2020 at 8:53 PM Timothy Allison wrote: > >>>> > >>>> I have been using kmymoney on my Macs for many years now. I stupidly > >>>> upgraded to Big Sur a month ago, and have been paying the price with > >>>> kmymoney4 for about a month. > >>>> Now that qt4 installs, kmymoney4 fails because gwenhywfar4 fails to > >>>> build. The log file contains 3 errors: > >>>> :info:build libtest.m:57:2: error: implicit declaration of function > >>>> 'test1' is invalid in C99 > >>>> [-Werror,-Wimplicit-function-declaration]:info:build > >>>> test1();:info:build ^:info:build libtest.m:88:6: error: implicit > >>>> declaration of function 'Cocoa_Gui_new' is invalid in C99 > >>>> [-Werror,-Wimplicit-function-declaration]:info:build > >>>> gui=Cocoa_Gui_new();:info:build ^:info:build libtest.m:88:5: > >>>> warning: incompatible integer to pointer conversion assigning to > >>>> 'GWEN_GUI *' (aka 'struct GWEN_GUI *') from 'int' > >>>> [-Wint-conversion]:info:build gui=Cocoa_Gui_new();:info:build > >>>> ^~~~~~~~~~~~~~~~:info:build libtest.m:93:6: error: implicit > >>>> declaration of function 'Dlg_Test1_new' is invalid in C99 > >>>> [-Werror,-Wimplicit-function-declaration]:info:build > >>>> dlg=Dlg_Test1_new();:info:build ^ > >>>> > >>>> Unlike qt4-mac, I haven’t found any MacPorts tickets on this issue. Is > >>>> there a workaround? I’d really like to go back to kmymoney, and a month > >>>> is a long time to wait. > >>> > >>> After you configure, run the following script before running make. > >>> > >>> IFS="" find "./" -iname 'Makefile' -print | while read -r file > >>> do > >>> > >>> touch -a -m -r "$file" "$file.timestamp" > >>> chmod a+w "$file" > >>> sed -e "s/-Werror//g" "$file" > "$file.fixed" && \ > >>> mv "$file.fixed" "$file" > >>> > >>> chmod a-w "$file" > >>> touch -a -m -r "$file.timestamp" "$file" > >>> rm "$file.timestamp" > >>> done > >> > >> Dunno what you're suggesting here, but it's not the correct fix. > > > > The script above removes the DoS the user is currently suffering. > > It looks like the script removes "-Werror" from any Makefile. The problem the > user is experiencing is not the result of any "-Werror" in any Makefile; > rather, it is the result of the fact that Apple changed implicit declaration > of functions from a warning to an error in Xcode 12. The fix is not to > attempt to turn the error back into a warning again. The fix is to define > functions before you use them.
The user does not care what the developer's fix is. He just wants the DoS gone so he can use his software. Jeff