c1c03dc65d
shared libLLVM are in base. And now we can finally build the radeonsi Mesa driver adding accelerated support for radeon parts based on the Graphics Core Next (GCN) architecture which is everything since GFX6 / Southern Islands. This can later be expanded to other architectures which build libLLVM and have clang as the default compiler (to handle LLVM's c++11 headers).
82 lines
2.5 KiB
Makefile
82 lines
2.5 KiB
Makefile
# $OpenBSD: Makefile.bsd-wrapper,v 1.24 2019/03/06 10:39:52 jsg Exp $
|
|
|
|
.include <bsd.own.mk>
|
|
.include <bsd.xconf.mk>
|
|
|
|
SHARED_LIBS= EGL 1.1 gbm 0.3 glapi 0.2 GL 17.1 GLESv1_CM 1.0 GLESv2 1.2 \
|
|
OSMesa 11.0
|
|
|
|
DRI_DRIVERS= swrast
|
|
GALLIUM_DRIVERS= swrast
|
|
WITH_LLVM= --disable-llvm
|
|
|
|
.if ${MACHINE} == i386 || ${MACHINE} == amd64
|
|
DRI_DRIVERS=swrast,radeon,r200,i915,i965
|
|
GALLIUM_DRIVERS=swrast,r300,r600,radeonsi
|
|
WITH_LLVM= --enable-llvm
|
|
.endif
|
|
|
|
.if ${MACHINE} == arm64 || ${MACHINE} == loongson || \
|
|
${MACHINE} == macppc || ${MACHINE} == sparc64
|
|
DRI_DRIVERS=swrast,radeon,r200
|
|
GALLIUM_DRIVERS=swrast,r300,r600
|
|
.endif
|
|
|
|
CONFIGURE_ARGS= --with-dri-drivers=${DRI_DRIVERS} \
|
|
--with-gallium-drivers=${GALLIUM_DRIVERS} \
|
|
--disable-silent-rules \
|
|
${WITH_LLVM} \
|
|
--disable-glx-tls \
|
|
--disable-regen-sources \
|
|
--enable-gles1 --enable-gles2 \
|
|
--enable-shared-glapi \
|
|
--enable-osmesa \
|
|
--enable-gbm \
|
|
--enable-texture-float \
|
|
--with-platforms="x11,drm" \
|
|
--prefix=${X11BASE} \
|
|
--with-dri-driverdir=${X11BASE}/lib/modules/dri \
|
|
--with-dri-searchpath=${X11BASE}/lib/modules/dri
|
|
|
|
.if ${XENOCARA_BUILD_DRI3:L} == "yes"
|
|
CONFIGURE_ARGS+= --enable-dri3
|
|
.endif
|
|
|
|
# The i965 driver uses the cmpxchg8b instruction
|
|
.if ${MACHINE} == i386
|
|
CONFIGURE_ARGS+= USER_CFLAGS="-march=i586" USER_CXXFLAGS="-march=i586"
|
|
.endif
|
|
|
|
.if ${MACHINE} == alpha
|
|
# -O2 causes gcc ICE on main/format_pack.c and program/prog_execute.c
|
|
O1= -fdefer-pop -fguess-branch-probability -fcprop-registers \
|
|
-fif-conversion -fif-conversion2 -ftree-ccp -ftree-dce \
|
|
-ftree-dominator-opts -ftree-dse -ftree-ter -ftree-lrs -ftree-sra \
|
|
-ftree-copyrename -ftree-fre -ftree-ch -funit-at-a-time \
|
|
-fmerge-constants -fomit-frame-pointer
|
|
|
|
O2= ${O1} -fthread-jumps -fcrossjumping -foptimize-sibling-calls \
|
|
-fcse-follow-jumps -fcse-skip-blocks -fgcse -fgcse-lm \
|
|
-fexpensive-optimizations -frerun-cse-after-loop \
|
|
-fcaller-saves -fpeephole2 -fschedule-insns -fschedule-insns2 \
|
|
-fsched-interblock -fsched-spec -fregmove \
|
|
-fdelete-null-pointer-checks -freorder-blocks \
|
|
-freorder-functions -falign-functions -falign-jumps -falign-loops \
|
|
-falign-labels -ftree-pre
|
|
|
|
CONFIGURE_ARGS+= USER_CFLAGS="-O0 ${O2}"
|
|
.endif
|
|
|
|
.if ${MACHINE_ARCH} == sh
|
|
CONFIGURE_ARGS+= USER_CFLAGS="-O0"
|
|
.endif
|
|
|
|
${.OBJDIR}/src/util/format_srgb.c:
|
|
lndir -s -e obj -e obj.${MACHINE_ARCH} -e Makefile.bsd-wrapper ${.CURDIR}
|
|
|
|
.include <bsd.xorg.mk>
|
|
|
|
# XXX needs to come after bsd.xorg.mk, because .if !target(config.status)
|
|
# won't trigger otherwise.
|
|
config.status: ${.OBJDIR}/src/util/format_srgb.c
|