17e6fb56fSmrg#  Copyright 2005 Adam Jackson.
27e6fb56fSmrg#
37e6fb56fSmrg#  Permission is hereby granted, free of charge, to any person obtaining a
47e6fb56fSmrg#  copy of this software and associated documentation files (the "Software"),
57e6fb56fSmrg#  to deal in the Software without restriction, including without limitation
67e6fb56fSmrg#  on the rights to use, copy, modify, merge, publish, distribute, sub
77e6fb56fSmrg#  license, and/or sell copies of the Software, and to permit persons to whom
87e6fb56fSmrg#  the Software is furnished to do so, subject to the following conditions:
97e6fb56fSmrg#
107e6fb56fSmrg#  The above copyright notice and this permission notice (including the next
117e6fb56fSmrg#  paragraph) shall be included in all copies or substantial portions of the
127e6fb56fSmrg#  Software.
137e6fb56fSmrg#
147e6fb56fSmrg#  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
157e6fb56fSmrg#  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
167e6fb56fSmrg#  FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
177e6fb56fSmrg#  ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
187e6fb56fSmrg#  IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
197e6fb56fSmrg#  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
207e6fb56fSmrg
217e6fb56fSmrg# this is obnoxious:
227e6fb56fSmrg# -module lets us name the module exactly how we want
237e6fb56fSmrg# -avoid-version prevents gratuitous .0.0.0 version numbers on the end
247e6fb56fSmrg# _ladir passes a dummy rpath to libtool so the thing will actually link
257e6fb56fSmrg# TODO: -nostdlib/-Bstatic/-lgcc platform magic, not installing the .a, etc.
267e6fb56fSmrg
2790b17f1bSmrgSUBDIRS = xvmc
2890b17f1bSmrg
2990b17f1bSmrgBUILT_SOURCES = version.h
3090b17f1bSmrgEXTRA_DIST = version.h
3190b17f1bSmrgCONFIG_CLEAN_FILES= version.h
3290b17f1bSmrgAM_CFLAGS = @XORG_CFLAGS@ @LIBUDEV_CFLAGS@ @DRI_CFLAGS@
337e6fb56fSmrgopenchrome_drv_la_LTLIBRARIES = openchrome_drv.la
3490b17f1bSmrgopenchrome_drv_la_LDFLAGS = -module -avoid-version @LIBUDEV_LIBS@
357e6fb56fSmrgopenchrome_drv_ladir = @moduledir@/drivers
367e6fb56fSmrg
377e6fb56fSmrgopenchrome_drv_la_SOURCES = \
3890b17f1bSmrg         compat-api.h \
3990b17f1bSmrg         via_eng_regs.h \
407e6fb56fSmrg         via_3d.c \
417e6fb56fSmrg         via_3d.h \
427e6fb56fSmrg         via_3d_reg.h \
43983b4bf2Smrg         via_analog.c \
4490b17f1bSmrg         via_rop.h \
4590b17f1bSmrg         via_exa.c \
4690b17f1bSmrg         via_exa_h2.c \
4790b17f1bSmrg         via_exa_h6.c \
4890b17f1bSmrg         via_ums.h \
497e6fb56fSmrg         via_ch7xxx.c \
507e6fb56fSmrg         via_ch7xxx.h \
517e6fb56fSmrg         via_display.c \
527e6fb56fSmrg         via_dmabuffer.h \
537e6fb56fSmrg         via_driver.c \
547e6fb56fSmrg         via_driver.h \
557e6fb56fSmrg         via_i2c.c \
567e6fb56fSmrg         via_id.c \
57983b4bf2Smrg         via_fp.c \
587e6fb56fSmrg         via_memcpy.c \
5990b17f1bSmrg         via_memmgr.h \
6090b17f1bSmrg         via_memmgr.c \
6190b17f1bSmrg         via_outputs.c \
627e6fb56fSmrg         via_mode.h \
637e6fb56fSmrg         via_priv.h \
647e6fb56fSmrg         via_regs.h \
65983b4bf2Smrg         via_sii164.c \
66983b4bf2Smrg         via_sii164.h \
67983b4bf2Smrg         via_tmds.c \
68983b4bf2Smrg         via_tv.c \
6990b17f1bSmrg         via_xv_overlay.c \
7090b17f1bSmrg         via_xv_overlay.h \
7190b17f1bSmrg         via_ums.c \
727e6fb56fSmrg         via_vgahw.c \
737e6fb56fSmrg         via_vgahw.h \
7490b17f1bSmrg         via_xv.c \
7590b17f1bSmrg         via_xv.h \
767e6fb56fSmrg         via_vt162x.c \
777e6fb56fSmrg         via_vt162x.h \
78963d66acSmrg         via_vt1632.c \
79963d66acSmrg         via_vt1632.h \
807e6fb56fSmrg         via_xvpriv.h
817e6fb56fSmrg
827e6fb56fSmrgif DRI
837e6fb56fSmrgopenchrome_drv_la_SOURCES += \
847e6fb56fSmrg         via_dri.c \
857e6fb56fSmrg         via_dri.h \
8690b17f1bSmrg         via_drm.h \
877e6fb56fSmrg         via_drmclient.h \
8890b17f1bSmrg         via_kms.h \
8990b17f1bSmrg         via_kms.c \
907e6fb56fSmrg         via_xvmc.c \
9190b17f1bSmrg         via_xvmc.h \
9290b17f1bSmrg         drm_fourcc.h
937e6fb56fSmrgelse
947e6fb56fSmrgEXTRA_DIST += \
957e6fb56fSmrg         via_dri.c \
967e6fb56fSmrg         via_dri.h \
9790b17f1bSmrg         via_drm.h \
987e6fb56fSmrg         via_drmclient.h \
9990b17f1bSmrg         via_kms.h \
10090b17f1bSmrg         via_kms.c \
1017e6fb56fSmrg         via_xvmc.c \
10290b17f1bSmrg         via_xvmc.h \
10390b17f1bSmrg         drm_fourcc.h
1047e6fb56fSmrgendif
1057e6fb56fSmrg
10690b17f1bSmrgvia_driver.lo: version.h
10790b17f1bSmrgversion.h: $(openchrome_drv_la_SOURCES)
10890b17f1bSmrg	@if [ -d ../.git ]; then \
10990b17f1bSmrg        echo '#define BUILDCOMMENT "(development build, branch' \
11090b17f1bSmrg                     "`git branch -v | sed 's/no branch/no_branch/' | \
11190b17f1bSmrg                      awk '/^\*/ { print $$2 }'`" \
11290b17f1bSmrg                     'at revision' \
11390b17f1bSmrg                     "`git log -1 --pretty=format:%h | head -1`"')"' \
11490b17f1bSmrg                    > $@.tmp; \
11590b17f1bSmrg    else \
11690b17f1bSmrg        if [ -d .svn ]; then \
11790b17f1bSmrg	        echo '#define BUILDCOMMENT "(development build, at revision '\
11890b17f1bSmrg	                "`svnversion -nc .. | sed -e s/^[^:]*://`"')"' > $@.tmp; \
119983b4bf2Smrg        elif [ "$$SOURCE_DATE_EPOCH" ]; then \
120983b4bf2Smrg	        printf '#define BUILDCOMMENT "(compiled with SOURCE_DATE_EPOCH: %s)"' $$SOURCE_DATE_EPOCH \
121983b4bf2Smrg        	> $@.tmp; \
12290b17f1bSmrg        else \
12390b17f1bSmrg	        date +'#define BUILDCOMMENT "(development build, compiled on %c)"' \
12490b17f1bSmrg        	> $@.tmp; \
12590b17f1bSmrg	    fi; \
12690b17f1bSmrg    fi
1277e6fb56fSmrg
1287e6fb56fSmrg	@chmod 666 $@.tmp
1297e6fb56fSmrg	@mv $@.tmp $@
1307e6fb56fSmrg	@echo "created $@"
1317e6fb56fSmrg
1327e6fb56fSmrgdist-hook:
13390b17f1bSmrg	@[ -e version.h ] && rm version.h; \
1347e6fb56fSmrg	echo '#define BUILDCOMMENT "(openchrome '$(VERSION)' release)"' \
13590b17f1bSmrg	> version.h
136