summaryrefslogtreecommitdiff
path: root/src/Makefile.am
blob: 32372da49c14600efdf4b3f2279f402390a96f61 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
# Copyright © 2013 Intel Corporation
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.

.PHONY: git_sha1.h.tmp
git_sha1.h.tmp:
	@# Don't assume that $(top_srcdir)/.git is a directory. It may be
	@# a gitlink file if $(top_srcdir) is a submodule checkout or a linked
	@# worktree.
	@# If we are building from a release tarball copy the bundled header.
	@if test -e $(top_srcdir)/.git; then \
		if which git > /dev/null; then \
		    git --git-dir=$(top_srcdir)/.git log -n 1 --oneline | \
			sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \
			> git_sha1.h.tmp ; \
		fi \
	else \
		cp $(srcdir)/git_sha1.h git_sha1.h.tmp ;\
		chmod u+w git_sha1.h.tmp; \
	fi

git_sha1.h: git_sha1.h.tmp
	@echo "updating git_sha1.h"
	@if ! cmp -s git_sha1.h.tmp git_sha1.h; then \
		mv git_sha1.h.tmp git_sha1.h ;\
	else \
		rm git_sha1.h.tmp ;\
	fi

BUILT_SOURCES = git_sha1.h

# We want to keep the srcdir file since we need it on rebuild from tarball.
# At the same time `make distclean' gets angry at us if we don't cleanup the
# builddir one.
distclean-local:
	( test $(top_srcdir) != $(top_builddir) && rm $(builddir)/git_sha1.h ) || true

SUBDIRS = . gtest util mapi/glapi/gen mapi

# include only conditionally ?
SUBDIRS += compiler

if HAVE_INTEL_DRIVERS
SUBDIRS += intel
endif

if NEED_OPENGL_COMMON
SUBDIRS += mesa
endif

SUBDIRS += loader

if HAVE_DRI_GLX
SUBDIRS += glx
endif

## Optionally required by GBM and EGL
if HAVE_PLATFORM_WAYLAND
SUBDIRS += egl/wayland/wayland-drm
endif

## Optionally required by EGL (aka PLATFORM_GBM)
if HAVE_GBM
SUBDIRS += gbm
endif

## Optionally required by EGL
if HAVE_PLATFORM_WAYLAND
SUBDIRS += egl/wayland/wayland-egl
endif

if HAVE_EGL
SUBDIRS += egl
endif

## Requires the i965 compiler (part of mesa) and wayland-drm
if HAVE_INTEL_VULKAN
SUBDIRS += intel/vulkan
endif

if HAVE_GALLIUM
SUBDIRS += gallium
endif

EXTRA_DIST = \
	getopt hgl SConscript git_sha1.h

AM_CFLAGS = $(VISIBILITY_CFLAGS)
AM_CXXFLAGS = $(VISIBILITY_CXXFLAGS)

AM_CPPFLAGS = \
	-I$(top_srcdir)/include/ \
	-I$(top_srcdir)/src/mapi/ \
	-I$(top_srcdir)/src/mesa/ \
	$(DEFINES)

noinst_LTLIBRARIES = libglsl_util.la

libglsl_util_la_SOURCES = \
	mesa/main/imports.c \
	mesa/program/prog_hash_table.c \
	mesa/program/symbol_table.c \
	mesa/program/dummy_errors.c