mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-03 01:50:32 +01:00
radeon/llvm: Convert to Automake
v2: Johannes Obermayr <johannesobermayr@gmx.de>
Fix some undefined symbols.
v3: Johannes Obermayr <johannesobermayr@gmx.de>
Build it -shared to fix egl_gallium.so on r600/radeonsi builds.
This commit is contained in:
parent
2cbb94b3ce
commit
0dcb9ae0d9
6 changed files with 52 additions and 36 deletions
|
|
@ -2034,6 +2034,7 @@ AC_CONFIG_FILES([configs/current
|
|||
src/gallium/drivers/nvc0/Makefile
|
||||
src/gallium/drivers/r300/Makefile
|
||||
src/gallium/drivers/r600/Makefile
|
||||
src/gallium/drivers/radeon/Makefile
|
||||
src/gallium/drivers/radeonsi/Makefile
|
||||
src/gallium/drivers/rbug/Makefile
|
||||
src/gallium/drivers/softpipe/Makefile
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
include Makefile.sources
|
||||
include $(top_srcdir)/src/gallium/Automake.inc
|
||||
|
||||
noinst_LIBRARIES = libr600.a
|
||||
noinst_LTLIBRARIES = libr600.la
|
||||
|
||||
AM_CFLAGS = \
|
||||
-I$(top_srcdir)/src/gallium/drivers \
|
||||
|
|
@ -10,22 +10,20 @@ AM_CFLAGS = \
|
|||
$(RADEON_CFLAGS) \
|
||||
$(VISIBILITY_CFLAGS)
|
||||
|
||||
libr600_a_SOURCES = \
|
||||
libr600_la_SOURCES = \
|
||||
$(C_SOURCES)
|
||||
|
||||
if NEED_RADEON_GALLIUM
|
||||
|
||||
# This is a hack until we can move the backend into the LLVM project.
|
||||
# We need to use mklib, because it splits up libradeon.a into object files
|
||||
# so that we can link it with the r600 objects.
|
||||
libr600_a_AR = $(top_srcdir)/bin/mklib -o r600 -static
|
||||
|
||||
libr600_a_SOURCES += \
|
||||
libr600_la_SOURCES += \
|
||||
$(LLVM_C_SOURCES) \
|
||||
$(LLVM_CXX_SOURCES)
|
||||
|
||||
libr600_a_LIBADD = \
|
||||
$(top_builddir)/src/gallium/drivers/radeon/libradeon.a
|
||||
libr600_la_LIBADD = ../radeon/libllvmradeon@VERSION@.la
|
||||
|
||||
libr600_la_LDFLAGS = \
|
||||
$(LLVM_LDFLAGS) \
|
||||
$(shell $(LLVM_CONFIG) --libs asmparser bitreader ipo)
|
||||
|
||||
AM_CFLAGS += \
|
||||
$(LLVM_CFLAGS) \
|
||||
|
|
@ -33,8 +31,6 @@ AM_CFLAGS += \
|
|||
|
||||
AM_CXXFLAGS= \
|
||||
$(LLVM_CXXFLAGS)
|
||||
else
|
||||
libr600_a_AR = $(AR) $(ARFLAGS)
|
||||
endif
|
||||
|
||||
if USE_R600_LLVM_COMPILER
|
||||
|
|
@ -46,3 +42,7 @@ if HAVE_GALLIUM_COMPUTE
|
|||
AM_CFLAGS += \
|
||||
-DHAVE_OPENCL
|
||||
endif
|
||||
|
||||
#XXX: Delete this when all r600 targets are converted to automake.
|
||||
all-local: libr600.la
|
||||
ln -f $(builddir)/.libs/libr600.a $(builddir)/libr600.a
|
||||
|
|
|
|||
|
|
@ -1,15 +0,0 @@
|
|||
|
||||
TOP = ../../../..
|
||||
include $(TOP)/configs/current
|
||||
|
||||
include Makefile.sources
|
||||
|
||||
LIBNAME = radeon
|
||||
|
||||
LIBRARY_INCLUDES = -I$(TOP)/include
|
||||
|
||||
CXXFLAGS+= $(LLVM_CXXFLAGS)
|
||||
|
||||
include ../../Makefile.template
|
||||
|
||||
CXXFLAGS := $(filter-out -DDEBUG, $(CXXFLAGS))
|
||||
31
src/gallium/drivers/radeon/Makefile.am
Normal file
31
src/gallium/drivers/radeon/Makefile.am
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
include Makefile.sources
|
||||
include $(top_srcdir)/src/gallium/Automake.inc
|
||||
|
||||
if HAVE_GALLIUM_R600
|
||||
if HAVE_GALLIUM_RADEONSI
|
||||
lib_LTLIBRARIES = libllvmradeon@VERSION@.la
|
||||
libllvmradeon@VERSION@_la_LDFLAGS = -Wl,--no-undefined -shared -avoid-version \
|
||||
$(LLVM_LDFLAGS)
|
||||
else
|
||||
noinst_LTLIBRARIES = libllvmradeon@VERSION@.la
|
||||
endif
|
||||
else
|
||||
noinst_LTLIBRARIES = libllvmradeon@VERSION@.la
|
||||
endif
|
||||
|
||||
AM_CXXFLAGS = \
|
||||
$(filter-out -DDEBUG, $(LLVM_CXXFLAGS)) \
|
||||
$(DEFINES)
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(GALLIUM_CFLAGS) \
|
||||
$(LLVM_CFLAGS)
|
||||
|
||||
libllvmradeon@VERSION@_la_SOURCES = \
|
||||
$(CPP_FILES) \
|
||||
$(C_FILES)
|
||||
|
||||
libllvmradeon@VERSION@_la_LIBADD = \
|
||||
$(top_builddir)/src/gallium/auxiliary/libgallium.la \
|
||||
$(CLOCK_LIB) \
|
||||
$(LLVM_LIBS)
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
CPP_SOURCES := \
|
||||
CPP_FILES := \
|
||||
radeon_llvm_emit.cpp
|
||||
|
||||
C_SOURCES := \
|
||||
C_FILES := \
|
||||
radeon_setup_tgsi_llvm.c
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@
|
|||
include Makefile.sources
|
||||
include $(top_srcdir)/src/gallium/Automake.inc
|
||||
|
||||
noinst_LIBRARIES = libradeonsi.a
|
||||
noinst_LTLIBRARIES = libradeonsi.la
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/src/gallium/drivers/radeon \
|
||||
|
|
@ -32,10 +32,9 @@ AM_CPPFLAGS = \
|
|||
$(GALLIUM_CFLAGS)
|
||||
AM_CFLAGS = $(LLVM_CFLAGS)
|
||||
|
||||
# This is a hack until we can move the backend into the LLVM project.
|
||||
# We need to use mklib, because it splits up libradeon.a into object files
|
||||
# so that we can link it with the radeonsi objects.
|
||||
libradeonsi_a_AR = $(top_srcdir)/bin/mklib -o radeonsi -static
|
||||
libradeonsi_la_SOURCES = $(C_SOURCES)
|
||||
libradeonsi_la_LIBADD = ../radeon/libllvmradeon@VERSION@.la
|
||||
|
||||
libradeonsi_a_SOURCES = $(C_SOURCES)
|
||||
libradeonsi_a_LIBADD = ../radeon/libradeon.a
|
||||
#XXX: Delete this when all radeonsi targets are converted to automake.
|
||||
all-local: libradeonsi.la
|
||||
ln -f $(builddir)/.libs/libradeonsi.a $(builddir)/libradeonsi.a
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue