[Geany-Devel] Linkage-Cleanup Build System Breakage
Matthew Brush
mbrush at xxxxx
Sat Oct 25 18:37:53 UTC 2014
Hi All, and especially build system maintainers :)
I have made a pull request[0] to cleanup the symbol exports of Geany.
The PR description pretty much covers the details. If I merge this, it's
going to break the makefile.win32 files, Waf and possibly the Win32
Nightly builds.
I can probably fix-up the makefile.win32 files if nobody else will as
it's just plain GNU make and should be similar changes as the Autotools.
It will require a couple more *nix utilities, namely `sed`, `sort`, and
`uniq` (or a `sort` that supports the `-u` option). A quick search finds
sed[1] and coreutils[2] which contains `sort` (probably with -u option)
and `uniq`. I assume MSYS also includes these common utils.
I don't really know enough about Waf to fix it. Since it needs Python
anyway, we could just use one of its XML libraries to grab the names
from the GtkBuilder file, and do the replacements using its
text-handling functions. It wouldn't require sed/sort utils. I
originally had a Python script[3] doing this, but I'm just not sure how
to integrate that code into Waf.
If the Win32 Nightlies break it will most likely be trivial changes to
the Makefile.ams. I don't have an environment like it uses to test.
Geany-Plugins Autotools should be fine since it will pickup the new
library from the pkg-config flags. There's a couple bugs in some (of my)
plugins where it misses the needed linker flags which are trivial to
fix. I don't know if Waf uses pkg-config or what, but if not, it will
need to add the equivalent of something like `-L/geanys/lib/dir -lgeany`
to be able to find and link to the new library.
Is everyone OK if this PR was merged to master and we had to fix up some
build system stuff? Alternatively, I could also add anyone for push
rights on my geany fork or push it to a branch on main geany repo if we
wanted to sort-out the integration issues before merging to the main
master branch.
Cheers,
Matthew Brush
[0]: https://github.com/geany/geany/pull/358
[1]: http://gnuwin32.sourceforge.net/packages/sed.htm
[2]: http://gnuwin32.sourceforge.net/packages/coreutils.htm
[3]:
https://raw.githubusercontent.com/codebrainz/geany/74d21da4570c777a4a112b7438a6608e0caf6c40/scripts/signalconn
More information about the Devel
mailing list