mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-13 00:45:58 +01:00
Add FreeBSD build
This commit is contained in:
parent
266b3df678
commit
320d5ea234
2 changed files with 79 additions and 0 deletions
79
.builds/freebsd.yml
Normal file
79
.builds/freebsd.yml
Normal file
|
@ -0,0 +1,79 @@
|
|||
image: freebsd
|
||||
packages:
|
||||
- devel/automake
|
||||
- multimedia/ffmpeg
|
||||
- devel/gmake
|
||||
- devel/json-c
|
||||
- devel/libtool
|
||||
- x11/libxkbcommon
|
||||
- textproc/libxslt
|
||||
- x11-toolkits/pango
|
||||
- devel/pkgconf
|
||||
- print/texinfo
|
||||
- x11/xcb-util-image
|
||||
- x11/xcb-util-wm
|
||||
- python36
|
||||
- py36-setuptools
|
||||
sources:
|
||||
- https://github.com/swaywm/wlroots
|
||||
tasks:
|
||||
- setup: |
|
||||
# Don't build unnecessary stuff
|
||||
echo "OPTIONS_UNSET+= NLS DOCS EXAMPLES LIBWACOM" | sudo tee -a /etc/make.conf
|
||||
# Note: this could probably be set in the FreeBSD base image
|
||||
echo "BATCH=yes" | sudo tee -a /etc/make.conf
|
||||
- ports_tree: |
|
||||
# This is ugly, but fetching and extracting the whole ports tree takes a
|
||||
# really-really long time...
|
||||
# First we need a clean tree, and renaming is faster than deleting.
|
||||
sudo mv /usr/ports /usr/ports.orig
|
||||
sudo mkdir /usr/ports
|
||||
# Fetch only needed ports
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/GIDs /usr/ports/GIDs
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Keywords /usr/ports/Keywords
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Makefile /usr/ports/Makefile
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Mk /usr/ports/Mk
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Templates /usr/ports/Templates
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Tools /usr/ports/Tools
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/UIDs /usr/ports/UIDs
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/libevdev /usr/ports/devel/libevdev
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/libmtdev /usr/ports/devel/libmtdev
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/libudev-devd /usr/ports/devel/libudev-devd
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/meson /usr/ports/devel/meson
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/ninja /usr/ports/devel/ninja
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/py-evdev /usr/ports/devel/py-evdev
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/py-six /usr/ports/devel/py-six
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/graphics/wayland-protocols /usr/ports/graphics/wayland-protocols
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/graphics/wayland /usr/ports/graphics/wayland
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/lang/python27 /usr/ports/lang/python27
|
||||
sudo svnlite export --force https://svn.FreeBSD.org/ports/head/lang/python36 /usr/ports/lang/python36
|
||||
- fixup_libinput: |
|
||||
sudo svnlite export https://github.com/FreeBSDDesktop/freebsd-ports/branches/feature/input/devel/libepoll-shim /usr/ports/devel/libepoll-shim
|
||||
sudo svnlite export https://github.com/FreeBSDDesktop/freebsd-ports/branches/feature/input/x11/libinput /usr/ports/x11/libinput
|
||||
sudo svnlite export https://github.com/FreeBSDDesktop/freebsd-ports/branches/feature/input/devel/evdev-proto /usr/ports/devel/evdev-proto
|
||||
sudo svnlite export https://github.com/FreeBSDDesktop/freebsd-ports/branches/feature/input/devel/py-pyudev /usr/ports/devel/py-pyudev
|
||||
- ports_build: |
|
||||
cd /usr/ports/graphics/wayland-protocols/ && sudo make install
|
||||
cd /usr/ports/x11/libinput/ && sudo make install clean
|
||||
# v4l_compat is a dependency of libinput, but the version in the ports tree
|
||||
# conflicts with the new evdev-proto. It can be safely removed though.
|
||||
sudo pkg remove -fy v4l_compat
|
||||
cd /usr/ports/devel/evdev-proto && sudo make install clean
|
||||
- fixup_epoll: |
|
||||
cat << 'EOF' | sudo tee /usr/local/libdata/pkgconfig/epoll-shim.pc
|
||||
prefix=/usr/local
|
||||
exec_prefix=\$\{\$prefix\}
|
||||
libdir=${prefix}/lib
|
||||
sharedlibdir=${prefix}/lib
|
||||
includedir=${prefix}/include/libepoll-shim
|
||||
Name: epoll-shim
|
||||
Description: epoll shim implemented using kevent
|
||||
Version: 0
|
||||
Requires:
|
||||
Libs: -L${libdir} -L${sharedlibdir} -lepoll-shim -lthr
|
||||
Cflags: -I${includedir}
|
||||
EOF
|
||||
- wlroots: |
|
||||
cd wlroots
|
||||
meson build
|
||||
ninja -C build
|
Loading…
Reference in a new issue