New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
mod_mod : The Modening #83
Conversation
Needs tons of cleanup, eventually, but apparently we're on a time limit. I'll be sending this commit on data, so further communications will not be present until tomorrow.
This only works with STATIC=1 right now, with a limited set of modules. Modules which will need PARTICULAR work are filters. All filters need to be properly setup with PGCTX stuff. Luckily, PGCTX also reduces the amount of boilerplate code for you. PGCTX macros are defined in plugin.h, also, stop using mod.h when you mean plugin.h, which includes mod.h anyway now.
Of these, I've only *fully* tested flt_rot_90 because I did major changes there
This won't help the CI problems, unfortunately... ... is there a way to get better traces from that?
This reverts commit 1f57069. Reason: I'm very stupid and need to sleep. - 20kdc
Finally, we're back where we started
I couldn't verify the macOS issues on my machine, let's see what CI says again |
@fridtjof any luck? |
Seems like there's a memleak on linux now. macOS looks fine though |
...Does the CI build actually have debug symbols? |
...actually, the debug info is added with: |
Well, we could log the addresses the libraries get loaded at with dlopen, that could help. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After looking at this again, I spotted some small things.
You've done awesome work, @20kdc.
@@ -35,7 +35,7 @@ BGMMODS_DEFAULT += bgm_fish bgm_pixelflut | |||
FLTMODS_DEFAULT += flt_gamma_correct flt_flip_x flt_flip_y flt_scale flt_rot_90 | |||
FLTMODS_DEFAULT += flt_smapper flt_channel_reorder | |||
|
|||
MODULES_DEFAULT += $(BGMMODS_DEFAULT) $(FLTMODS_DEFAULT) $(GFXMODS_DEFAULT) | |||
MODULES_DEFAULT += $(BGMMODS_DEFAULT) $(FLTMODS_DEFAULT) $(GFXMODS_DEFAULT) mod_farbherd |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is ugly, I propose this.
MODULES_DEFAULT += $(BGMMODS_DEFAULT) $(FLTMODS_DEFAULT) $(GFXMODS_DEFAULT) mod_farbherd | |
LOADERS_DEFAULT := mod_farbherd | |
MODULES_DEFAULT += $(BGMMODS_DEFAULT) $(FLTMODS_DEFAULT) $(GFXMODS_DEFAULT) $(LOADERS_DEFAULT) |
|
||
ifeq ($(OS),Linux) | ||
src/modules/mod_dl.c.libs: | ||
echo -ldl > src/modules/mod_dl.c.libs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this actually mod_dl.c.libs
and not mod_dl.libs
?
$(MODULES_WC) src/slloadcore.gen.c: $(MODULES_C) static/kslink | ||
cd static ; ./kslink $(addsuffix .c, $(addprefix ../src/modules/, $(MODULES))) > ../src/slloadcore.gen.c | ||
src/modules/mod_dl.c.libs: | ||
echo "" > src/modules/mod_dl.c.libs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same as above.
} | ||
|
||
void asl_test_av_validity(asl_av_t * self) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this test supposed to be in at all times?
We might wanna make this CIMODE
only and run it if possible.
Unit testing sled, huh..
Before merging this, I'd like to match the macOS versions built against on travis and azure pipelines, to identify on which versions it fails to build. |
However, Azure Pipelines doesn't have a build agent for macOS 10.12. This is the version that travis builds are failing on. This means we will have to either:
I can't assist with option 2, because my machine is running 10.14. |
It fails on 10.13 too. On that build, 10.12 built fine. |
This kind of breaks more things involving dependencies but at least keeps the build working
Awesome, @20kdc fixed the build issue. It was not macOS specific, it had to do with Make parallelity and k2link. |
Rearchitecture of module system. I'm not sure this is really refined enough, but vifino would like it as a PR so it gets a PR.
This also includes mod_farbherd since this was derived from that.
In particular I'm concerned about what happens to the CI on Mac OS X.
Advantages:
(EDIT : dammit markdown stop messing with my numbers)
Disadvantages: REALLY BIG ONES.
Y'know, the system based off of a shell script.
It's at LEAST mandatory for mod_dl.
You'll need to "make clean" often, for starters...
This fixes #66.