-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
FreeBSD fixes #2864
FreeBSD fixes #2864
Conversation
CLOCK_MONOTONIC appeared in IEEE Std. 1003.1-200x, it was not part of POSIX.1b (the 1993 version), and FreeBSD treats it accordingly.
PR swaywm#2855 basically hardcodes the config file path to /etc, which is a problem on e.g. FreeBSD, where the expected path for config files of non-base software is '/usr/local/etc'. Meson sets sysconfdir to '/etc' explicitly only when prefix is '/usr', so it is still possible to use '/usr/local' as prefix, and install the config files under '/usr/local/etc'. This commit allows to do that by setting sysconfdir based on the value of prefix.
Thanks! |
Hey, can you write a little shell script which compiles wlroots and sway from scratch on FreeBSD? I'll translate this into a build file and we can do continuous integration on FreeBSD to catch these errors earlier. |
Yeah, sure, I'll write the script this weekend. |
Hey, @SirCmpwn I've put the script here: https://gist.github.com/sghctoma/df3acbe8f082c593fa53670d2836f397 |
2 similar comments
Hey, @SirCmpwn I've put the script here: https://gist.github.com/sghctoma/df3acbe8f082c593fa53670d2836f397 |
Hey, @SirCmpwn I've put the script here: https://gist.github.com/sghctoma/df3acbe8f082c593fa53670d2836f397 |
Thanks @sghctoma! I'll get this working soon. |
My pleasure. |
Can you give me that patch in a more patchy form? This sort of base64 thing doesn't translate well to my CI platform. |
Another couple of issues:
I can also hook you up with a sr.ht account if you want to play with this build manifest yourself. I hope these comments are getting through... |
The patch agains the ports tree would be quite large (~160kB), but I've just found out GitHub also "speaks" SVN, so I can export individual directories from a repo. This version of the script uses this to get new libinput+deps: https://gist.github.com/sghctoma/d627dbb72d262a45187cda0542e1bef0 Looking at the builds.sr.ht job, it seems you have an old ports tree (wayland-protocols 1.12 and wayland 1.14), I think that's the reason of the automake issue. You need to run As for scdoc, I was reading the Makefile of an older version, and didn't realize I can set An sr.ht account would be nice, thanks! I've tried setting it up in a VM, but had some troubles with the database, and didn't have much time to troubleshoot yet. |
Sure.
Ah, thanks. Do you think this is something I should be running for all FreeBSD users when booting up their build VMs? |
|
To be honest, I would reconsider even installing the ports tree in the first place by default. Mixing ports and packages is generally not a good idea because of the version differences (installing from ports could result in rebuilding lots of stuff), and I would assume most users won't need it anyways. Those who do, could fetch it from manifest.
This should be non-interactive by default (without the Issues with job 9016:
I'll get my builds.sr.ht running, and fix the manifest today. |
Okay, I see why you did |
Here is my current manifest: https://builds.sr.ht/api/jobs/9140/manifest |
Thanks! I'll adapt this for wlroots and we'll add sway when FreeBSD 12 rolls around. |
Sorry for the wait, I had to add support for this to dispatch.sr.ht... |
Awesome, glad I could help! |
This PR fixes two issues on FreeBSD:
CLOCK_MONOTONIC
appeared in IEEE Std. 1003.1-200x, it was not part of POSIX.1b (the 1993 version). FreeBSD treats it accordingly, thus_POSIX_C_SOURCE
needs to be set to200112L
.sysconfdir
to '/etc' explicitly only whenprefix
is '/usr', so it is still possible to use '/usr/local' asprefix
, and install the config files under '/usr/local/etc'. This commit allows to do that by settingsysconfdir
based on whetherprefix
is '/usr', or not.