Conversation
|
Thanks for this contribution! There are a couple of things to address before it can be merged: includesThe change to Was there some failure which prompted this change? releasesThe new I plan to fix this for my various projects by changing the release process to create a release branch and commit the generated files to the branch. But of course that doesn't address the needs of CI for non-unix-like platforms so your reversion.py is heading in the right direction. So that's OK so far, but I would prefer not to have two parallel implementations of the same thing, especially since the old shell one is fairly horrible. Since you are re-doing it in a Real Programming Language 😄 it would be better to completely remove You don't need to do anything else with the release machinery: that's just me thinking out loud and providing a bit of context. |
Using To elaborate, with the current setup, inside Visual Studio, clicking on This means if I click on the file that shows up and make some changes/fixes etc. and hit recompile, I can see all of my changes being reflected in the compiled binary, however, the changes are made to a build specific copy and not the original, meaning when I go to do a
GitHub has a weird habit of wanting developers to work inside GitHub's weird system where if you want to make an actual "Release" and not just a snapshot of the repository at the tag, you would need to generate the artefacts yourself (git archive with
Sure, I can remove |
|
For the includes issue, I can think of a few ways to resolve it, in no order in particular
|
Changes the Makefiles to add -Iunix for the normal Makefile and -Iwin32 for the mingw one. This makes it easier to change which unifdef.h gets included in unifdef.c without needing to copy or move unifdef.c to the build folder Signed-off-by: Christopher Degawa <ccom@randomderp.com>
|
For now, I will opt to use the I have removed leaving 3f31c69 so I have a breadcrumb in case I need to go back |
Simple usage example ```bash meson build . ninja -C build ``` Signed-off-by: Christopher Degawa <ccom@randomderp.com>
Also remove references to version.sh Signed-off-by: Christopher Degawa <ccom@randomderp.com>
|
ping @fanf2 this came up in my work again, so I wanted to revisit adding this again and potentially adding it to msys2's packages |
|
Is there anything specific this PR is missing, atm? |
Allows for easy {cross-,}compilation for Windows and a lot of other systems
Adds a meson.build file that actually contains the directives for meson and the reversion.sh script written in basic python so it doesn't require a working
shAlso modifies unifdef.c to use
<unifdef.h>so it's possible to use-Ito influence where it decides to look for the header instead of looking relative to the file itself.Currently, only supports building and installing
unifdef$(EXE_SUFIX)and the manpages, but does not support thetest,realclean,Changelong,unifdef.txt, andreleasetargets yet as those will need additional workto run a basic build,
meson builddir . ninja -C builddir sudo ninja -C builddir installand that will produce
./builddir/unifdefand install/usr/local/bin/unifdefand the man pagesI am thinking of removing the sln file and the Makefile.mingw after I work on making sure there is nothing missing and after adding GitHub Actions