Mick Pearson
unread,Jun 12, 2021, 4:13:32 AM6/12/21Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Sign in to report message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to gn-dev, David Turner, gn-dev, Brett Wilson, Mick Pearson
Hey guys, I did find (seemingly) instant success yesterday, and shared my experience here (
https://groups.google.com/g/angleproject/c/f7i0kucc5xM/m/ANzo95TmBwAJ) and noted it in the older "static library" troubles linked to in the OP.
It works great (or seems to, it passes linking, I still have to build/test the app) although I'm still a little confused if the zlib BUILD.gn is in a bug state (doesn't support static builds) because it seems to not include its own cpp/OBJ files that aren't declared in its sources. I.e. it seems it can't support apps that use this static build mode via "component". I take it shared libraries act like "complete_static_lib" by default or else this wouldn't fly for any consumer of zlib/BUILD.gn.
I'm glad to be over this speed bump, a little sad I sunk many days of work into it, but glad I eventually caught a break. If the zlib set up was functional I might have carried on trying to patch together a build without
complete_static_lib to the end! I don't think the ANGLE guys know about this feature. It seems like its static libraries would be compatible with this. They're currently not functional I think because they're missing the core of ANGLE's internal, but with this core library built with deps rolled in they fill in the gaps. (I'm not sure why it builds those static libraries or if they still work, I think they're mentioned in a debugging tips document. I don't know how recent it was but maybe converting its build files to GN from GYP was an upheaval. It still references GPY in python scripts. I don't know if Chromium has expert GN people but maybe someone who is expert should be reviewing the build scripts of Chromium's various components.)