Compare commits
	
		
			189 Commits
		
	
	
		
			mesa-18.2.
			...
			mesa_7_7_1
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | e33121b2d8 | ||
|  | 415d0326bb | ||
|  | 7e24ce2d9b | ||
|  | 2ae754b7b9 | ||
|  | 501156b36b | ||
|  | 4ff3244457 | ||
|  | 3889556d70 | ||
|  | 6412046f65 | ||
|  | 6e96cea6e2 | ||
|  | 3a3ef3d6c9 | ||
|  | 98aed6dc69 | ||
|  | d3a607f889 | ||
|  | 00e41e007e | ||
|  | 6624845a5d | ||
|  | c9c54180e4 | ||
|  | 93e77b0028 | ||
|  | 0c9e8e6c6e | ||
|  | c50477c255 | ||
|  | 3bf13656d3 | ||
|  | fa4083d38b | ||
|  | d311ded31d | ||
|  | 34f0207161 | ||
|  | 8d3f629a13 | ||
|  | b98ef495d4 | ||
|  | 21c91b410a | ||
|  | a8f3b3f88a | ||
|  | e8a8c5e339 | ||
|  | 7941d31ee6 | ||
|  | 842351dd76 | ||
|  | d74929702f | ||
|  | 1e431f0454 | ||
|  | 4cc8d1d79f | ||
|  | 3d2bc6848a | ||
|  | d5327538e7 | ||
|  | 86ac140937 | ||
|  | b584e780ab | ||
|  | 981e8a2087 | ||
|  | 72d380b363 | ||
|  | cf8af9bcf1 | ||
|  | 7123f3d77a | ||
|  | 2edb1b9534 | ||
|  | 69334d6784 | ||
|  | 61482ddc1c | ||
|  | b0e84e22d5 | ||
|  | c0e8d443fe | ||
|  | b95d4cd680 | ||
|  | 293f4d51b4 | ||
|  | f0e99179bc | ||
|  | 69a94e1452 | ||
|  | bc7e12e5e3 | ||
|  | 7accf8ced6 | ||
|  | 52d83efdbc | ||
|  | 1702db3a35 | ||
|  | fa6eee135e | ||
|  | b5fa760972 | ||
|  | 69cf45cdae | ||
|  | f5ffbe0bc3 | ||
|  | 46d8ca023d | ||
|  | 9bef69782d | ||
|  | b0e5dcb859 | ||
|  | bcd561c667 | ||
|  | c98eced9ae | ||
|  | 13cbb5fff6 | ||
|  | dd8d78c908 | ||
|  | 9d17ad2891 | ||
|  | d437d905e6 | ||
|  | 551c96979e | ||
|  | c1a4f249f1 | ||
|  | 18ff85e91d | ||
|  | 12617c7e30 | ||
|  | 5dbf44953c | ||
|  | a51d638ff3 | ||
|  | 770945cff4 | ||
|  | eaa4066bfc | ||
|  | 46cf606cd3 | ||
|  | a69a7b9688 | ||
|  | eb7590a0d9 | ||
|  | 86870a691c | ||
|  | 7c34c237a2 | ||
|  | 13cd4298fb | ||
|  | 3b724f91c5 | ||
|  | 2077f375c7 | ||
|  | 055265b0a3 | ||
|  | 3094adb3ca | ||
|  | 7c7247ddbf | ||
|  | af2023e31c | ||
|  | 2eedbc94c2 | ||
|  | 672f6bb545 | ||
|  | ab6bcef99a | ||
|  | c5a4cfb03f | ||
|  | df944efdbf | ||
|  | 1ff9cd5079 | ||
|  | 4a2b54cbdb | ||
|  | 6bd6a15ab3 | ||
|  | c1a5c9bb4c | ||
|  | b3c7dc6ff2 | ||
|  | a1025ec041 | ||
|  | 3a4068474c | ||
|  | 1ae976be4a | ||
|  | b685927156 | ||
|  | df0c8d029d | ||
|  | 3477dc4c48 | ||
|  | 0426bccadd | ||
|  | 841333cd21 | ||
|  | e541dceb67 | ||
|  | fea7a70a1a | ||
|  | 426f607aaa | ||
|  | 408f32dc16 | ||
|  | 94028edfc5 | ||
|  | 7fec5f88a5 | ||
|  | 67007670bb | ||
|  | e8865f199d | ||
|  | 2d3262d47d | ||
|  | 3470d821ba | ||
|  | 0371956d66 | ||
|  | 45c4addea7 | ||
|  | 1eba0eb37d | ||
|  | d87fb5e003 | ||
|  | 4be7922a8e | ||
|  | a1cac0732b | ||
|  | fb32e0fcc5 | ||
|  | 9564a6fa13 | ||
|  | 0b9990b2fd | ||
|  | 8ce99c85e7 | ||
|  | a2c402ba53 | ||
|  | 1ceb906c12 | ||
|  | fb1fe8e76f | ||
|  | f8b05566aa | ||
|  | a6148b8eba | ||
|  | 64be837b0b | ||
|  | e070c1d183 | ||
|  | e6ee4b49c4 | ||
|  | e65029e9b3 | ||
|  | 3ca6cb3440 | ||
|  | 34b36277b7 | ||
|  | c8ea0212fe | ||
|  | 7d6cbcdd9a | ||
|  | 9d9c1f17dc | ||
|  | f1afb352da | ||
|  | e4c3abbf55 | ||
|  | 141b5775c0 | ||
|  | c0d5f1d3ad | ||
|  | 70947e531e | ||
|  | 7b92cb45b2 | ||
|  | 43e4b58422 | ||
|  | e0d01c9d7f | ||
|  | b90b3667a1 | ||
|  | 0123a2d042 | ||
|  | 51a2cc5499 | ||
|  | f5145a6ec3 | ||
|  | ddedfe12d4 | ||
|  | cb5447f79c | ||
|  | 9fd3c74724 | ||
|  | 4d1234e222 | ||
|  | 3cba779e16 | ||
|  | 23eda89ec8 | ||
|  | 6e68898b05 | ||
|  | 1befcd5a2a | ||
|  | 12ba355978 | ||
|  | a0907a645f | ||
|  | 1acf7a09e7 | ||
|  | 14dc02a1b2 | ||
|  | 88cf87bd56 | ||
|  | 31b3420688 | ||
|  | 4e95983fa8 | ||
|  | 4e506eac8f | ||
|  | 46167149ce | ||
|  | 96ec4eb755 | ||
|  | e20547042c | ||
|  | 0451d0fd01 | ||
|  | aa8b23e077 | ||
|  | 4eb48a3af7 | ||
|  | 8db8adfd01 | ||
|  | 8e240d7e0e | ||
|  | 40298bf272 | ||
|  | a0518e66b2 | ||
|  | 82c76cd16f | ||
|  | 50e890bc51 | ||
|  | bba9557019 | ||
|  | 2041d3e4b7 | ||
|  | 77b7b3a1ab | ||
|  | 0dab80fbfb | ||
|  | e3257912e0 | ||
|  | 15fe491822 | ||
|  | ac597f5acc | ||
|  | 5cb255f0d7 | ||
|  | 2f28ca0a27 | ||
|  | 0580e488da | ||
|  | 5435f790fd | 
| @@ -1,18 +0,0 @@ | ||||
| ((nil . ((show-trailing-whitespace . t))) | ||||
|  (prog-mode | ||||
|   (indent-tabs-mode . nil) | ||||
|   (tab-width . 8) | ||||
|   (c-basic-offset . 3) | ||||
|   (c-file-style . "stroustrup") | ||||
|   (fill-column . 78) | ||||
|   (eval . (progn | ||||
| 	    (c-set-offset 'case-label '0) | ||||
| 	    (c-set-offset 'innamespace '0) | ||||
| 	    (c-set-offset 'inline-open '0))) | ||||
|   (whitespace-style face indentation) | ||||
|   (whitespace-line-column . 79) | ||||
|   (eval ignore-errors | ||||
|         (require 'whitespace) | ||||
|         (whitespace-mode 1))) | ||||
|  (makefile-mode (indent-tabs-mode . t)) | ||||
|  ) | ||||
| @@ -1,39 +0,0 @@ | ||||
| # To use this config on you editor, follow the instructions at: | ||||
| # http://editorconfig.org | ||||
|  | ||||
| root = true | ||||
|  | ||||
| [*] | ||||
| charset = utf-8 | ||||
| insert_final_newline = true | ||||
| tab_width = 8 | ||||
|  | ||||
| [*.{c,h,cpp,hpp,cc,hh}] | ||||
| indent_style = space | ||||
| indent_size = 3 | ||||
|  | ||||
| [{Makefile*,*.mk}] | ||||
| indent_style = tab | ||||
|  | ||||
| [{*.py,SCons*}] | ||||
| indent_style = space | ||||
| indent_size = 4 | ||||
|  | ||||
| [*.pl] | ||||
| indent_style = space | ||||
| indent_size = 4 | ||||
|  | ||||
| [*.m4] | ||||
| indent_style = space | ||||
| indent_size = 2 | ||||
|  | ||||
| [*.yml] | ||||
| indent_style = space | ||||
| indent_size = 2 | ||||
|  | ||||
| [*.patch] | ||||
| trim_trailing_whitespace = false | ||||
|  | ||||
| [meson.build,meson_options.txt] | ||||
| indent_style = space | ||||
| indent_size = 2 | ||||
							
								
								
									
										10
									
								
								.emacs-dirvars
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								.emacs-dirvars
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| ;; -*- emacs-lisp -*- | ||||
| ;; | ||||
| ;; This file is processed by the dirvars emacs package.  Each variable | ||||
| ;; setting below is performed when this dirvars file is loaded. | ||||
| ;; | ||||
| indent-tabs-mode: nil | ||||
| tab-width: 8 | ||||
| c-basic-offset: 3 | ||||
| kde-emacs-after-parent-string: "" | ||||
| evaluate: (c-set-offset 'inline-open '0) | ||||
							
								
								
									
										28
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										28
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -2,53 +2,25 @@ | ||||
| *.dll | ||||
| *.exe | ||||
| *.ilk | ||||
| *.la | ||||
| *.lo | ||||
| *.log | ||||
| *.o | ||||
| *.obj | ||||
| *.orig | ||||
| *.os | ||||
| *.pc | ||||
| *.pdb | ||||
| *.pyc | ||||
| *.pyo | ||||
| *.rej | ||||
| *.so | ||||
| *.so.* | ||||
| *.sw[a-z] | ||||
| *.tar | ||||
| *.tar.bz2 | ||||
| *.tar.gz | ||||
| *.tar.xz | ||||
| *.trs | ||||
| *.zip | ||||
| *~ | ||||
| depend | ||||
| depend.bak | ||||
| bin/ltmain.sh | ||||
| lib | ||||
| lib64 | ||||
| configure | ||||
| configure.lineno | ||||
| autom4te.cache | ||||
| aclocal.m4 | ||||
| config.log | ||||
| config.status | ||||
| cscope* | ||||
| tags | ||||
| .scon* | ||||
| config.py | ||||
| build | ||||
| libtool | ||||
| manifest.txt | ||||
| .dir-locals.el | ||||
| .deps/ | ||||
| .dirstamp | ||||
| .libs/ | ||||
| Makefile | ||||
| Makefile.in | ||||
| .install-mesa-links | ||||
| .install-gallium-links | ||||
| /src/git_sha1.h | ||||
| TAGS | ||||
|   | ||||
							
								
								
									
										466
									
								
								.mailmap
									
									
									
									
									
								
							
							
						
						
									
										466
									
								
								.mailmap
									
									
									
									
									
								
							| @@ -1,466 +0,0 @@ | ||||
| Aapo Tahkola <aet@rasterburn.org> <aapo@aapo-desktop.(none)> | ||||
|  | ||||
| Adam Jackson <ajax@redhat.com> <ajax@benzedrine.nwnk.net> | ||||
| Adam Jackson <ajax@redhat.com> <ajax@freedesktop.org> | ||||
|  | ||||
| Adrian Marius Negreanu <adrian.m.negreanu@intel.com> Adrian Negreanu <adrian.m.negreanu@intel.com> | ||||
| Adrian Marius Negreanu <adrian.m.negreanu@intel.com> Negreanu Marius Adrian <adrian.m.negreanu@intel.com> | ||||
|  | ||||
| Dave Airlie <airlied@redhat.com> <airliedfreedesktop.org> | ||||
| Dave Airlie <airlied@redhat.com> airlied <airlied@unused-12-215.bne.redhat.com> | ||||
| Dave Airlie <airlied@redhat.com> <airlied@dhcp-1-203.bne.redhat.com> | ||||
| Dave Airlie <airlied@redhat.com> <airlied@gmail.com> | ||||
| Dave Airlie <airlied@redhat.com> <airlied@itt42.(none)> | ||||
| Dave Airlie <airlied@redhat.com> <airlied@linux.ie> | ||||
| Dave Airlie <airlied@redhat.com> <airlied@nx6125b.(none)> | ||||
| Dave Airlie <airlied@redhat.com> <airlied@panoply-rh.(none)> | ||||
| Dave Airlie <airlied@redhat.com> <airlied@ppcg5.localdomain> | ||||
|  | ||||
| Alan Coopersmith <alan.coopersmith@oracle.com> <alan.coopersmith@sun.com> | ||||
|  | ||||
| Alan Hourihane <alanh@vmware.com> <alanh@tungstengraphics.com> | ||||
| Alan Hourihane <alanh@vmware.com> <alanh@fairlite.demon.co.uk> | ||||
| Alan Hourihane <alanh@vmware.com> <alanh@jetpack.(none)> | ||||
|  | ||||
| Alexander Monakov <amonakov@gmail.com> <amonakov@ispras.ru> | ||||
|  | ||||
| Alexander von Gluck IV <kallisti5@unixzen.com> Alexander von Gluck <kallisti5@unixzen.com> | ||||
|  | ||||
| Alex Corscadden <alexc@vmware.com> <alexc@alexc-dev1.prom.eng.vmware.com> | ||||
| Alex Corscadden <alexc@vmware.com> <alexc@alexc-dev1.vmware.com> | ||||
|  | ||||
| Alex Deucher <alexdeucher@gmail.com> <alexander.deucher@amd.com> | ||||
| Alex Deucher <alexdeucher@gmail.com> <agd5f@yahoo.com> | ||||
| Alex Deucher <alexdeucher@gmail.com> <alex@botch2.com> | ||||
| Alex Deucher <alexdeucher@gmail.com> <alex@botch2.(none)> | ||||
| Alex Deucher <alexdeucher@gmail.com> <alex@cube.(none)> | ||||
| Alex Deucher <alexdeucher@gmail.com> <alex@samba.(none)> | ||||
|  | ||||
| Andreas Fänger <a.faenger@e-sign.com> <a.faenger@e-sign.com> | ||||
|  | ||||
| Andreas Hartmetz <ahartmetz@gmail.com> <andreas.hartmetz@kdab.com> | ||||
|  | ||||
| Andre Heider <a.heider@gmail.com> | ||||
| Andreas Heider <andreas@heider.io> | ||||
|  | ||||
| Andreas Pokorny <andreas.pokorny@canonical.com> <andreas.pokorny@elektrobit.com> | ||||
|  | ||||
| Andrew Randrianasulu <randrianasulu@gmail.com> <randrik_a@yahoo.com> | ||||
| Andrew Randrianasulu <randrianasulu@gmail.com> <randrik@mail.ru> | ||||
|  | ||||
| Arthur Huillet <arthur.huillet@free.fr> Arthur HUILLET <arthur.huillet@free.fr> | ||||
|  | ||||
| Benjamin Franzke <benjaminfranzke@googlemail.com> ben <benjaminfranzke@googlemail.com> | ||||
|  | ||||
| Ben Skeggs <bskeggs@redhat.com> <darktama@beleth.(none)> | ||||
| Ben Skeggs <bskeggs@redhat.com> <darktama@iinet.net.au> | ||||
| Ben Skeggs <bskeggs@redhat.com> <darktama@nisroch.keine.ath.cx> | ||||
| Ben Skeggs <bskeggs@redhat.com> <skeggsb-at-gmail.com> | ||||
| Ben Skeggs <bskeggs@redhat.com> <skeggsb@gmail.com> | ||||
| Ben Skeggs <bskeggs@redhat.com> <skeggsb@localhost.localdomain> | ||||
| Ben Skeggs <bskeggs@redhat.com> <skeggsb@nisroch.keine.ath.cx> | ||||
|  | ||||
| Ben Widawsky <benjamin.widawsky@intel.com> Ben Widawsky <ben@bwidawsk.net> | ||||
|  | ||||
| Blair Sadewitz <blair.sadewitz@gmail.com> Blair Sadewitz <blair.sadewitz.gmail.com> | ||||
|  | ||||
| Boris Peterbarg <reist@users.sourceforge.net> reist <reist> | ||||
|  | ||||
| Brian Paul <brianp@vmware.com> Brian <brian.paul@tungstengraphics.com> | ||||
| Brian Paul <brianp@vmware.com> <brian.paul@tungstengraphics.com> | ||||
| Brian Paul <brianp@vmware.com> <brian.e.paul@gmail.com> | ||||
| Brian Paul <brianp@vmware.com> <brianp@kemper.freedesktop.org> | ||||
| Brian Paul <brianp@vmware.com> brian <brian@cvp965.(none)> | ||||
| Brian Paul <brianp@vmware.com> Brian <brian@i915.localnet.net> | ||||
| Brian Paul <brianp@vmware.com> Brian <brian@nostromo.localnet.net> | ||||
| Brian Paul <brianp@vmware.com> Brian <brian@poulsbo.localnet.net> | ||||
| Brian Paul <brianp@vmware.com> Brian <brian@ps3.localnet.net> | ||||
| Brian Paul <brianp@vmware.com> Brian <brianp@vmware.com> | ||||
| Brian Paul <brianp@vmware.com> Brian <brian@yutani.localnet.net> | ||||
| Brian Paul <brianp@vmware.com> root <brian.paul@tungstengraphics.com> | ||||
| Brian Paul <brianp@vmware.com> root <root@i915.localnet.net> | ||||
| Brian Paul <brianp@vmware.com> root <root@nostromo.localnet.net> | ||||
| Brian Paul <brianp@vmware.com> root <root@i965.localnet.net> | ||||
|  | ||||
| Bruce Merry <bmerry@users.sourceforge.net> <bmerry@gmail.com> | ||||
|  | ||||
| Carl-Philip Hänsch <cphaensch@googlemail.com> Carl-Philip Haensch <s3734770@mail.zih.tu-dresden.de> | ||||
| Carl-Philip Hänsch <cphaensch@googlemail.com> Carl-Philip Haensch <carli@carli-laptop.(none)> | ||||
| Carl-Philip Hänsch <cphaensch@googlemail.com> Carl-Philip Haensch <Carl-Philip.Haensch@mailbox.tu-dresden.de> | ||||
|  | ||||
| Chad Versace <chadversary@chromium.org> <chad@kiwitree.net> | ||||
| Chad Versace <chadversary@chromium.org> <chad@chad-versace.us> | ||||
| Chad Versace <chadversary@chromium.org> <Chad Versace chad@chad-versace.us> | ||||
| Chad Versace <chadversary@chromium.org> <chad.versace@intel.com> | ||||
| Chad Versace <chadversary@chromium.org> <chad.versace@linux.intel.com> | ||||
|  | ||||
| Chia-I Wu <olvaffe@gmail.com> <olv@lunarg.com> | ||||
| Chia-I Wu <olvaffe@gmail.com> Chia-Wu <olvaffe@gmail.com> | ||||
|  | ||||
| Chih-Wei Huang <cwhuang@linux.org.tw> Chih-Wei Huang <cwhuang@android-x86.org> | ||||
|  | ||||
| Christian König <christian.koenig@amd.com> Christian Koenig <christian.koenig@amd.com> | ||||
| Christian König <christian.koenig@amd.com> Christian König <christian.koenig at amd.com> | ||||
| Christian König <christian.koenig@amd.com> Christian König <deathsimple@vodafone.de> | ||||
|  | ||||
| Christoph Brill <egore911@egore911.de> Christoph Bill <egore@gmx.de> | ||||
| Christoph Brill <egore911@egore911.de> <egore@gmx.de> | ||||
|  | ||||
| Christoph Bumiller <christoph.bumiller@speed.at> <e0425955@student.tuwien.ac.at> | ||||
|  | ||||
| Christopher James Halse Rogers <christopher.halse.rogers@canonical.com> Christopher James Halse Rogers <raof@ubuntu.com> | ||||
|  | ||||
| Claudio Ciccani <klan@directfb.org> <klan@users.sf.net> | ||||
| Claudio Ciccani <klan@directfb.org> <klan@users.sourceforge.net> | ||||
|  | ||||
| Connor Abbott <cwabbott0@gmail.com> <connor.w.abbott@intel.com> | ||||
| Connor Abbott <cwabbott0@gmail.com> <connor.abbott@intel.com> | ||||
|  | ||||
| Corbin Simpson <MostAwesomeDude@gmail.com> <mostawesomed...@gmail.com> | ||||
| Corbin Simpson <MostAwesomeDude@gmail.com> <mostawesomedude@gmail.com> | ||||
|  | ||||
| Courtney Goeltzenleuchter <courtney@lunarg.com> <courtney@LunarG.com> | ||||
|  | ||||
| Daniel Skinner <sio@users.sourceforge.net> sio <sio> | ||||
|  | ||||
| Daniel Stone <daniels@collabora.com> <daniel@fooishbar.org> | ||||
|  | ||||
| David Miller <davem@davemloft.net> David S. Miller <davem@davemloft.net> | ||||
| David Miller <davem@davemloft.net> Dave Miller <davem@davemloft.net> | ||||
| David Miller <davem@davemloft.net> davem69 <davem69> | ||||
|  | ||||
| David Heidelberger <david.heidelberger@ixit.cz> David Heidelberg <david@ixit.cz> | ||||
| David Heidelberger <david.heidelberger@ixit.cz> <d.okias@gmail.com> | ||||
|  | ||||
| David Reveman <reveman@chromium.org> <c99drn@cs.umu.se> | ||||
|  | ||||
| Dieter Nützel <Dieter@nuetzel-hh.de> Dieter Nützel <dieter@nuetzel-hh.de> | ||||
|  | ||||
| Dmitry Cherkassov <dcherkassov@gmail.com> Dmitry Cherkasov <dcherkassov@gmail.com> | ||||
|  | ||||
| Dylan Baker <dylanx.c.baker@intel.com> <baker.dylan.c@gmail.com> | ||||
|  | ||||
| Edward O'Callaghan <funfunctor@folklore1984.net> <eocallaghan@alterapraxis.com> | ||||
|  | ||||
| Emeric Grange <emeric.grange@gmail.com> Emeric <emeric.grange@gmail.com> | ||||
|  | ||||
| Emil Velikov <emil.l.velikov@gmail.com> <emil.velikov@collabora.com> | ||||
|  | ||||
| Eric Anholt <eric@anholt.net> Eric Anholt <anholt@FreeBSD.org> | ||||
|  | ||||
| Eric Engestrom <eric@engestrom.ch> <eric.engestrom@imgtec.com> | ||||
|  | ||||
| Eugeni Dodonov <eugeni.dodonov@intel.com> <eugeni@mandriva.com> | ||||
|  | ||||
| Fabian Bieler <der.fabe@gmx.net> <fabianbieler@fastmail.fm> | ||||
| Fabian Bieler <der.fabe@gmx.net> <<der.fabe@gmx.net>> | ||||
|  | ||||
| Feng, Haitao <haitao.feng@intel.com> Haitao Feng <haitao.feng@intel.com> | ||||
|  | ||||
| Frank Henigman <fjhenigman@google.com> <fjhenigman@chromium.org> | ||||
|  | ||||
| George Sapountzis <gsapountzis@gmail.com> George Sapountzis <gsap7@yahoo.gr> | ||||
|  | ||||
| Gwenole Beauchesne <gwenole.beauchesne@intel.com> <gb.devel@gmail.com> | ||||
|  | ||||
| Hamish Marson <hmarson@users.sourceforge.net> hmarson <hmarson> | ||||
|  | ||||
| Hans de Goede <hdegoede@redhat.com> Hans de Goede <j.w..r..degoede@hhs.nl> | ||||
|  | ||||
| Homer Hsing <dongsheng.xing@intel.com> <homer.hsing@gmail.com> | ||||
|  | ||||
| Hui Qi Tay <hqtay@vmware.com> <tayhuiqithq@gmail.com> | ||||
|  | ||||
| Ian Romanick <ian.d.romanick@intel.com> <idr@freedesktop.org> | ||||
| Ian Romanick <ian.d.romanick@intel.com> <idr@us.ibm.com> | ||||
|  | ||||
| Jakob Bornecrantz <wallbraker@gmail.com> <jakob@vmware.com> | ||||
| Jakob Bornecrantz <wallbraker@gmail.com> <jakob@aurora.(none)> | ||||
| Jakob Bornecrantz <wallbraker@gmail.com> <jakob@aurora.walkyrie.se> | ||||
| Jakob Bornecrantz <wallbraker@gmail.com> <jakob@tungstengraphics.com> | ||||
| Jakob Bornecrantz <wallbraker@gmail.com> <wallbraker 'at' gmail 'dot' com> | ||||
|  | ||||
| Jakub Bogusz <qboosh@pld-linux.org> <gboosh@pld-linux.org> | ||||
|  | ||||
| James Legg <jlegg@feralinteractive.com> <lankyleggy@gmail.com> | ||||
|  | ||||
| Jan Vesely <jano.vesely@gmail.com> Jan Vesely <jan.vesely@rutgers.edu> | ||||
|  | ||||
| Jason Ekstrand <jason@jlekstrand.net> <jason.ekstrand@intel.com> | ||||
|  | ||||
| Jeremy Huddleston <jeremyhu@apple.com> <jeremyhu@freedesktop.org> | ||||
| Jeremy Huddleston <jeremyhu@apple.com> <jeremy@tifa.local> | ||||
| Jeremy Huddleston <jeremyhu@apple.com> <jeremy@vincent.local> | ||||
| Jeremy Huddleston <jeremyhu@apple.com> <jeremy@yuffie.local> | ||||
| Jeremy Huddleston <jeremyhu@apple.com> Jeremy Huddleston Sequoia <jeremyhu@apple.com> | ||||
|  | ||||
| Jeremy Kolb <jkolb@freedesktop.org> <jkolb@brandeis.edu> | ||||
|  | ||||
| Jerome Glisse <jglisse@redhat.com> <glisse@freedesktop.org> | ||||
| Jerome Glisse <jglisse@redhat.com> <glisse@kemper.freedesktop.org> | ||||
| Jerome Glisse <jglisse@redhat.com> John Doe <glisse@barney.(none)> | ||||
| Jerome Glisse <jglisse@redhat.com> John Doe <glisse@localhost.localdomain> | ||||
|  | ||||
| Jesse Barnes <jesse.barnes@intel.com> <jbarnes@hobbes.lan> | ||||
| Jesse Barnes <jesse.barnes@intel.com> <jbarnes@hobbes.(none)> | ||||
| Jesse Barnes <jesse.barnes@intel.com> <jbarnes@jbarnes-desktop.localdomain> | ||||
| Jesse Barnes <jesse.barnes@intel.com> <jbarnes@jbarnes-t61.(none)> | ||||
| Jesse Barnes <jesse.barnes@intel.com> <jbarnes@virtuousgeek.org> | ||||
|  | ||||
| Joakim Sindholt <bacn@zhasha.com> <opensource@zhasha.com> | ||||
| Joakim Sindholt <bacn@zhasha.com> <zhasha@gallium-dev.(none)> | ||||
|  | ||||
| Jochen Gerlach <jtg@users.sourceforge.net> jtg <jtg> | ||||
|  | ||||
| Joel Bosveld <joel.bosveld@gmail.com> <Joel.Bosveld@gmail.com> | ||||
|  | ||||
| Jonathan Adamczewski <jadamcze@utas.edu.au> <jadamcze@utas.edu.a> | ||||
|  | ||||
| Jon Turney <jon.turney@dronecode.org.uk> Jon TURNEY <jon.turney@dronecode.org.uk> | ||||
|  | ||||
| José Fonseca <jfonseca@vmware.com> Jose Fonseca <jfonseca@vmware.com> | ||||
| José Fonseca <jfonseca@vmware.com> Jose Fonseca <jrfonseca@tungstengraphics.com> | ||||
| José Fonseca <jfonseca@vmware.com> <jfonseca@pegasus.(none)> | ||||
| José Fonseca <jfonseca@vmware.com> <jfonseca@titan.(none)> | ||||
| José Fonseca <jfonseca@vmware.com> <jose.r.fonseca@gmail.com> | ||||
| José Fonseca <jfonseca@vmware.com> <jrfonseca@tungstengraphics.com> | ||||
| José Fonseca <jfonseca@vmware.com> <j_r_fonseca@yahoo.co.uk> | ||||
|  | ||||
| Jouk Jansen <joukj@hrem.nano.tudelft.nl> Jouk Jansen <jouk@hrem.nano.tudelft.nl> | ||||
| Jouk Jansen <joukj@hrem.nano.tudelft.nl> Jouk Jansen <joukj@hrem.stm.tudelft.nl> | ||||
| Jouk Jansen <joukj@hrem.nano.tudelft.nl> joukj <joukj@tarantella.(none)> | ||||
| Jouk Jansen <joukj@hrem.nano.tudelft.nl> Jouk <joukj@tarantella.nano.tudelft.nl> | ||||
| Jouk Jansen <joukj@hrem.nano.tudelft.nl> Jouk <joukj@tarantella.(none)> | ||||
| Jouk Jansen <joukj@hrem.nano.tudelft.nl> J.Jansen <joukj@tarantella.nano.tudelft.nl> | ||||
|  | ||||
| Juan Zhao <juan.j.zhao@intel.com> <juan.j.zhao@linux.intel.com> | ||||
|  | ||||
| Julien Cristau <jcristau@debian.org> <julien.cristau@logilab.fr> | ||||
|  | ||||
| Julien Isorce <j.isorce@samsung.com> <julien.isorce@gmail.com> | ||||
|  | ||||
| Kalyan Kondapally <kalyan.kondapally@intel.com> <kondapallykalyancontribute@gmail.com> | ||||
|  | ||||
| Karl Schultz <karl.w.schultz@gmail.com> Karl Schultze <k.w.schultz@comcast.net> | ||||
| Karl Schultz <karl.w.schultz@gmail.com> unknown <kwschult@.na.qualcomm.com> | ||||
| Karl Schultz <karl.w.schultz@gmail.com> <k.w.schultz@comcast.net> | ||||
| Karl Schultz <karl.w.schultz@gmail.com> <Karl.W.Schultz@gmail.com> | ||||
| Karl Schultz <karl.w.schultz@gmail.com> <kschultz@freedesktop.org> | ||||
|  | ||||
| Keith Harrison <sio2@users.sourceforge.net> sio2 <sio2> | ||||
|  | ||||
| Keith Packard <keithp@keithp.com> <keithp@koto.keithp.com> | ||||
| Keith Packard <keithp@keithp.com> <keithp@neko.keithp.com> | ||||
|  | ||||
| Keith Whitwell <keithw@vmware.com> <keith@tungstengraphics.com> | ||||
| Keith Whitwell <keithw@vmware.com> keithw <keithw@keithw-laptop.(none)> | ||||
|  | ||||
| Kristian Høgsberg <krh@bitplanet.net> <krh@redhat.com> | ||||
| Kristian Høgsberg <krh@bitplanet.net> <krh@hinata.boston.redhat.com> | ||||
| Kristian Høgsberg <krh@bitplanet.net> <krh@sasori.boston.redhat.com> | ||||
| Kristian Høgsberg <krh@bitplanet.net> <krh@temari.boston.redhat.com> | ||||
| Kristian Høgsberg <krh@bitplanet.net> <kristian.h.kristensen@intel.com> | ||||
|  | ||||
| Krzesimir Nowak <qdlacz@gmail.com> <krzesimir@kinvolk.io> | ||||
|  | ||||
| Li Peng <peng.li@intel.com> <peng.li@linux.intel.com> | ||||
|  | ||||
| Lucas Stach <dev@lynxeye.de> <l.stach@pengutronix.de> | ||||
|  | ||||
| Maarten Lankhorst <maarten.lankhorst@ubuntu.com> <dev@mblankhorst.nl> | ||||
| Maarten Lankhorst <maarten.lankhorst@ubuntu.com> <m.b.lankhorst@gmail.com> | ||||
| Maarten Lankhorst <maarten.lankhorst@ubuntu.com> <maarten.lankhorst@canonical.com> | ||||
|  | ||||
| Maciej Cencora <m.cencora@gmail.com> <maciej@osiris.(none)> | ||||
|  | ||||
| Marc-André Lureau <marcandre.lureau@gmail.com> Marc-Andre Lureau <marcandre.lureau@gmail.com> | ||||
|  | ||||
| Marc Dietrich <marvin24@gmx.de> Marc <marvin24@gmx.de> | ||||
| Marc Dietrich <marvin24@gmx.de> marvin24 <marvin24@gmx.de> | ||||
|  | ||||
| Marcin Ślusarz <marcin.slusarz@gmail.com> Marcin Slusarz <marcin.slusarz@gmail.com> | ||||
|  | ||||
| Marek Olšák <maraeo@gmail.com> <marek.olsak@amd.com> | ||||
|  | ||||
| Mario Kleiner <mario.kleiner.de@gmail.com> kleinerm <mario.kleiner@tuebingen.mpg.de> | ||||
| Mario Kleiner <mario.kleiner.de@gmail.com> <mario.kleiner@tuebingen.mpg.de> | ||||
|  | ||||
| Mark Mueller <markkmueller@gmail.com> <MarkKMueller@gmail.com> | ||||
|  | ||||
| Marta Lofstedt <marta.lofstedt@intel.com> <marta.lofstedt@linux.intel.com> | ||||
|  | ||||
| Martin Peres <martin.peres@linux.intel.com> <martin.peres@labri.fr> | ||||
|  | ||||
| Mathias Fröhlich <mathias.froehlich@gmx.net> Mathias Froehlich <Mathias.Froehlich@gmx.net> | ||||
| Mathias Fröhlich <mathias.froehlich@gmx.net> Mathias Froehlich <Mathias.Froehlich@web.de> | ||||
| Mathias Fröhlich <mathias.froehlich@gmx.net> Mathias Frohlich <M.Froehlich@science-computing.de> | ||||
| Mathias Fröhlich <mathias.froehlich@gmx.net> <frohlich8@users.sourceforge.net> | ||||
| Mathias Fröhlich <mathias.froehlich@gmx.net> <Mathias.Froehlich@gmx.net> | ||||
| Mathias Fröhlich <mathias.froehlich@gmx.net> <Mathias.Froehlich@web.de> | ||||
| Mathias Fröhlich <mathias.froehlich@gmx.net> M.Froehlich@science-computing.de <M.Froehlich@science-computing.de> | ||||
|  | ||||
| Matthew W. S. Bell <matthew@bells23.org.uk> Matthew Bell <matthew@bells23.org.uk> | ||||
|  | ||||
| Maxence Le Doré <maxence.ledore@gmail.com> Maxence Le Dore <maxence.ledore@gmail.com> | ||||
|  | ||||
| Micah Fedke <micah.fedke@collabora.co.uk> <M.Fedke@Astronautics.com> | ||||
|  | ||||
| Michal Krol <michal@vmware.com> <michal@tungstengraphics.com> | ||||
| Michal Krol <michal@vmware.com> Michal Krol <michal@ubuntu-vbox.(none)> | ||||
| Michal Krol <michal@vmware.com> Michal Krol <mjkrol@gmail.org> | ||||
| Michal Krol <michal@vmware.com> michal <michal@capacitor.(none)> | ||||
| Michal Krol <michal@vmware.com> michal <michal@michal-laptop.(none)> | ||||
| Michal Krol <michal@vmware.com> michal <michal@quad.(none)> | ||||
| Michal Krol <michal@vmware.com> michal <michal@transistor.(none)> | ||||
| Michal Krol <michal@vmware.com> Michal <michal@tungstengraphics.com> | ||||
| Michal Krol <michal@vmware.com> michal <michal@wmvare.com> | ||||
|  | ||||
| Michel Dänzer <michel@daenzer.net> <michel.daenzer@amd.com> | ||||
| Michel Dänzer <michel@daenzer.net> <daenzer@vmware.com> | ||||
| Michel Dänzer <michel@daenzer.net> <michel@tungstengraphics.com> | ||||
| Michel Dänzer <michel@daenzer.net> Michel Daenzer <michel.daenzer@amd.com> | ||||
| Michel Dänzer <michel@daenzer.net> Michel Daenzer <daenzer@localhost.(none)> | ||||
|  | ||||
| Mike Kaplinskiy <mike.kaplinskiy@gmail.com> Mike Kaplinksiy <mike.kaplinskiy@gmail.com> | ||||
| Mike Kaplinskiy <mike.kaplinskiy@gmail.com> <mike.kaplinskiy@gmai.com> | ||||
|  | ||||
| Mike Stroyan <mike@lunarg.com> <mike@LunarG.com> | ||||
|  | ||||
| Nian Wu <nian.wu@intel.com> <nian@graphics.(none)> | ||||
| Nian Wu <nian.wu@intel.com> <nian@tinderbox.sh.intel.com> | ||||
|  | ||||
| Nick Bowler <nbowler@draconx.ca> | ||||
|  | ||||
| Nick Sarnie <commendsarnex@gmail.com> | ||||
|  | ||||
| Nicolai Hähnle <nicolai.haehnle@amd.com> <nhaehnle@gmail.com> | ||||
| Nicolai Hähnle <nicolai.haehnle@amd.com> Nicolai Haehnle <nhaehnle@gmail.com> | ||||
| Nicolai Hähnle <nicolai.haehnle@amd.com> Nicolai Haehnle <prefect_@gmx.net> | ||||
| Nicolai Hähnle <nicolai.haehnle@amd.com> Nicolai Haehnle <prefect@upb.de> | ||||
|  | ||||
| Nigel Stewart <nigels@users.sourceforge.net> <nigels@sourceforge.net> | ||||
| Nigel Stewart <nigels@users.sourceforge.net> <nstewart@nvidia.com> | ||||
|  | ||||
| nobled <nobled@dreamwidth.org> <nobled2@nobled2-karmic.(none)> | ||||
|  | ||||
| Oliver McFadden <oliver.mcfadden@linux.intel.com> <z3ro.geek@gmail.com> | ||||
|  | ||||
| Owain Ainsworth <zerooa@googlemail.com> Owain G. Ainsworth <oga@openbsd.org> | ||||
|  | ||||
| Owen W. Taylor <otaylor@fishsoup.net> Owen Taylor <otaylor@snell.localdomain> | ||||
|  | ||||
| Patrice Mandin <patmandin@gmail.com> <patrice@manoir.racoon.city> | ||||
| Patrice Mandin <patmandin@gmail.com> <pmandin@caramail.com> | ||||
| Patrice Mandin <patmandin@gmail.com> <pmandin@freedesktop.org> | ||||
|  | ||||
| Pauli Nieminen <pauli.nieminen@linux.intel.com> <suokkos@gmail.com> | ||||
|  | ||||
| Paulo Zanoni <paulo.r.zanoni@intel.com> Paulo Zanoni <pzanoni@mandriva.com> | ||||
|  | ||||
| Paul Seidler <sepek@exherbo.org> Paul Seidler <pl.seidler@googlemail.com> | ||||
|  | ||||
| Pekka Paalanen <pekka.paalanen@collabora.co.uk> <ppaalanen@gmail.com> | ||||
| Pekka Paalanen <pekka.paalanen@collabora.co.uk> <pq@iki.fi> | ||||
|  | ||||
| Peter Hutterer <peter.hutterer@who-t.net> <peter@cs.unisa.edu.au> | ||||
|  | ||||
| Pierre-Eric Pelloux-Prayer <pelloux@gmail.com> pepp <pelloux@gmail.com> | ||||
|  | ||||
| Pierre Willenbrock <pierre@pirsoft.de> Pierre Willenbrok <pierre@pirsoft.de> | ||||
|  | ||||
| Quentin Glidic <sardemff7+git@sardemff7.net> <sardemff7@sardemff7.net> | ||||
|  | ||||
| RALOVICH, Kristóf <tade60@freemail.hu> <kristof.ralovich@gmail.com> | ||||
|  | ||||
| Richard Li <richardradeon@gmail.com> <RichardZ.Li@amd.com> | ||||
| # The next ones are not 100% sure | ||||
| Richard Li <richardradeon@gmail.com> richard <richard@richard-desktop3.(none)> | ||||
| Richard Li <richardradeon@gmail.com> richard <richard@richard-desktop.(none)> | ||||
| Richard Li <richardradeon@gmail.com> root <root@richard-desktop.(none)> | ||||
|  | ||||
| Richard Sandiford <rsandifo@linux.vnet.ibm.com> <r.sandiford@uk.ibm.com> | ||||
|  | ||||
| Rob Clark <robclark@freedesktop.org> <Rob Clark robdclark@freedesktop.org> | ||||
| Rob Clark <robclark@freedesktop.org> <robdclark@gmail.com> | ||||
|  | ||||
| Robert Bragg <robert@sixbynine.org> <robert@linux.intel.com> | ||||
|  | ||||
| Robert Ellison <papillo@vmware.com> <papillo@i965-laptop.(none)> | ||||
| Robert Ellison <papillo@vmware.com> <papillo@tungstengraphics.com> | ||||
|  | ||||
| Robert Hooker <sarvatt@ubuntu.com> <robert.hooker@canonical.com> | ||||
|  | ||||
| Roland Scheidegger <sroland@vmware.com> <rscheidegger@gmx.ch> | ||||
| Roland Scheidegger <sroland@vmware.com> <sroland@tungstengraphics.com> | ||||
|  | ||||
| Roy Spliet <rspliet@eclipso.eu> <r.spliet@student.tudelft.nl> | ||||
|  | ||||
| Rune Petersen <rune@megahurts.dk> Rune Peterson <rune@megahurts.dk> | ||||
|  | ||||
| Ryan Houdek <sonicadvance1@gmail.com> <Sonicadvance1@gmail.com> | ||||
|  | ||||
| Sam Hocevar <sam@hocevar.net> Sam Hocevar <sam@zoy.org> | ||||
|  | ||||
| Samuel Iglesias Gonsálvez <siglesias@igalia.com> Samuel Iglesias Gonsalvez <siglesias@igalia.com> | ||||
|  | ||||
| Sean D'Epagnier <sean@depagnier.com> <geckosenator@freedesktop.org> | ||||
|  | ||||
| Serge Martin <edb+mesa@sigluy.net> Serge Martin (EdB) <edb+mesa@sigluy.net> | ||||
| Serge Martin <edb+mesa@sigluy.net> EdB <edb+mesa@sigluy.net> | ||||
|  | ||||
| Sinclair Yeh <syeh@vmware.com> <sinclair.yeh@intel.com> | ||||
|  | ||||
| Stefan Brüns <stefan.bruens@rwth-aachen.de> <Stefan.Bruens@rwth-aachen.de> | ||||
|  | ||||
| Stéphane Marchesin <marcheu@chromium.org> Stephane Marchesin <marchesin@icps.u-strasbg.fr> | ||||
| Stéphane Marchesin <marcheu@chromium.org> Stephane Marchesin <stephane.marchesin@gmail.com> | ||||
|  | ||||
| Sven M. Hallberg <pesco@users.sourceforge.net> pesco <pesco> | ||||
|  | ||||
| Tapani Pälli <tapani.palli@intel.com> <tapani.palli@gmail.com> | ||||
| Tapani Pälli <tapani.palli@intel.com> Tapani <tapani.palli@intel.com> | ||||
|  | ||||
| Thierry Reding <treding@nvidia.com> <thierry@gilfi.de> | ||||
| Thierry Reding <treding@nvidia.com> <thierry.reding@avionic-design.de> | ||||
|  | ||||
| Thierry Vignaud <thierry.vignaud@gmail.com> <tvignaud@mandriva.com> | ||||
|  | ||||
| Thomas Balling Sørensen <tball@io.dk> <tball@tball-laptop.(none)> | ||||
|  | ||||
| Thomas Hellstrom <thellstrom@vmware.com> Thomas <thellstrom@vmware.com> | ||||
| Thomas Hellstrom <thellstrom@vmware.com> Thomas Hellstrom <thellstrom-at-vmware-dot-com> | ||||
| Thomas Hellstrom <thellstrom@vmware.com> Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> | ||||
| Thomas Hellstrom <thellstrom@vmware.com> Thomas Hellstrom <thomas@tungstengraphics.com> | ||||
| Thomas Hellstrom <thellstrom@vmware.com> Thomas Hellström <thomas@tungstengraphics.com> | ||||
|  | ||||
| Thomas Tanner <tanner@gmx.net> tanner <tanner> | ||||
|  | ||||
| Tilman Sauerbeck <tilman@code-monkey.de> <tilman@freedesktop.org> | ||||
|  | ||||
| Timothy Arceri <timothy.arceri@collabora.com> <t_arceri@yahoo.com.au> | ||||
| Timothy Arceri <timothy.arceri@collabora.com> Timothy <t_arceri@yahoo.com.au> | ||||
|  | ||||
| Tom Fogal <tfogal@alumni.unh.edu> <tfogal@sci.utah.edu> | ||||
|  | ||||
| Tom Stellard <thomas.stellard@amd.com> <tstellar@gmail.com> | ||||
| Tom Stellard <thomas.stellard@amd.com> Thomas Stellard <tom.stellard@amd.com> | ||||
|  | ||||
| Tormod Volden <debian.tormod@gmail.com> <lists.tormod@gmail.com> | ||||
|  | ||||
| Török Edwin <edwin+mesa@etorok.net> Török Edvin <edwintorok@gmail.com> | ||||
| Török Edwin <edwin+mesa@etorok.net> <edwintorok@gmail.com> | ||||
|  | ||||
| Ville Syrjälä <ville.syrjala@linux.intel.com> Ville Syrjala <syrjala@freedesktop.org> | ||||
| Ville Syrjälä <ville.syrjala@linux.intel.com> Ville Syrjala <syrjala@sci.fi> | ||||
|  | ||||
| Vincent Lejeune <vljn@ovi.com> <peluche.canard@gmail.com> | ||||
|  | ||||
| Vinson Lee <vlee@freedesktop.org> <vlee@vmware.com> | ||||
|  | ||||
| Zhenyu Wang <zhenyuw@linux.intel.com> Wang Zhenyu <zhenyu.z.wang@intel.com> | ||||
|  | ||||
| Zack Rusin <zackr@vmware.com> <zack@kde.org> | ||||
| Zack Rusin <zackr@vmware.com> <zack@pixel.(none)> | ||||
| Zack Rusin <zackr@vmware.com> <zack@tungstengraphics.com> | ||||
|  | ||||
| Zhang <zxpmyth@yahoo.com.cn> zhang <zxpmyth@yahoo.com.cn> | ||||
							
								
								
									
										671
									
								
								.travis.yml
									
									
									
									
									
								
							
							
						
						
									
										671
									
								
								.travis.yml
									
									
									
									
									
								
							| @@ -1,671 +0,0 @@ | ||||
| language: c | ||||
|  | ||||
| sudo: false | ||||
| dist: trusty | ||||
|  | ||||
| cache: | ||||
|   apt: true | ||||
|   ccache: true | ||||
|  | ||||
| env: | ||||
|   global: | ||||
|     - XORG_RELEASES=http://xorg.freedesktop.org/releases/individual | ||||
|     - XCB_RELEASES=http://xcb.freedesktop.org/dist | ||||
|     - WAYLAND_RELEASES=http://wayland.freedesktop.org/releases | ||||
|     - XORGMACROS_VERSION=util-macros-1.19.0 | ||||
|     - GLPROTO_VERSION=glproto-1.4.17 | ||||
|     - DRI2PROTO_VERSION=dri2proto-2.8 | ||||
|     - LIBPCIACCESS_VERSION=libpciaccess-0.13.4 | ||||
|     - LIBDRM_VERSION=libdrm-2.4.74 | ||||
|     - XCBPROTO_VERSION=xcb-proto-1.13 | ||||
|     - RANDRPROTO_VERSION=randrproto-1.3.0 | ||||
|     - LIBXRANDR_VERSION=libXrandr-1.3.0 | ||||
|     - LIBXCB_VERSION=libxcb-1.13 | ||||
|     - LIBXSHMFENCE_VERSION=libxshmfence-1.2 | ||||
|     - LIBVDPAU_VERSION=libvdpau-1.1 | ||||
|     - LIBVA_VERSION=libva-1.7.0 | ||||
|     - LIBWAYLAND_VERSION=wayland-1.15.0 | ||||
|     - WAYLAND_PROTOCOLS_VERSION=wayland-protocols-1.8 | ||||
|     - PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig | ||||
|     - LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH" | ||||
|     - PATH="$HOME/prefix/bin:$PATH" | ||||
|  | ||||
| matrix: | ||||
|   include: | ||||
|     - env: | ||||
|         - LABEL="meson Vulkan" | ||||
|         - BUILD=meson | ||||
|         - MESON_OPTIONS="-Ddri-drivers=[] -Dgallium-drivers=[]" | ||||
|         - LLVM_VERSION=5.0 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-5.0 | ||||
|           packages: | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             # From sources above | ||||
|             - llvm-5.0-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - libexpat1-dev | ||||
|             - libelf-dev | ||||
|             - python3-pip | ||||
|     - env: | ||||
|         - LABEL="meson loaders/classic DRI" | ||||
|         - BUILD=meson | ||||
|         - MESON_OPTIONS="-Dvulkan-drivers=[] -Dgallium-drivers=[]" | ||||
|       addons: | ||||
|         apt: | ||||
|           packages: | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libxdamage-dev | ||||
|             - libxfixes-dev | ||||
|             - python3-pip | ||||
|     - env: | ||||
|         - LABEL="make loaders/classic DRI" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="make check" | ||||
|         - DRI_LOADERS="--enable-glx --enable-gbm --enable-egl --with-platforms=x11,drm,surfaceless,wayland --enable-osmesa" | ||||
|         - DRI_DRIVERS="i915,i965,radeon,r200,swrast,nouveau" | ||||
|         - GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa" | ||||
|         - GALLIUM_DRIVERS="" | ||||
|         - VULKAN_DRIVERS="" | ||||
|         - LIBUNWIND_FLAGS="--disable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           packages: | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libxdamage-dev | ||||
|             - libxfixes-dev | ||||
|     - env: | ||||
|         # NOTE: Building SWR is 2x (yes two) times slower than all the other | ||||
|         # gallium drivers combined. | ||||
|         # Start this early so that it doesn't hunder the run time. | ||||
|         - LABEL="make Gallium Drivers SWR" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="true" | ||||
|         - LLVM_VERSION=5.0 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         - OVERRIDE_CC="gcc-4.8" | ||||
|         - OVERRIDE_CXX="g++-4.8" | ||||
|         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl" | ||||
|         - DRI_DRIVERS="" | ||||
|         - GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa" | ||||
|         - GALLIUM_DRIVERS="swr" | ||||
|         - VULKAN_DRIVERS="" | ||||
|         - LIBUNWIND_FLAGS="--enable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-5.0 | ||||
|           packages: | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             # From sources above | ||||
|             - llvm-5.0-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|             - libunwind8-dev | ||||
|     - env: | ||||
|         - LABEL="make Gallium Drivers RadeonSI" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="true" | ||||
|         - LLVM_VERSION=5.0 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl" | ||||
|         - DRI_DRIVERS="" | ||||
|         - GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa" | ||||
|         - GALLIUM_DRIVERS="radeonsi" | ||||
|         - VULKAN_DRIVERS="" | ||||
|         - LIBUNWIND_FLAGS="--enable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-5.0 | ||||
|           packages: | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             # From sources above | ||||
|             - llvm-5.0-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|             - libunwind8-dev | ||||
|     - env: | ||||
|         - LABEL="make Gallium Drivers Other" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="true" | ||||
|         - LLVM_VERSION=3.9 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         # New binutils linker is required for llvm-3.9 | ||||
|         - OVERRIDE_PATH=/usr/lib/binutils-2.26/bin | ||||
|         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl" | ||||
|         - DRI_DRIVERS="" | ||||
|         - GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa" | ||||
|         - GALLIUM_DRIVERS="i915,nouveau,pl111,r300,r600,freedreno,svga,swrast,v3d,vc4,virgl,etnaviv,imx" | ||||
|         - VULKAN_DRIVERS="" | ||||
|         - LIBUNWIND_FLAGS="--enable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-3.9 | ||||
|           packages: | ||||
|             - binutils-2.26 | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             # From sources above | ||||
|             - llvm-3.9-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|             - libunwind8-dev | ||||
|     - env: | ||||
|         # NOTE: Analogous to SWR above, building Clover is quite slow. | ||||
|         - LABEL="make Gallium ST Clover LLVM-3.9" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="true" | ||||
|         - LLVM_VERSION=3.9 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         - OVERRIDE_CC=gcc-4.7 | ||||
|         - OVERRIDE_CXX=g++-4.7 | ||||
|         # New binutils linker is required for llvm-3.9 | ||||
|         - OVERRIDE_PATH=/usr/lib/binutils-2.26/bin | ||||
|         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl" | ||||
|         - DRI_DRIVERS="" | ||||
|         - GALLIUM_ST="--disable-dri --enable-opencl --enable-opencl-icd --enable-llvm --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa" | ||||
|         - GALLIUM_DRIVERS="r600" | ||||
|         - VULKAN_DRIVERS="" | ||||
|         - LIBUNWIND_FLAGS="--enable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-3.9 | ||||
|           packages: | ||||
|             - binutils-2.26 | ||||
|             - libclc-dev | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             - g++-4.7 | ||||
|             # From sources above | ||||
|             - llvm-3.9-dev | ||||
|             - clang-3.9 | ||||
|             - libclang-3.9-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|             - libunwind8-dev | ||||
|     - env: | ||||
|         # NOTE: Analogous to SWR above, building Clover is quite slow. | ||||
|         - LABEL="make Gallium ST Clover LLVM-4.0" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="true" | ||||
|         - LLVM_VERSION=4.0 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         - OVERRIDE_CC=gcc-4.8 | ||||
|         - OVERRIDE_CXX=g++-4.8 | ||||
|         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl" | ||||
|         - DRI_DRIVERS="" | ||||
|         - GALLIUM_ST="--disable-dri --enable-opencl --enable-opencl-icd --enable-llvm --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa" | ||||
|         - GALLIUM_DRIVERS="r600" | ||||
|         - VULKAN_DRIVERS="" | ||||
|         - LIBUNWIND_FLAGS="--enable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-4.0 | ||||
|           packages: | ||||
|             - libclc-dev | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             - g++-4.8 | ||||
|             # From sources above | ||||
|             - llvm-4.0-dev | ||||
|             - clang-4.0 | ||||
|             - libclang-4.0-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|             - libunwind8-dev | ||||
|     - env: | ||||
|         # NOTE: Analogous to SWR above, building Clover is quite slow. | ||||
|         - LABEL="make Gallium ST Clover LLVM-5.0" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="true" | ||||
|         - LLVM_VERSION=5.0 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         - OVERRIDE_CC=gcc-4.8 | ||||
|         - OVERRIDE_CXX=g++-4.8 | ||||
|         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl" | ||||
|         - DRI_DRIVERS="" | ||||
|         - GALLIUM_ST="--disable-dri --enable-opencl --enable-opencl-icd --enable-llvm --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa" | ||||
|         - GALLIUM_DRIVERS="r600,radeonsi" | ||||
|         - VULKAN_DRIVERS="" | ||||
|         - LIBUNWIND_FLAGS="--enable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-5.0 | ||||
|           packages: | ||||
|             - libclc-dev | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             - g++-4.8 | ||||
|             # From sources above | ||||
|             - llvm-5.0-dev | ||||
|             - clang-5.0 | ||||
|             - libclang-5.0-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|             - libunwind8-dev | ||||
|     - env: | ||||
|         # NOTE: Analogous to SWR above, building Clover is quite slow. | ||||
|         - LABEL="make Gallium ST Clover LLVM-6.0" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="true" | ||||
|         - LLVM_VERSION=6.0 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl" | ||||
|         - DRI_DRIVERS="" | ||||
|         - GALLIUM_ST="--disable-dri --enable-opencl --enable-opencl-icd --enable-llvm --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa" | ||||
|         - GALLIUM_DRIVERS="r600,radeonsi" | ||||
|         - VULKAN_DRIVERS="" | ||||
|         - LIBUNWIND_FLAGS="--enable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-6.0 | ||||
|             # llvm-6 depends on gcc-4.9 which is not in main repo | ||||
|             - ubuntu-toolchain-r-test | ||||
|           packages: | ||||
|             - libclc-dev | ||||
|             # From sources above | ||||
|             - llvm-6.0-dev | ||||
|             - clang-6.0 | ||||
|             - libclang-6.0-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|             - libunwind8-dev | ||||
|     - env: | ||||
|         - LABEL="make Gallium ST Other" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="true" | ||||
|         - LLVM_VERSION=3.3 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl" | ||||
|         - DRI_DRIVERS="" | ||||
|         - GALLIUM_ST="--enable-dri --disable-opencl --enable-xa --enable-nine --enable-xvmc --enable-vdpau --enable-va --enable-omx-bellagio --enable-gallium-osmesa" | ||||
|         # We need swrast for osmesa and nine. | ||||
|         # i915 most likely doesn't work with most ST. | ||||
|         # Regardless - we're doing a quick build test here. | ||||
|         - GALLIUM_DRIVERS="i915,swrast" | ||||
|         - VULKAN_DRIVERS="" | ||||
|         - LIBUNWIND_FLAGS="--enable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           packages: | ||||
|             # We actually want to test against llvm-3.3 | ||||
|             - llvm-3.3-dev | ||||
|             # Nine requires gcc 4.6... which is the one we have right ? | ||||
|             - libxvmc-dev | ||||
|             # Build locally, for now. | ||||
|             #- libvdpau-dev | ||||
|             #- libva-dev | ||||
|             - libomxil-bellagio-dev | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|             - libunwind8-dev | ||||
|     - env: | ||||
|         - LABEL="make Vulkan" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="make -C src/gtest check && make -C src/intel check" | ||||
|         - LLVM_VERSION=5.0 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl --with-platforms=x11,wayland" | ||||
|         - DRI_DRIVERS="" | ||||
|         - GALLIUM_ST="--enable-dri --enable-dri3 --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa" | ||||
|         - GALLIUM_DRIVERS="" | ||||
|         - VULKAN_DRIVERS="intel,radeon" | ||||
|         - LIBUNWIND_FLAGS="--disable-libunwind" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-5.0 | ||||
|           packages: | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             # From sources above | ||||
|             - llvm-5.0-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|     - env: | ||||
|         - LABEL="scons" | ||||
|         - BUILD=scons | ||||
|         - SCONSFLAGS="-j4" | ||||
|         # Explicitly disable. | ||||
|         - SCONS_TARGET="llvm=0" | ||||
|         # Keep it symmetrical to the make build. | ||||
|         - SCONS_CHECK_COMMAND="scons llvm=0 check" | ||||
|       addons: | ||||
|         apt: | ||||
|           packages: | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|     - env: | ||||
|         - LABEL="scons LLVM" | ||||
|         - BUILD=scons | ||||
|         - SCONSFLAGS="-j4" | ||||
|         - SCONS_TARGET="llvm=1" | ||||
|         # Keep it symmetrical to the make build. | ||||
|         - SCONS_CHECK_COMMAND="scons llvm=1 check" | ||||
|         - LLVM_VERSION=3.3 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|       addons: | ||||
|         apt: | ||||
|           packages: | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             - llvm-3.3-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|     - env: | ||||
|         - LABEL="scons SWR" | ||||
|         - BUILD=scons | ||||
|         - SCONSFLAGS="-j4" | ||||
|         - SCONS_TARGET="swr=1" | ||||
|         - LLVM_VERSION=5.0 | ||||
|         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" | ||||
|         # Keep it symmetrical to the make build. There's no actual SWR, yet. | ||||
|         - SCONS_CHECK_COMMAND="true" | ||||
|         - OVERRIDE_CC="gcc-4.8" | ||||
|         - OVERRIDE_CXX="g++-4.8" | ||||
|       addons: | ||||
|         apt: | ||||
|           sources: | ||||
|             - llvm-toolchain-trusty-5.0 | ||||
|           packages: | ||||
|             # LLVM packaging is broken and misses these dependencies | ||||
|             - libedit-dev | ||||
|             # From sources above | ||||
|             - llvm-5.0-dev | ||||
|             # Common | ||||
|             - xz-utils | ||||
|             - x11proto-xf86vidmode-dev | ||||
|             - libexpat1-dev | ||||
|             - libx11-xcb-dev | ||||
|             - libelf-dev | ||||
|     - env: | ||||
|         - LABEL="macOS make" | ||||
|         - BUILD=make | ||||
|         - MAKEFLAGS="-j4" | ||||
|         - MAKE_CHECK_COMMAND="make check" | ||||
|         - DRI_LOADERS="--with-platforms=x11 --disable-egl" | ||||
|       os: osx | ||||
|     - env: | ||||
|         - LABEL="macOS meson" | ||||
|         - BUILD=meson | ||||
|         - MESON_OPTIONS="-Degl=false" | ||||
|       os: osx | ||||
|  | ||||
| before_install: | ||||
|   - | | ||||
|     if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then | ||||
|       HOMEBREW_NO_AUTO_UPDATE=1 brew install python3 ninja expat gettext | ||||
|       # Set PATH for homebrew pip3 installs | ||||
|       PATH="$HOME/Library/Python/3.6/bin:${PATH}" | ||||
|       # Set PKG_CONFIG_PATH for keg-only expat | ||||
|       PKG_CONFIG_PATH="/usr/local/opt/expat/lib/pkgconfig:${PKG_CONFIG_PATH}" | ||||
|       # Set PATH for keg-only gettext | ||||
|       PATH="/usr/local/opt/gettext/bin:${PATH}" | ||||
|  | ||||
|       # Install xquartz for prereqs ... | ||||
|       XQUARTZ_VERSION="2.7.11" | ||||
|       wget -nv https://dl.bintray.com/xquartz/downloads/XQuartz-${XQUARTZ_VERSION}.dmg | ||||
|       hdiutil attach XQuartz-${XQUARTZ_VERSION}.dmg | ||||
|       sudo installer -pkg /Volumes/XQuartz-${XQUARTZ_VERSION}/XQuartz.pkg -target / | ||||
|       hdiutil detach /Volumes/XQuartz-${XQUARTZ_VERSION} | ||||
|       # ... and set paths | ||||
|       PATH="/opt/X11/bin:${PATH}" | ||||
|       PKG_CONFIG_PATH="/opt/X11/share/pkgconfig:/opt/X11/lib/pkgconfig:${PKG_CONFIG_PATH}" | ||||
|       ACLOCAL="aclocal -I /opt/X11/share/aclocal -I /usr/local/share/aclocal" | ||||
|     fi | ||||
|  | ||||
| install: | ||||
|   - pip2 install --user mako | ||||
|  | ||||
|   # Install a more modern meson from pip, since the version in the | ||||
|   # ubuntu repos is often quite old. Avoid >=0.45.0 as it needs python | ||||
|   # 3.5+ | ||||
|   - if test "x$BUILD" = xmeson; then | ||||
|       pip3 install --user "meson<0.45.0"; | ||||
|     fi | ||||
|  | ||||
|   # Install a more modern scons from pip. | ||||
|   - if test "x$BUILD" = xscons; then | ||||
|       pip2 install --user "scons>=2.4"; | ||||
|     fi | ||||
|  | ||||
|   # Since libdrm gets updated in configure.ac regularly, try to pick up the | ||||
|   # latest version from there. | ||||
|   - for line in `grep "^LIBDRM.*_REQUIRED=" configure.ac`; do | ||||
|       old_ver=`echo $LIBDRM_VERSION | sed 's/libdrm-//'`; | ||||
|       new_ver=`echo $line | sed 's/.*REQUIRED=//'`; | ||||
|       if `echo "$old_ver,$new_ver" | tr ',' '\n' | sort -Vc 2> /dev/null`; then | ||||
|         export LIBDRM_VERSION="libdrm-$new_ver"; | ||||
|       fi; | ||||
|     done | ||||
|  | ||||
|   # Install dependencies where we require specific versions (or where | ||||
|   # disallowed by Travis CI's package whitelisting). | ||||
|  | ||||
|   - | | ||||
|     if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then | ||||
|       wget $XORG_RELEASES/util/$XORGMACROS_VERSION.tar.bz2 | ||||
|       tar -jxvf $XORGMACROS_VERSION.tar.bz2 | ||||
|       (cd $XORGMACROS_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget $XORG_RELEASES/proto/$GLPROTO_VERSION.tar.bz2 | ||||
|       tar -jxvf $GLPROTO_VERSION.tar.bz2 | ||||
|       (cd $GLPROTO_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget $XORG_RELEASES/proto/$DRI2PROTO_VERSION.tar.bz2 | ||||
|       tar -jxvf $DRI2PROTO_VERSION.tar.bz2 | ||||
|       (cd $DRI2PROTO_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget $XCB_RELEASES/$XCBPROTO_VERSION.tar.bz2 | ||||
|       tar -jxvf $XCBPROTO_VERSION.tar.bz2 | ||||
|       (cd $XCBPROTO_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget $XCB_RELEASES/$LIBXCB_VERSION.tar.bz2 | ||||
|       tar -jxvf $LIBXCB_VERSION.tar.bz2 | ||||
|       (cd $LIBXCB_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget $XORG_RELEASES/lib/$LIBPCIACCESS_VERSION.tar.bz2 | ||||
|       tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 | ||||
|       (cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget http://dri.freedesktop.org/libdrm/$LIBDRM_VERSION.tar.bz2 | ||||
|       tar -jxvf $LIBDRM_VERSION.tar.bz2 | ||||
|       (cd $LIBDRM_VERSION && ./configure --prefix=$HOME/prefix --enable-vc4 --enable-freedreno --enable-etnaviv-experimental-api && make install) | ||||
|  | ||||
|       wget $XORG_RELEASES/proto/$RANDRPROTO_VERSION.tar.bz2 | ||||
|       tar -jxvf $RANDRPROTO_VERSION.tar.bz2 | ||||
|       (cd $RANDRPROTO_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget $XORG_RELEASES/lib/$LIBXRANDR_VERSION.tar.bz2 | ||||
|       tar -jxvf $LIBXRANDR_VERSION.tar.bz2 | ||||
|       (cd $LIBXRANDR_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget $XORG_RELEASES/lib/$LIBXSHMFENCE_VERSION.tar.bz2 | ||||
|       tar -jxvf $LIBXSHMFENCE_VERSION.tar.bz2 | ||||
|       (cd $LIBXSHMFENCE_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget http://people.freedesktop.org/~aplattner/vdpau/$LIBVDPAU_VERSION.tar.bz2 | ||||
|       tar -jxvf $LIBVDPAU_VERSION.tar.bz2 | ||||
|       (cd $LIBVDPAU_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       wget http://www.freedesktop.org/software/vaapi/releases/libva/$LIBVA_VERSION.tar.bz2 | ||||
|       tar -jxvf $LIBVA_VERSION.tar.bz2 | ||||
|       (cd $LIBVA_VERSION && ./configure --prefix=$HOME/prefix --disable-wayland --disable-dummy-driver && make install) | ||||
|  | ||||
|       wget $WAYLAND_RELEASES/$LIBWAYLAND_VERSION.tar.xz | ||||
|       tar -axvf $LIBWAYLAND_VERSION.tar.xz | ||||
|       (cd $LIBWAYLAND_VERSION && ./configure --prefix=$HOME/prefix --enable-libraries --without-host-scanner --disable-documentation --disable-dtd-validation && make install) | ||||
|  | ||||
|       wget $WAYLAND_RELEASES/$WAYLAND_PROTOCOLS_VERSION.tar.xz | ||||
|       tar -axvf $WAYLAND_PROTOCOLS_VERSION.tar.xz | ||||
|       (cd $WAYLAND_PROTOCOLS_VERSION && ./configure --prefix=$HOME/prefix && make install) | ||||
|  | ||||
|       # Meson requires ninja >= 1.6, but trusty has 1.3.x | ||||
|       wget https://github.com/ninja-build/ninja/releases/download/v1.6.0/ninja-linux.zip | ||||
|       unzip ninja-linux.zip | ||||
|       mv ninja $HOME/prefix/bin/ | ||||
|  | ||||
|       # Generate this header since one is missing on the Travis instance | ||||
|       mkdir -p linux | ||||
|       printf "%s\n" \ | ||||
|            "#ifndef _LINUX_MEMFD_H" \ | ||||
|            "#define _LINUX_MEMFD_H" \ | ||||
|            "" \ | ||||
|            "#define MFD_CLOEXEC             0x0001U" \ | ||||
|            "#define MFD_ALLOW_SEALING       0x0002U" \ | ||||
|            "" \ | ||||
|            "#endif /* _LINUX_MEMFD_H */" > linux/memfd.h | ||||
|  | ||||
|       # Generate this header, including the missing SYS_memfd_create | ||||
|       # macro, which is not provided by the header in the Travis | ||||
|       # instance | ||||
|       mkdir -p sys | ||||
|       printf "%s\n" \ | ||||
|            "#ifndef _SYSCALL_H" \ | ||||
|            "#define _SYSCALL_H      1" \ | ||||
|            "" \ | ||||
|            "#include <asm/unistd.h>" \ | ||||
|            "" \ | ||||
|            "#ifndef _LIBC" \ | ||||
|            "# include <bits/syscall.h>" \ | ||||
|            "#endif" \ | ||||
|            "" \ | ||||
|            "#ifndef __NR_memfd_create" \ | ||||
|            "# define __NR_memfd_create 319 /* Taken from <asm/unistd_64.h> */" \ | ||||
|            "#endif" \ | ||||
|            "" \ | ||||
|            "#ifndef SYS_memfd_create" \ | ||||
|            "# define SYS_memfd_create __NR_memfd_create" \ | ||||
|            "#endif" \ | ||||
|            "" \ | ||||
|            "#endif" > sys/syscall.h | ||||
|     fi | ||||
|  | ||||
| script: | ||||
|   - if test "x$BUILD" = xmake; then | ||||
|       test -n "$OVERRIDE_CC" && export CC="$OVERRIDE_CC"; | ||||
|       test -n "$OVERRIDE_CXX" && export CXX="$OVERRIDE_CXX"; | ||||
|       test -n "$OVERRIDE_PATH" && export PATH="$OVERRIDE_PATH:$PATH"; | ||||
|  | ||||
|       export CFLAGS="$CFLAGS -isystem`pwd`"; | ||||
|  | ||||
|       mkdir build && | ||||
|       cd build && | ||||
|       ../autogen.sh --enable-debug | ||||
|         $LIBUNWIND_FLAGS | ||||
|         $DRI_LOADERS | ||||
|         --with-dri-drivers=$DRI_DRIVERS | ||||
|         $GALLIUM_ST | ||||
|         --with-gallium-drivers=$GALLIUM_DRIVERS | ||||
|         --with-vulkan-drivers=$VULKAN_DRIVERS | ||||
|         --disable-llvm-shared-libs | ||||
|         && | ||||
|       make && eval $MAKE_CHECK_COMMAND; | ||||
|     fi | ||||
|  | ||||
|   - if test "x$BUILD" = xscons; then | ||||
|       test -n "$OVERRIDE_CC" && export CC="$OVERRIDE_CC"; | ||||
|       test -n "$OVERRIDE_CXX" && export CXX="$OVERRIDE_CXX"; | ||||
|       scons $SCONS_TARGET && eval $SCONS_CHECK_COMMAND; | ||||
|     fi | ||||
|  | ||||
|   - | | ||||
|     if test "x$BUILD" = xmeson; then | ||||
|  | ||||
|       # Travis CI has moved to LLVM 5.0, and meson is detecting | ||||
|       # automatically the available version in /usr/local/bin based on | ||||
|       # the PATH env variable order preference. | ||||
|       # | ||||
|       # As for 0.44.x, Meson cannot receive the path to the | ||||
|       # llvm-config binary as a configuration parameter. See | ||||
|       # https://github.com/mesonbuild/meson/issues/2887 and | ||||
|       # https://github.com/dcbaker/meson/commit/7c8b6ee3fa42f43c9ac7dcacc61a77eca3f1bcef | ||||
|       # | ||||
|       # We want to use the custom (APT) installed version. Therefore, | ||||
|       # let's make Meson find our wanted version sooner than the one | ||||
|       # at /usr/local/bin | ||||
|       # | ||||
|       # Once this is corrected, we would still need a patch similar | ||||
|       # to: | ||||
|       # https://lists.freedesktop.org/archives/mesa-dev/2017-December/180217.html | ||||
|       test -f /usr/bin/$LLVM_CONFIG && ln -s /usr/bin/$LLVM_CONFIG $HOME/prefix/bin/llvm-config | ||||
|  | ||||
|       export CFLAGS="$CFLAGS -isystem`pwd`" | ||||
|       meson _build $MESON_OPTIONS | ||||
|       ninja -C _build | ||||
|     fi | ||||
| @@ -1,121 +0,0 @@ | ||||
| # Mesa 3-D graphics library | ||||
| # | ||||
| # Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com> | ||||
| # Copyright (C) 2010-2011 LunarG Inc. | ||||
| # | ||||
| # 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 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. | ||||
|  | ||||
| ifeq ($(LOCAL_IS_HOST_MODULE),true) | ||||
| LOCAL_CFLAGS += -D_GNU_SOURCE | ||||
| endif | ||||
|  | ||||
| LOCAL_C_INCLUDES += \ | ||||
| 	$(MESA_TOP)/src \ | ||||
| 	$(MESA_TOP)/include | ||||
|  | ||||
| MESA_VERSION := $(shell cat $(MESA_TOP)/VERSION) | ||||
| LOCAL_CFLAGS += \ | ||||
| 	-Wno-error \ | ||||
| 	-Wno-unused-parameter \ | ||||
| 	-Wno-pointer-arith \ | ||||
| 	-Wno-missing-field-initializers \ | ||||
| 	-Wno-initializer-overrides \ | ||||
| 	-Wno-mismatched-tags \ | ||||
| 	-DVERSION=\"$(MESA_VERSION)\" \ | ||||
| 	-DPACKAGE_VERSION=\"$(MESA_VERSION)\" \ | ||||
| 	-DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\" | ||||
|  | ||||
| # XXX: The following __STDC_*_MACROS defines should not be needed. | ||||
| # It's likely due to a bug elsewhere, but let's temporarily add them | ||||
| # here to fix the radeonsi build. | ||||
| LOCAL_CFLAGS += \ | ||||
| 	-DANDROID_API_LEVEL=$(PLATFORM_SDK_VERSION) \ | ||||
| 	-DENABLE_SHADER_CACHE \ | ||||
| 	-D__STDC_CONSTANT_MACROS \ | ||||
| 	-D__STDC_LIMIT_MACROS \ | ||||
| 	-DHAVE___BUILTIN_EXPECT \ | ||||
| 	-DHAVE___BUILTIN_FFS \ | ||||
| 	-DHAVE___BUILTIN_FFSLL \ | ||||
| 	-DHAVE_DLFCN_H \ | ||||
| 	-DHAVE_FUNC_ATTRIBUTE_FLATTEN \ | ||||
| 	-DHAVE_FUNC_ATTRIBUTE_UNUSED \ | ||||
| 	-DHAVE_FUNC_ATTRIBUTE_FORMAT \ | ||||
| 	-DHAVE_FUNC_ATTRIBUTE_PACKED \ | ||||
| 	-DHAVE_FUNC_ATTRIBUTE_ALIAS \ | ||||
| 	-DHAVE_FUNC_ATTRIBUTE_NORETURN \ | ||||
| 	-DHAVE_FUNC_ATTRIBUTE_RETURNS_NONNULL \ | ||||
| 	-DHAVE_FUNC_ATTRIBUTE_WARN_UNUSED_RESULT \ | ||||
| 	-DHAVE___BUILTIN_CTZ \ | ||||
| 	-DHAVE___BUILTIN_POPCOUNT \ | ||||
| 	-DHAVE___BUILTIN_POPCOUNTLL \ | ||||
| 	-DHAVE___BUILTIN_CLZ \ | ||||
| 	-DHAVE___BUILTIN_CLZLL \ | ||||
| 	-DHAVE___BUILTIN_UNREACHABLE \ | ||||
| 	-DHAVE_PTHREAD=1 \ | ||||
| 	-DHAVE_DLADDR \ | ||||
| 	-DHAVE_DL_ITERATE_PHDR \ | ||||
| 	-DHAVE_LINUX_FUTEX_H \ | ||||
| 	-DHAVE_ENDIAN_H \ | ||||
| 	-DHAVE_ZLIB \ | ||||
| 	-DMAJOR_IN_SYSMACROS \ | ||||
| 	-DVK_USE_PLATFORM_ANDROID_KHR \ | ||||
| 	-fvisibility=hidden \ | ||||
| 	-Wno-sign-compare | ||||
|  | ||||
| LOCAL_CPPFLAGS += \ | ||||
| 	-D__STDC_CONSTANT_MACROS \ | ||||
| 	-D__STDC_FORMAT_MACROS \ | ||||
| 	-D__STDC_LIMIT_MACROS \ | ||||
| 	-Wno-error=non-virtual-dtor \ | ||||
| 	-Wno-non-virtual-dtor | ||||
|  | ||||
| # mesa requires at least c99 compiler | ||||
| LOCAL_CONLYFLAGS += \ | ||||
| 	-std=c99 | ||||
|  | ||||
| ifeq ($(strip $(MESA_ENABLE_ASM)),true) | ||||
| ifeq ($(TARGET_ARCH),x86) | ||||
| LOCAL_CFLAGS += \ | ||||
| 	-DUSE_X86_ASM | ||||
|  | ||||
| endif | ||||
| endif | ||||
| ifeq ($(ARCH_ARM_HAVE_NEON),true) | ||||
| LOCAL_CFLAGS_arm += -DUSE_ARM_ASM | ||||
| endif | ||||
| LOCAL_CFLAGS_arm64 += -DUSE_AARCH64_ASM | ||||
|  | ||||
| ifneq ($(LOCAL_IS_HOST_MODULE),true) | ||||
| LOCAL_CFLAGS += -DHAVE_LIBDRM | ||||
| LOCAL_SHARED_LIBRARIES += libdrm | ||||
| endif | ||||
|  | ||||
| LOCAL_CFLAGS_32 += -DDEFAULT_DRIVER_DIR=\"/vendor/lib/$(MESA_DRI_MODULE_REL_PATH)\" | ||||
| LOCAL_CFLAGS_64 += -DDEFAULT_DRIVER_DIR=\"/vendor/lib64/$(MESA_DRI_MODULE_REL_PATH)\" | ||||
| LOCAL_PROPRIETARY_MODULE := true | ||||
|  | ||||
| # uncomment to keep the debug symbols | ||||
| #LOCAL_STRIP_MODULE := false | ||||
|  | ||||
| ifeq ($(strip $(LOCAL_MODULE_TAGS)),) | ||||
| LOCAL_MODULE_TAGS := optional | ||||
| endif | ||||
|  | ||||
| # Quiet down the build system and remove any .h files from the sources | ||||
| LOCAL_SRC_FILES := $(patsubst %.h, , $(LOCAL_SRC_FILES)) | ||||
							
								
								
									
										127
									
								
								Android.mk
									
									
									
									
									
								
							
							
						
						
									
										127
									
								
								Android.mk
									
									
									
									
									
								
							| @@ -1,127 +0,0 @@ | ||||
| # Mesa 3-D graphics library | ||||
| # | ||||
| # Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com> | ||||
| # Copyright (C) 2010-2011 LunarG Inc. | ||||
| # | ||||
| # 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 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. | ||||
|  | ||||
| # BOARD_GPU_DRIVERS should be defined.  The valid values are | ||||
| # | ||||
| #   classic drivers: i915 i965 | ||||
| #   gallium drivers: swrast freedreno i915g nouveau pl111 r300g r600g radeonsi vc4 virgl vmwgfx etnaviv imx | ||||
| # | ||||
| # The main target is libGLES_mesa.  For each classic driver enabled, a DRI | ||||
| # module will also be built.  DRI modules will be loaded by libGLES_mesa. | ||||
|  | ||||
| MESA_TOP := $(call my-dir) | ||||
|  | ||||
| MESA_ANDROID_MAJOR_VERSION := $(word 1, $(subst ., , $(PLATFORM_VERSION))) | ||||
| ifneq ($(filter 2 4, $(MESA_ANDROID_MAJOR_VERSION)),) | ||||
| $(error "Android 4.4 and earlier not supported") | ||||
| endif | ||||
|  | ||||
| MESA_DRI_MODULE_REL_PATH := dri | ||||
| MESA_DRI_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/$(MESA_DRI_MODULE_REL_PATH) | ||||
| MESA_DRI_MODULE_UNSTRIPPED_PATH := $(TARGET_OUT_SHARED_LIBRARIES_UNSTRIPPED)/$(MESA_DRI_MODULE_REL_PATH) | ||||
| MESA_DRI_LDFLAGS := -Wl,--build-id=sha1 | ||||
|  | ||||
| MESA_COMMON_MK := $(MESA_TOP)/Android.common.mk | ||||
| MESA_PYTHON2 := python | ||||
|  | ||||
| # Lists to convert driver names to boolean variables | ||||
| # in form of <driver name>.<boolean make variable> | ||||
| classic_drivers := i915.HAVE_I915_DRI i965.HAVE_I965_DRI | ||||
| gallium_drivers := \ | ||||
| 	swrast.HAVE_GALLIUM_SOFTPIPE \ | ||||
| 	freedreno.HAVE_GALLIUM_FREEDRENO \ | ||||
| 	i915g.HAVE_GALLIUM_I915 \ | ||||
| 	nouveau.HAVE_GALLIUM_NOUVEAU \ | ||||
| 	pl111.HAVE_GALLIUM_PL111 \ | ||||
| 	r300g.HAVE_GALLIUM_R300 \ | ||||
| 	r600g.HAVE_GALLIUM_R600 \ | ||||
| 	radeonsi.HAVE_GALLIUM_RADEONSI \ | ||||
| 	vmwgfx.HAVE_GALLIUM_VMWGFX \ | ||||
| 	vc4.HAVE_GALLIUM_VC4 \ | ||||
| 	virgl.HAVE_GALLIUM_VIRGL \ | ||||
| 	etnaviv.HAVE_GALLIUM_ETNAVIV \ | ||||
| 	imx.HAVE_GALLIUM_IMX | ||||
|  | ||||
| ifeq ($(BOARD_GPU_DRIVERS),all) | ||||
| MESA_BUILD_CLASSIC := $(filter HAVE_%, $(subst ., , $(classic_drivers))) | ||||
| MESA_BUILD_GALLIUM := $(filter HAVE_%, $(subst ., , $(gallium_drivers))) | ||||
| else | ||||
| # Warn if we have any invalid driver names | ||||
| $(foreach d, $(BOARD_GPU_DRIVERS), \ | ||||
| 	$(if $(findstring $(d).,$(classic_drivers) $(gallium_drivers)), \ | ||||
| 		, \ | ||||
| 		$(warning invalid GPU driver: $(d)) \ | ||||
| 	) \ | ||||
| ) | ||||
| MESA_BUILD_CLASSIC := $(strip $(foreach d, $(BOARD_GPU_DRIVERS), $(patsubst $(d).%,%, $(filter $(d).%, $(classic_drivers))))) | ||||
| MESA_BUILD_GALLIUM := $(strip $(foreach d, $(BOARD_GPU_DRIVERS), $(patsubst $(d).%,%, $(filter $(d).%, $(gallium_drivers))))) | ||||
| endif | ||||
| ifeq ($(filter x86%,$(TARGET_ARCH)),) | ||||
| 	MESA_BUILD_CLASSIC := | ||||
| endif | ||||
|  | ||||
| $(foreach d, $(MESA_BUILD_CLASSIC) $(MESA_BUILD_GALLIUM), $(eval $(d) := true)) | ||||
|  | ||||
| # host and target must be the same arch to generate matypes.h | ||||
| ifeq ($(TARGET_ARCH),$(HOST_ARCH)) | ||||
| MESA_ENABLE_ASM := true | ||||
| else | ||||
| MESA_ENABLE_ASM := false | ||||
| endif | ||||
|  | ||||
| ifneq ($(filter true, $(HAVE_GALLIUM_RADEONSI)),) | ||||
| MESA_ENABLE_LLVM := true | ||||
| endif | ||||
|  | ||||
| define mesa-build-with-llvm | ||||
|   $(if $(filter $(MESA_ANDROID_MAJOR_VERSION), 4 5), \ | ||||
|     $(warning Unsupported LLVM version in Android $(MESA_ANDROID_MAJOR_VERSION)),) \ | ||||
|   $(if $(filter 6,$(MESA_ANDROID_MAJOR_VERSION)), \ | ||||
|     $(eval LOCAL_CFLAGS += -DHAVE_LLVM=0x0307 -DMESA_LLVM_VERSION_PATCH=0)) \ | ||||
|   $(if $(filter 7,$(MESA_ANDROID_MAJOR_VERSION)), \ | ||||
|     $(eval LOCAL_CFLAGS += -DHAVE_LLVM=0x0308 -DMESA_LLVM_VERSION_PATCH=0)) \ | ||||
|   $(if $(filter 8,$(MESA_ANDROID_MAJOR_VERSION)), \ | ||||
|     $(eval LOCAL_CFLAGS += -DHAVE_LLVM=0x0309 -DMESA_LLVM_VERSION_PATCH=0)) \ | ||||
|   $(if $(filter P,$(MESA_ANDROID_MAJOR_VERSION)), \ | ||||
|     $(eval LOCAL_CFLAGS += -DHAVE_LLVM=0x0309 -DMESA_LLVM_VERSION_PATCH=0)) \ | ||||
|   $(eval LOCAL_SHARED_LIBRARIES += libLLVM) | ||||
| endef | ||||
|  | ||||
| # add subdirectories | ||||
| SUBDIRS := \ | ||||
| 	src/gbm \ | ||||
| 	src/loader \ | ||||
| 	src/mapi \ | ||||
| 	src/compiler \ | ||||
| 	src/mesa \ | ||||
| 	src/util \ | ||||
| 	src/egl \ | ||||
| 	src/amd \ | ||||
| 	src/broadcom \ | ||||
| 	src/intel \ | ||||
| 	src/mesa/drivers/dri \ | ||||
| 	src/vulkan | ||||
|  | ||||
| INC_DIRS := $(call all-named-subdir-makefiles,$(SUBDIRS)) | ||||
| INC_DIRS += $(call all-named-subdir-makefiles,src/gallium) | ||||
| include $(INC_DIRS) | ||||
							
								
								
									
										16
									
								
								CleanSpec.mk
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								CleanSpec.mk
									
									
									
									
									
								
							| @@ -1,16 +0,0 @@ | ||||
| $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libmesa_*_intermediates) | ||||
| $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/i9*5_dri_intermediates) | ||||
| $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libglapi_intermediates) | ||||
| $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libGLES_mesa_intermediates) | ||||
| $(call add-clean-step, rm -rf $(OUT_DIR)/host/$(HOST_OS)-$(HOST_ARCH)/obj/EXECUTABLES/mesa_*_intermediates) | ||||
| $(call add-clean-step, rm -rf $(OUT_DIR)/host/$(HOST_OS)-$(HOST_ARCH)/obj/EXECUTABLES/glsl_compiler_intermediates) | ||||
| $(call add-clean-step, rm -rf $(OUT_DIR)/host/$(HOST_OS)-$(HOST_ARCH)/obj/STATIC_LIBRARIES/libmesa_glsl_utils_intermediates) | ||||
|  | ||||
| $(call add-clean-step, rm -rf $(PRODUCT_OUT)/*/STATIC_LIBRARIES/libmesa_*_intermediates) | ||||
| $(call add-clean-step, rm -rf $(PRODUCT_OUT)/*/SHARED_LIBRARIES/i9?5_dri_intermediates) | ||||
| $(call add-clean-step, rm -rf $(PRODUCT_OUT)/*/SHARED_LIBRARIES/libglapi_intermediates) | ||||
| $(call add-clean-step, rm -rf $(PRODUCT_OUT)/*/SHARED_LIBRARIES/libGLES_mesa_intermediates) | ||||
| $(call add-clean-step, rm -rf $(HOST_OUT_release)/*/EXECUTABLES/mesa_*_intermediates) | ||||
| $(call add-clean-step, rm -rf $(HOST_OUT_release)/*/EXECUTABLES/glsl_compiler_intermediates) | ||||
| $(call add-clean-step, rm -rf $(HOST_OUT_release)/*/STATIC_LIBRARIES/libmesa_*_intermediates) | ||||
| $(call add-clean-step, rm -rf $(PRODUCT_OUT)/*/SHARED_LIBRARIES/*_dri_intermediates) | ||||
							
								
								
									
										577
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										577
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,577 @@ | ||||
| # Top-level Mesa makefile | ||||
|  | ||||
| TOP = . | ||||
|  | ||||
| SUBDIRS = src progs | ||||
|  | ||||
|  | ||||
| default: $(TOP)/configs/current | ||||
| 	@for dir in $(SUBDIRS) ; do \ | ||||
| 		if [ -d $$dir ] ; then \ | ||||
| 			(cd $$dir && $(MAKE)) || exit 1 ; \ | ||||
| 		fi \ | ||||
| 	done | ||||
|  | ||||
| all: default | ||||
|  | ||||
|  | ||||
| doxygen: | ||||
| 	cd doxygen && $(MAKE) | ||||
|  | ||||
| clean: | ||||
| 	-@touch $(TOP)/configs/current | ||||
| 	-@for dir in $(SUBDIRS) ; do \ | ||||
| 		if [ -d $$dir ] ; then \ | ||||
| 			(cd $$dir && $(MAKE) clean) ; \ | ||||
| 		fi \ | ||||
| 	done | ||||
| 	-@test -s $(TOP)/configs/current || rm -f $(TOP)/configs/current | ||||
|  | ||||
|  | ||||
| realclean: clean | ||||
| 	-rm -rf lib* | ||||
| 	-rm -f $(TOP)/configs/current | ||||
| 	-rm -f $(TOP)/configs/autoconf | ||||
| 	-rm -rf autom4te.cache | ||||
| 	-find . '(' -name '*.o' -o -name '*.a' -o -name '*.so' -o \ | ||||
| 	  -name depend -o -name depend.bak ')' -exec rm -f '{}' ';' | ||||
|  | ||||
|  | ||||
| distclean: realclean | ||||
|  | ||||
|  | ||||
| install: | ||||
| 	@for dir in $(SUBDIRS) ; do \ | ||||
| 		if [ -d $$dir ] ; then \ | ||||
| 			(cd $$dir && $(MAKE) install) || exit 1 ; \ | ||||
| 		fi \ | ||||
| 	done | ||||
|  | ||||
|  | ||||
| .PHONY: default doxygen clean realclean distclean install linux-directfb-install | ||||
|  | ||||
| # If there's no current configuration file | ||||
| $(TOP)/configs/current: | ||||
| 	@echo | ||||
| 	@echo | ||||
| 	@echo "Please choose a configuration from the following list:" | ||||
| 	@ls -1 $(TOP)/configs | grep -v "current\|default\|CVS\|autoconf.*" | ||||
| 	@echo | ||||
| 	@echo "Then type 'make <config>' (ex: 'make linux-x86')" | ||||
| 	@echo | ||||
| 	@echo "Or, run './configure' then 'make'" | ||||
| 	@echo "See './configure --help' for details" | ||||
| 	@echo | ||||
| 	@echo "(ignore the following error message)" | ||||
| 	@exit 1 | ||||
|  | ||||
|  | ||||
| # Rules to set/install a specific build configuration | ||||
| aix \ | ||||
| aix-64 \ | ||||
| aix-64-static \ | ||||
| aix-gcc \ | ||||
| aix-static \ | ||||
| autoconf \ | ||||
| bluegene-osmesa \ | ||||
| bluegene-xlc-osmesa \ | ||||
| beos \ | ||||
| catamount-osmesa-pgi \ | ||||
| darwin \ | ||||
| darwin-fat-32bit \ | ||||
| darwin-fat-all \ | ||||
| darwin-static \ | ||||
| darwin-static-x86ppc \ | ||||
| freebsd \ | ||||
| freebsd-dri \ | ||||
| freebsd-dri-amd64 \ | ||||
| freebsd-dri-x86 \ | ||||
| hpux10 \ | ||||
| hpux10-gcc \ | ||||
| hpux10-static \ | ||||
| hpux11-32 \ | ||||
| hpux11-32-static \ | ||||
| hpux11-32-static-nothreads \ | ||||
| hpux11-64 \ | ||||
| hpux11-64-static \ | ||||
| hpux11-ia64 \ | ||||
| hpux11-ia64-static \ | ||||
| hpux9 \ | ||||
| hpux9-gcc \ | ||||
| irix6-64 \ | ||||
| irix6-64-static \ | ||||
| irix6-n32 \ | ||||
| irix6-n32-static \ | ||||
| irix6-o32 \ | ||||
| irix6-o32-static \ | ||||
| linux \ | ||||
| linux-alpha \ | ||||
| linux-alpha-static \ | ||||
| linux-cell \ | ||||
| linux-cell-debug \ | ||||
| linux-debug \ | ||||
| linux-directfb \ | ||||
| linux-dri \ | ||||
| linux-dri-debug \ | ||||
| linux-dri-x86 \ | ||||
| linux-dri-x86-64 \ | ||||
| linux-dri-ppc \ | ||||
| linux-dri-xcb \ | ||||
| linux-egl \ | ||||
| linux-indirect \ | ||||
| linux-fbdev \ | ||||
| linux-glide \ | ||||
| linux-ia64-icc \ | ||||
| linux-ia64-icc-static \ | ||||
| linux-icc \ | ||||
| linux-icc-static \ | ||||
| linux-llvm \ | ||||
| linux-osmesa \ | ||||
| linux-osmesa-static \ | ||||
| linux-osmesa16 \ | ||||
| linux-osmesa16-static \ | ||||
| linux-osmesa32 \ | ||||
| linux-ppc \ | ||||
| linux-ppc-static \ | ||||
| linux-profile \ | ||||
| linux-solo \ | ||||
| linux-solo-x86 \ | ||||
| linux-solo-ia64 \ | ||||
| linux-sparc \ | ||||
| linux-sparc5 \ | ||||
| linux-static \ | ||||
| linux-ultrasparc \ | ||||
| linux-tcc \ | ||||
| linux-x86 \ | ||||
| linux-x86-debug \ | ||||
| linux-x86-32 \ | ||||
| linux-x86-64 \ | ||||
| linux-x86-64-debug \ | ||||
| linux-x86-64-profile \ | ||||
| linux-x86-64-static \ | ||||
| linux-x86-glide \ | ||||
| linux-x86-profile \ | ||||
| linux-x86-static \ | ||||
| netbsd \ | ||||
| openbsd \ | ||||
| osf1 \ | ||||
| osf1-static \ | ||||
| solaris-x86 \ | ||||
| solaris-x86-gcc \ | ||||
| solaris-x86-gcc-static \ | ||||
| sunos4 \ | ||||
| sunos4-gcc \ | ||||
| sunos4-static \ | ||||
| sunos5 \ | ||||
| sunos5-gcc \ | ||||
| sunos5-64-gcc \ | ||||
| sunos5-smp \ | ||||
| sunos5-v8 \ | ||||
| sunos5-v8-static \ | ||||
| sunos5-v9 \ | ||||
| sunos5-v9-static \ | ||||
| sunos5-v9-cc-g++ \ | ||||
| ultrix-gcc: | ||||
| 	@ if test -f configs/current || test -L configs/current ; then \ | ||||
| 		echo "Please run 'make realclean' before changing configs" ; \ | ||||
| 		exit 1 ; \ | ||||
| 	fi | ||||
| 	(cd configs && rm -f current && ln -s $@ current) | ||||
| 	$(MAKE) default | ||||
|  | ||||
|  | ||||
| # Rules for making release tarballs | ||||
|  | ||||
| VERSION=7.7.1-rc2 | ||||
| DIRECTORY = Mesa-$(VERSION) | ||||
| LIB_NAME = MesaLib-$(VERSION) | ||||
| DEMO_NAME = MesaDemos-$(VERSION) | ||||
| GLUT_NAME = MesaGLUT-$(VERSION) | ||||
|  | ||||
| MAIN_FILES = \ | ||||
| 	$(DIRECTORY)/Makefile*						\ | ||||
| 	$(DIRECTORY)/configure						\ | ||||
| 	$(DIRECTORY)/configure.ac					\ | ||||
| 	$(DIRECTORY)/acinclude.m4					\ | ||||
| 	$(DIRECTORY)/aclocal.m4						\ | ||||
| 	$(DIRECTORY)/bin/config.guess					\ | ||||
| 	$(DIRECTORY)/bin/config.sub					\ | ||||
| 	$(DIRECTORY)/bin/install-sh					\ | ||||
| 	$(DIRECTORY)/bin/mklib						\ | ||||
| 	$(DIRECTORY)/bin/minstall					\ | ||||
| 	$(DIRECTORY)/bin/version.mk					\ | ||||
| 	$(DIRECTORY)/configs/[a-z]*					\ | ||||
| 	$(DIRECTORY)/docs/*.html					\ | ||||
| 	$(DIRECTORY)/docs/COPYING					\ | ||||
| 	$(DIRECTORY)/docs/README.*					\ | ||||
| 	$(DIRECTORY)/docs/RELNOTES*					\ | ||||
| 	$(DIRECTORY)/docs/*.spec					\ | ||||
| 	$(DIRECTORY)/include/GL/internal/glcore.h			\ | ||||
| 	$(DIRECTORY)/include/GL/dmesa.h					\ | ||||
| 	$(DIRECTORY)/include/GL/ggimesa.h				\ | ||||
| 	$(DIRECTORY)/include/GL/gl.h					\ | ||||
| 	$(DIRECTORY)/include/GL/glext.h					\ | ||||
| 	$(DIRECTORY)/include/GL/gl_mangle.h				\ | ||||
| 	$(DIRECTORY)/include/GL/glu.h					\ | ||||
| 	$(DIRECTORY)/include/GL/glu_mangle.h				\ | ||||
| 	$(DIRECTORY)/include/GL/glx.h					\ | ||||
| 	$(DIRECTORY)/include/GL/glxext.h				\ | ||||
| 	$(DIRECTORY)/include/GL/glx_mangle.h				\ | ||||
| 	$(DIRECTORY)/include/GL/glfbdev.h				\ | ||||
| 	$(DIRECTORY)/include/GL/mesa_wgl.h				\ | ||||
| 	$(DIRECTORY)/include/GL/mglmesa.h				\ | ||||
| 	$(DIRECTORY)/include/GL/osmesa.h				\ | ||||
| 	$(DIRECTORY)/include/GL/svgamesa.h				\ | ||||
| 	$(DIRECTORY)/include/GL/vms_x_fix.h				\ | ||||
| 	$(DIRECTORY)/include/GL/wglext.h				\ | ||||
| 	$(DIRECTORY)/include/GL/wmesa.h					\ | ||||
| 	$(DIRECTORY)/src/Makefile					\ | ||||
| 	$(DIRECTORY)/src/mesa/Makefile*					\ | ||||
| 	$(DIRECTORY)/src/mesa/sources.mak				\ | ||||
| 	$(DIRECTORY)/src/mesa/descrip.mms				\ | ||||
| 	$(DIRECTORY)/src/mesa/gl.pc.in					\ | ||||
| 	$(DIRECTORY)/src/mesa/osmesa.pc.in				\ | ||||
| 	$(DIRECTORY)/src/mesa/depend					\ | ||||
| 	$(DIRECTORY)/src/mesa/main/*.[chS]				\ | ||||
| 	$(DIRECTORY)/src/mesa/main/descrip.mms				\ | ||||
| 	$(DIRECTORY)/src/mesa/glapi/*.[chS]				\ | ||||
| 	$(DIRECTORY)/src/mesa/math/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/mesa/math/descrip.mms				\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/*.[chly]				\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/Makefile				\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/descrip.mms			\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/grammar/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/slang/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/slang/descrip.mms			\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/slang/library/*.[ch]		\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/slang/library/*.gc			\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/slang/library/*.syn		\ | ||||
| 	$(DIRECTORY)/src/mesa/shader/slang/library/Makefile		\ | ||||
| 	$(DIRECTORY)/src/mesa/swrast/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/mesa/swrast/descrip.mms			\ | ||||
| 	$(DIRECTORY)/src/mesa/swrast_setup/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/swrast_setup/descrip.mms			\ | ||||
| 	$(DIRECTORY)/src/mesa/vbo/*.[chS]				\ | ||||
| 	$(DIRECTORY)/src/mesa/vbo/descrip.mms				\ | ||||
| 	$(DIRECTORY)/src/mesa/tnl/*.[chS]				\ | ||||
| 	$(DIRECTORY)/src/mesa/tnl/descrip.mms				\ | ||||
| 	$(DIRECTORY)/src/mesa/tnl_dd/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/mesa/tnl_dd/imm/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/mesa/tnl_dd/imm/NOTES.imm			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/Makefile				\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/beos/*.cpp			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/beos/Makefile			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/common/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/common/descrip.mms		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/directfb/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/directfb/Makefile			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dos/*.[chS]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/fbdev/Makefile			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/fbdev/glfbdev.c			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/glide/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/ggi/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/ggi/ggimesa.conf.in		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/ggi/default/*.c			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/ggi/default/genkgi.conf.in	\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/ggi/display/*.c			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/ggi/display/fbdev.conf.in		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/ggi/include/ggi/mesa/*.h		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/osmesa/Makefile			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/osmesa/Makefile.win		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/osmesa/descrip.mms		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.def			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/osmesa/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/svga/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/windows/*/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/windows/*/*.def			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/x11/Makefile			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/x11/descrip.mms			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/x11/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/glslcompiler/Makefile		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/glslcompiler/glslcompiler.c	\ | ||||
| 	$(DIRECTORY)/src/mesa/ppc/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/mesa/sparc/*.[chS]				\ | ||||
| 	$(DIRECTORY)/src/mesa/x86/Makefile				\ | ||||
| 	$(DIRECTORY)/src/mesa/x86/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/mesa/x86/*.S					\ | ||||
| 	$(DIRECTORY)/src/mesa/x86/rtasm/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/mesa/x86-64/*.[chS]				\ | ||||
| 	$(DIRECTORY)/src/mesa/x86-64/Makefile				\ | ||||
| 	$(DIRECTORY)/progs/Makefile					\ | ||||
| 	$(DIRECTORY)/progs/util/README					\ | ||||
| 	$(DIRECTORY)/progs/util/*.[ch]					\ | ||||
| 	$(DIRECTORY)/progs/util/sampleMakefile				\ | ||||
| 	$(DIRECTORY)/windows/VC8/ | ||||
|  | ||||
| EGL_FILES = \ | ||||
| 	$(DIRECTORY)/include/EGL/*.h					\ | ||||
| 	$(DIRECTORY)/include/GLES/*.h					\ | ||||
| 	$(DIRECTORY)/include/GLES2/*.h					\ | ||||
| 	$(DIRECTORY)/src/egl/Makefile					\ | ||||
| 	$(DIRECTORY)/src/egl/*/Makefile					\ | ||||
| 	$(DIRECTORY)/src/egl/*/*.[ch]					\ | ||||
| 	$(DIRECTORY)/src/egl/*/*/Makefile				\ | ||||
| 	$(DIRECTORY)/src/egl/*/*/*.[ch]					\ | ||||
|  | ||||
| GALLIUM_FILES = \ | ||||
| 	$(DIRECTORY)/src/mesa/state_tracker/*[ch]			\ | ||||
| 	$(DIRECTORY)/src/gallium/Makefile				\ | ||||
| 	$(DIRECTORY)/src/gallium/Makefile.template			\ | ||||
| 	$(DIRECTORY)/src/gallium/SConscript				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/Makefile				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/SConscript				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/Makefile				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/Makefile.template			\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/SConscript				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/*.py				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/*.csv				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/*/Makefile				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/*/SConscript			\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/*/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/*/*.py				\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/*/*/Makefile			\ | ||||
| 	$(DIRECTORY)/src/gallium/*/*/*/*/*.[ch]				\ | ||||
|  | ||||
|  | ||||
| DRI_FILES = \ | ||||
| 	$(DIRECTORY)/include/GL/internal/dri_interface.h		\ | ||||
| 	$(DIRECTORY)/include/GL/internal/glcore.h			\ | ||||
| 	$(DIRECTORY)/include/GL/internal/sarea.h			\ | ||||
| 	$(DIRECTORY)/src/glx/Makefile					\ | ||||
| 	$(DIRECTORY)/src/glx/x11/Makefile				\ | ||||
| 	$(DIRECTORY)/src/glx/x11/*.[ch]					\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/Makefile			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/Makefile.template		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/dri.pc.in			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.[ch]		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.po		\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/*/*.[chS]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/*/*/*.[chS]			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/*/Makefile			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/*/*/Makefile			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile			\ | ||||
| 	$(DIRECTORY)/src/mesa/drivers/dri/*/server/*.[ch] | ||||
|  | ||||
| SGI_GLU_FILES = \ | ||||
| 	$(DIRECTORY)/src/glu/Makefile					\ | ||||
| 	$(DIRECTORY)/src/glu/glu.pc.in					\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/Makefile				\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/Makefile.mgw				\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/Makefile.win				\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/glu.def				\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/dummy.cc				\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/glu.exports				\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/glu.exports.darwin			\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/mesaglu.opt				\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/include/gluos.h			\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libnurbs/interface/*.h			\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libnurbs/interface/*.cc		\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libnurbs/internals/*.h			\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libnurbs/internals/*.cc		\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libnurbs/nurbtess/*.h			\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libnurbs/nurbtess/*.cc			\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libtess/README				\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libtess/alg-outline			\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libtess/*.[ch]				\ | ||||
| 	$(DIRECTORY)/src/glu/sgi/libutil/*.[ch] | ||||
|  | ||||
| MESA_GLU_FILES = \ | ||||
| 	$(DIRECTORY)/src/glu/mesa/README[12]		\ | ||||
| 	$(DIRECTORY)/src/glu/mesa/Makefile*		\ | ||||
| 	$(DIRECTORY)/src/glu/mesa/descrip.mms		\ | ||||
| 	$(DIRECTORY)/src/glu/mesa/mms_depend		\ | ||||
| 	$(DIRECTORY)/src/glu/mesa/*.def			\ | ||||
| 	$(DIRECTORY)/src/glu/mesa/depend		\ | ||||
| 	$(DIRECTORY)/src/glu/mesa/*.[ch] | ||||
|  | ||||
| GLW_FILES = \ | ||||
| 	$(DIRECTORY)/src/glw/*.[ch]			\ | ||||
| 	$(DIRECTORY)/src/glw/Makefile*			\ | ||||
| 	$(DIRECTORY)/src/glw/README			\ | ||||
| 	$(DIRECTORY)/src/glw/glw.pc.in			\ | ||||
| 	$(DIRECTORY)/src/glw/depend | ||||
|  | ||||
| GLEW_FILES = \ | ||||
| 	$(DIRECTORY)/include/GL/glew.h			\ | ||||
| 	$(DIRECTORY)/include/GL/glxew.h			\ | ||||
| 	$(DIRECTORY)/include/GL/wglew.h			\ | ||||
| 	$(DIRECTORY)/src/glew/*.c			\ | ||||
| 	$(DIRECTORY)/src/glew/Makefile			\ | ||||
| 	$(DIRECTORY)/src/glew/SConscript		\ | ||||
| 	$(DIRECTORY)/src/glew/LICENSE.txt | ||||
|  | ||||
| DEMO_FILES = \ | ||||
| 	$(GLEW_FILES)					\ | ||||
| 	$(DIRECTORY)/progs/beos/*.cpp			\ | ||||
| 	$(DIRECTORY)/progs/beos/Makefile		\ | ||||
| 	$(DIRECTORY)/progs/images/*.rgb			\ | ||||
| 	$(DIRECTORY)/progs/images/*.rgba		\ | ||||
| 	$(DIRECTORY)/progs/demos/Makefile*		\ | ||||
| 	$(DIRECTORY)/progs/demos/descrip.mms		\ | ||||
| 	$(DIRECTORY)/progs/demos/*.[ch]			\ | ||||
| 	$(DIRECTORY)/progs/demos/*.cxx			\ | ||||
| 	$(DIRECTORY)/progs/demos/*.dat			\ | ||||
| 	$(DIRECTORY)/progs/demos/README			\ | ||||
| 	$(DIRECTORY)/progs/fbdev/Makefile		\ | ||||
| 	$(DIRECTORY)/progs/fbdev/glfbdevtest.c		\ | ||||
| 	$(DIRECTORY)/progs/objviewer/*.[ch]		\ | ||||
| 	$(DIRECTORY)/progs/objviewer/*.obj		\ | ||||
| 	$(DIRECTORY)/progs/objviewer/*.mtl		\ | ||||
| 	$(DIRECTORY)/progs/objviewer/*.rgb		\ | ||||
| 	$(DIRECTORY)/progs/objviewer/Makefile		\ | ||||
| 	$(DIRECTORY)/progs/objviewer/README.txt		\ | ||||
| 	$(DIRECTORY)/progs/osdemos/Makefile		\ | ||||
| 	$(DIRECTORY)/progs/osdemos/*.c			\ | ||||
| 	$(DIRECTORY)/progs/xdemos/Makefile*		\ | ||||
| 	$(DIRECTORY)/progs/xdemos/*.[chf]		\ | ||||
| 	$(DIRECTORY)/progs/redbook/Makefile*		\ | ||||
| 	$(DIRECTORY)/progs/redbook/README		\ | ||||
| 	$(DIRECTORY)/progs/redbook/*.[ch]		\ | ||||
| 	$(DIRECTORY)/progs/samples/Makefile*		\ | ||||
| 	$(DIRECTORY)/progs/samples/README		\ | ||||
| 	$(DIRECTORY)/progs/samples/*.c			\ | ||||
| 	$(DIRECTORY)/progs/glsl/Makefile*		\ | ||||
| 	$(DIRECTORY)/progs/glsl/*.c			\ | ||||
| 	$(DIRECTORY)/progs/glsl/*.frag			\ | ||||
| 	$(DIRECTORY)/progs/glsl/*.vert			\ | ||||
| 	$(DIRECTORY)/progs/glsl/*.shtest		\ | ||||
| 	$(DIRECTORY)/progs/windml/Makefile.ugl		\ | ||||
| 	$(DIRECTORY)/progs/windml/*.c			\ | ||||
| 	$(DIRECTORY)/progs/windml/*.bmp			\ | ||||
| 	$(DIRECTORY)/progs/ggi/*.c | ||||
|  | ||||
| GLUT_FILES = \ | ||||
| 	$(DIRECTORY)/include/GL/glut.h			\ | ||||
| 	$(DIRECTORY)/include/GL/glutf90.h		\ | ||||
| 	$(DIRECTORY)/src/glut/glx/Makefile*		\ | ||||
| 	$(DIRECTORY)/src/glut/glx/depend		\ | ||||
| 	$(DIRECTORY)/src/glut/glx/glut.pc.in		\ | ||||
| 	$(DIRECTORY)/src/glut/glx/*def			\ | ||||
| 	$(DIRECTORY)/src/glut/glx/*.[ch]		\ | ||||
| 	$(DIRECTORY)/src/glut/beos/*.[ch]		\ | ||||
| 	$(DIRECTORY)/src/glut/beos/*.cpp		\ | ||||
| 	$(DIRECTORY)/src/glut/beos/Makefile		\ | ||||
| 	$(DIRECTORY)/src/glut/dos/*.[ch]		\ | ||||
| 	$(DIRECTORY)/src/glut/dos/PC_HW/*.[chS]		\ | ||||
| 	$(DIRECTORY)/src/glut/ggi/*.[ch]		\ | ||||
| 	$(DIRECTORY)/src/glut/ggi/Makefile		\ | ||||
| 	$(DIRECTORY)/src/glut/fbdev/Makefile		\ | ||||
| 	$(DIRECTORY)/src/glut/fbdev/*[ch]		\ | ||||
| 	$(DIRECTORY)/src/glut/mini/*[ch]		\ | ||||
| 	$(DIRECTORY)/src/glut/mini/glut.pc.in		\ | ||||
| 	$(DIRECTORY)/src/glut/directfb/Makefile		\ | ||||
| 	$(DIRECTORY)/src/glut/directfb/NOTES		\ | ||||
| 	$(DIRECTORY)/src/glut/directfb/*[ch] | ||||
|  | ||||
| DEPEND_FILES = \ | ||||
| 	$(TOP)/src/mesa/depend		\ | ||||
| 	$(TOP)/src/glx/x11/depend	\ | ||||
| 	$(TOP)/src/glw/depend		\ | ||||
| 	$(TOP)/src/glut/glx/depend	\ | ||||
| 	$(TOP)/src/glu/sgi/depend | ||||
|  | ||||
|  | ||||
| LIB_FILES = \ | ||||
| 	$(MAIN_FILES)		\ | ||||
| 	$(EGL_FILES)		\ | ||||
| 	$(GALLIUM_FILES)	\ | ||||
| 	$(DRI_FILES)		\ | ||||
| 	$(SGI_GLU_FILES)	\ | ||||
| 	$(GLW_FILES) | ||||
|  | ||||
|  | ||||
| # Everything for new a Mesa release: | ||||
| tarballs: rm_depend configure aclocal.m4 lib_gz demo_gz glut_gz \ | ||||
| 	lib_bz2 demo_bz2 glut_bz2 lib_zip demo_zip glut_zip md5 | ||||
|  | ||||
|  | ||||
| # Helper for autoconf builds | ||||
| ACLOCAL = aclocal | ||||
| ACLOCAL_FLAGS = | ||||
| AUTOCONF = autoconf | ||||
| AC_FLAGS = | ||||
| aclocal.m4: configure.ac acinclude.m4 | ||||
| 	$(ACLOCAL) $(ACLOCAL_FLAGS) | ||||
| configure: configure.ac aclocal.m4 acinclude.m4 | ||||
| 	$(AUTOCONF) $(AC_FLAGS) | ||||
|  | ||||
| rm_depend: | ||||
| 	@for dep in $(DEPEND_FILES) ; do \ | ||||
| 		rm -f $$dep ; \ | ||||
| 		touch $$dep ; \ | ||||
| 	done | ||||
|  | ||||
| rm_config: | ||||
| 	rm -f configs/current | ||||
| 	rm -f configs/autoconf | ||||
|  | ||||
| lib_gz: rm_config | ||||
| 	cd .. ; \ | ||||
| 	tar -cf $(LIB_NAME).tar $(LIB_FILES) ; \ | ||||
| 	gzip $(LIB_NAME).tar ; \ | ||||
| 	mv $(LIB_NAME).tar.gz $(DIRECTORY) | ||||
|  | ||||
| demo_gz: | ||||
| 	cd .. ; \ | ||||
| 	tar -cf $(DEMO_NAME).tar $(DEMO_FILES) ; \ | ||||
| 	gzip $(DEMO_NAME).tar ; \ | ||||
| 	mv $(DEMO_NAME).tar.gz $(DIRECTORY) | ||||
|  | ||||
| glut_gz: | ||||
| 	cd .. ; \ | ||||
| 	tar -cf $(GLUT_NAME).tar $(GLUT_FILES) ; \ | ||||
| 	gzip $(GLUT_NAME).tar ; \ | ||||
| 	mv $(GLUT_NAME).tar.gz $(DIRECTORY) | ||||
|  | ||||
| lib_bz2: rm_config | ||||
| 	cd .. ; \ | ||||
| 	tar -cf $(LIB_NAME).tar $(LIB_FILES) ; \ | ||||
| 	bzip2 $(LIB_NAME).tar ; \ | ||||
| 	mv $(LIB_NAME).tar.bz2 $(DIRECTORY) | ||||
|  | ||||
| demo_bz2: | ||||
| 	cd .. ; \ | ||||
| 	tar -cf $(DEMO_NAME).tar $(DEMO_FILES) ; \ | ||||
| 	bzip2 $(DEMO_NAME).tar ; \ | ||||
| 	mv $(DEMO_NAME).tar.bz2 $(DIRECTORY) | ||||
|  | ||||
| glut_bz2: | ||||
| 	cd .. ; \ | ||||
| 	tar -cf $(GLUT_NAME).tar $(GLUT_FILES) ; \ | ||||
| 	bzip2 $(GLUT_NAME).tar ; \ | ||||
| 	mv $(GLUT_NAME).tar.bz2 $(DIRECTORY) | ||||
|  | ||||
| lib_zip: rm_config | ||||
| 	rm -f $(LIB_NAME).zip ; \ | ||||
| 	cd .. ; \ | ||||
| 	zip -qr $(LIB_NAME).zip $(LIB_FILES) ; \ | ||||
| 	mv $(LIB_NAME).zip $(DIRECTORY) | ||||
|  | ||||
| demo_zip: | ||||
| 	rm -f $(DEMO_NAME).zip ; \ | ||||
| 	cd .. ; \ | ||||
| 	zip -qr $(DEMO_NAME).zip $(DEMO_FILES) ; \ | ||||
| 	mv $(DEMO_NAME).zip $(DIRECTORY) | ||||
|  | ||||
| glut_zip: | ||||
| 	rm -f $(GLUT_NAME).zip ; \ | ||||
| 	cd .. ; \ | ||||
| 	zip -qr $(GLUT_NAME).zip $(GLUT_FILES) ; \ | ||||
| 	mv $(GLUT_NAME).zip $(DIRECTORY) | ||||
|  | ||||
| md5: | ||||
| 	@-md5sum $(LIB_NAME).tar.gz | ||||
| 	@-md5sum $(LIB_NAME).tar.bz2 | ||||
| 	@-md5sum $(LIB_NAME).zip | ||||
| 	@-md5sum $(DEMO_NAME).tar.gz | ||||
| 	@-md5sum $(DEMO_NAME).tar.bz2 | ||||
| 	@-md5sum $(DEMO_NAME).zip | ||||
| 	@-md5sum $(GLUT_NAME).tar.gz | ||||
| 	@-md5sum $(GLUT_NAME).tar.bz2 | ||||
| 	@-md5sum $(GLUT_NAME).zip | ||||
|  | ||||
| .PHONY: tarballs rm_depend rm_config md5 \ | ||||
| 	lib_gz demo_gz glut_gz \ | ||||
| 	lib_bz2 demo_bz2 glut_bz2 \ | ||||
| 	lib_zip demo_zip glut_zip | ||||
							
								
								
									
										92
									
								
								Makefile.am
									
									
									
									
									
								
							
							
						
						
									
										92
									
								
								Makefile.am
									
									
									
									
									
								
							| @@ -1,92 +0,0 @@ | ||||
| # Copyright © 2012 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. | ||||
|  | ||||
| SUBDIRS = src | ||||
|  | ||||
| AM_DISTCHECK_CONFIGURE_FLAGS = \ | ||||
| 	--enable-dri \ | ||||
| 	--enable-dri3 \ | ||||
| 	--enable-egl \ | ||||
| 	--enable-gallium-tests \ | ||||
| 	--enable-gallium-osmesa \ | ||||
| 	--enable-llvm \ | ||||
| 	--enable-gbm \ | ||||
| 	--enable-gles1 \ | ||||
| 	--enable-gles2 \ | ||||
| 	--enable-glx \ | ||||
| 	--enable-glx-tls \ | ||||
| 	--enable-nine \ | ||||
| 	--enable-opencl \ | ||||
| 	--enable-opencl-icd \ | ||||
| 	--enable-opengl \ | ||||
| 	--enable-va \ | ||||
| 	--enable-vdpau \ | ||||
| 	--enable-xa \ | ||||
| 	--enable-xvmc \ | ||||
| 	--enable-llvm-shared-libs \ | ||||
| 	--enable-libunwind \ | ||||
| 	--with-platforms=x11,wayland,drm,surfaceless \ | ||||
| 	--with-dri-drivers=i915,i965,nouveau,radeon,r200,swrast \ | ||||
| 	--with-gallium-drivers=i915,nouveau,r300,pl111,r600,radeonsi,freedreno,svga,swrast,vc4,tegra,virgl,swr,etnaviv,imx \ | ||||
| 	--with-vulkan-drivers=intel,radeon | ||||
|  | ||||
| ACLOCAL_AMFLAGS = -I m4 | ||||
|  | ||||
| EXTRA_DIST = \ | ||||
| 	autogen.sh \ | ||||
| 	common.py \ | ||||
| 	docs \ | ||||
| 	doxygen \ | ||||
| 	bin/git_sha1_gen.py \ | ||||
| 	scons \ | ||||
| 	SConstruct \ | ||||
| 	build-support/conftest.dyn \ | ||||
| 	build-support/conftest.map \ | ||||
| 	meson.build \ | ||||
| 	meson_options.txt \ | ||||
| 	bin/meson.build \ | ||||
| 	include/meson.build \ | ||||
| 	bin/install_megadrivers.py \ | ||||
| 	bin/meson_get_version.py | ||||
|  | ||||
| noinst_HEADERS = \ | ||||
| 	include/c99_alloca.h \ | ||||
| 	include/c99_compat.h \ | ||||
| 	include/c99_math.h \ | ||||
| 	include/c11 \ | ||||
| 	include/drm-uapi/drm.h \ | ||||
| 	include/drm-uapi/drm_fourcc.h \ | ||||
| 	include/drm-uapi/drm_mode.h \ | ||||
| 	include/drm-uapi/i915_drm.h \ | ||||
| 	include/drm-uapi/tegra_drm.h \ | ||||
| 	include/drm-uapi/v3d_drm.h \ | ||||
| 	include/drm-uapi/vc4_drm.h \ | ||||
| 	include/D3D9 \ | ||||
| 	include/GL/wglext.h \ | ||||
| 	include/HaikuGL \ | ||||
| 	include/no_extern_c.h \ | ||||
| 	include/pci_ids \ | ||||
| 	include/vulkan | ||||
|  | ||||
| # We list some directories in EXTRA_DIST, but don't actually want to include | ||||
| # the .gitignore files in the tarball. | ||||
| dist-hook: | ||||
| 	find $(distdir) -name .gitignore -exec $(RM) {} + | ||||
							
								
								
									
										79
									
								
								README.rst
									
									
									
									
									
								
							
							
						
						
									
										79
									
								
								README.rst
									
									
									
									
									
								
							| @@ -1,79 +0,0 @@ | ||||
| `Mesa <https://mesa3d.org>`_ - The 3D Graphics Library | ||||
| ====================================================== | ||||
|  | ||||
|  | ||||
| Source | ||||
| ------ | ||||
|  | ||||
| This repository lives at https://gitlab.freedesktop.org/mesa/mesa. | ||||
| Other repositories are likely forks, and code found there is not supported. | ||||
|  | ||||
|  | ||||
| Build status | ||||
| ------------ | ||||
|  | ||||
| Travis: | ||||
|  | ||||
| .. image:: https://travis-ci.org/mesa3d/mesa.svg?branch=master | ||||
|     :target: https://travis-ci.org/mesa3d/mesa | ||||
|  | ||||
| Appveyor: | ||||
|  | ||||
| .. image:: https://img.shields.io/appveyor/ci/mesa3d/mesa.svg | ||||
|     :target: https://ci.appveyor.com/project/mesa3d/mesa | ||||
|  | ||||
| Coverity: | ||||
|  | ||||
| .. image:: https://scan.coverity.com/projects/139/badge.svg?flat=1 | ||||
|     :target: https://scan.coverity.com/projects/mesa | ||||
|  | ||||
|  | ||||
| Build & install | ||||
| --------------- | ||||
|  | ||||
| You can find more information in our documentation (`docs/install.html | ||||
| <https://mesa3d.org/install.html>`_), but the recommended way is to use | ||||
| Meson (`docs/meson.html <https://mesa3d.org/meson.html>`_): | ||||
|  | ||||
| .. code-block:: sh | ||||
|  | ||||
|   $ mkdir build | ||||
|   $ cd build | ||||
|   $ meson .. | ||||
|   $ sudo ninja install | ||||
|  | ||||
|  | ||||
| Support | ||||
| ------- | ||||
|  | ||||
| Many Mesa devs hang on IRC; if you're not sure which channel is | ||||
| appropriate, you should ask your question on `Freenode's #dri-devel | ||||
| <irc://chat.freenode.net#dri-devel>`_, someone will redirect you if | ||||
| necessary. | ||||
| Remember that not everyone is in the same timezone as you, so it might | ||||
| take a while before someone qualified sees your question. | ||||
| To figure out who you're talking to, or which nick to ping for your | ||||
| question, check out `Who's Who on IRC | ||||
| <https://dri.freedesktop.org/wiki/WhosWho/>`_. | ||||
|  | ||||
| The next best option is to ask your question in an email to the | ||||
| mailing lists: `mesa-dev\@lists.freedesktop.org | ||||
| <https://lists.freedesktop.org/mailman/listinfo/mesa-dev>`_ | ||||
|  | ||||
|  | ||||
| Bug reports | ||||
| ----------- | ||||
|  | ||||
| If you think something isn't working properly, please file a bug report | ||||
| (`docs/bugs.html <https://mesa3d.org/bugs.html>`_). | ||||
|  | ||||
|  | ||||
| Contributing | ||||
| ------------ | ||||
|  | ||||
| Contributions are welcome, and step-by-step instructions can be found in our | ||||
| documentation (`docs/submittingpatches.html | ||||
| <https://mesa3d.org/submittingpatches.html>`_). | ||||
|  | ||||
| Note that Mesa uses email mailing-lists for patches submission, review and | ||||
| discussions. | ||||
							
								
								
									
										138
									
								
								REVIEWERS
									
									
									
									
									
								
							
							
						
						
									
										138
									
								
								REVIEWERS
									
									
									
									
									
								
							| @@ -1,138 +0,0 @@ | ||||
| Overview: | ||||
|  | ||||
| 	This file is similar in syntax (or more precisly a subset) of what is | ||||
| 	used by the MAINTAINERS file in the linux kernel.  Some fields do not | ||||
| 	apply, for example, in all cases, send patches to: | ||||
|  | ||||
| 		mesa-dev@lists.freedesktop.org | ||||
|  | ||||
| 	and in all cases the patchwork instance is: | ||||
|  | ||||
| 		https://patchwork.freedesktop.org/project/mesa/ | ||||
|  | ||||
| 	The purpose is not exactly the same the MAINTAINERS file in the linux | ||||
| 	kernel, as there are not official/formal maintainers of different | ||||
| 	subsystems in mesa, but is meant to give an idea of who to CC for | ||||
| 	various patches for review, and to allow the use of | ||||
| 	scripts/get_reviewer.pl as git --cc-cmd. | ||||
|  | ||||
| Usage: | ||||
|  | ||||
| 	When sending patches: | ||||
|  | ||||
| 		git send-email --cc-cmd ./scripts/get_reviewer.pl ... | ||||
|  | ||||
| 	Or to configure as default: | ||||
|  | ||||
| 		git config sendemail.cccmd ./scripts/get_reviewer.pl | ||||
|  | ||||
| Descriptions of section entries: | ||||
|  | ||||
| 	R: Designated reviewer: FullName <address@domain> | ||||
| 	   These reviewers should be CCed on patches. | ||||
| 	F: Files and directories with wildcard patterns. | ||||
| 	   A trailing slash includes all files and subdirectory files. | ||||
| 	   F:	drivers/net/	all files in and below drivers/net | ||||
| 	   F:	drivers/net/*	all files in drivers/net, but not below | ||||
| 	   F:	*/net/*		all files in "any top level directory"/net | ||||
| 	   One pattern per line.  Multiple F: lines acceptable. | ||||
| 	N: Files and directories with regex patterns. | ||||
| 	   N:	[^a-z]tegra	all files whose path contains the word tegra | ||||
| 	   One pattern per line.  Multiple N: lines acceptable. | ||||
| 	   scripts/get_maintainer.pl has different behavior for files that | ||||
| 	   match F: pattern and matches of N: patterns.  By default, | ||||
| 	   get_maintainer will not look at git log history when an F: pattern | ||||
| 	   match occurs.  When an N: match occurs, git log history is used | ||||
| 	   to also notify the people that have git commit signatures. | ||||
|  | ||||
| Maintainers List (try to look for most precise areas first) | ||||
|  | ||||
| Note: this is an opt-in system, I have not tried to add anyone who hasn't | ||||
| either asked me or sent a patch to add themselves. | ||||
|  | ||||
| 		----------------------------------- | ||||
|  | ||||
| NIR | ||||
| R:	Jason Ekstrand <jason@jlekstrand.net> | ||||
| F:	src/compiler/nir/ | ||||
|  | ||||
| DOCUMENTATION | ||||
| R: Emil Velikov <emil.l.velikov@gmail.com> | ||||
| R: Eric Engestrom <eric@engestrom.ch> | ||||
| F: docs/ | ||||
| F: doxygen/ | ||||
|  | ||||
| COMPATIBILITY HEADERS | ||||
| R: Emil Velikov <emil.l.velikov@gmail.com> | ||||
| F: include/c99* | ||||
|  | ||||
| DRI LOADER | ||||
| R: Emil Velikov <emil.l.velikov@gmail.com> | ||||
| F: src/loader/ | ||||
|  | ||||
| EGL | ||||
| R: Eric Engestrom <eric@engestrom.ch> | ||||
| F: src/egl/ | ||||
|  | ||||
| HAIKU | ||||
| R: Alexander von Gluck IV <kallisti5@unixzen.com> | ||||
| F: include/HaikuGL/ | ||||
| F: src/egl/drivers/haiku/ | ||||
| F: src/gallium/state_trackers/hgl/ | ||||
| F: src/gallium/targets/haiku-softpipe/ | ||||
| F: src/gallium/winsys/sw/hgl/ | ||||
| F: src/hgl/ | ||||
|  | ||||
| GALLIUM LOADER | ||||
| R: Emil Velikov <emil.l.velikov@gmail.com> | ||||
| F: src/gallium/auxiliary/pipe-loader/ | ||||
| F: src/gallium/auxiliary/target-helpers/ | ||||
|  | ||||
| GALLIUM TARGETS | ||||
| R: Emil Velikov <emil.l.velikov@gmail.com> | ||||
| F: src/gallium/targets/ | ||||
|  | ||||
| AUTOCONF BUILD | ||||
| R: Emil Velikov <emil.l.velikov@gmail.com> | ||||
| F: autogen.sh | ||||
| F: configure.ac | ||||
| F: */Automake.inc | ||||
| F: */Makefile.*am | ||||
| F: */Makefile.sources | ||||
|  | ||||
| SCONS BUILD | ||||
| F: scons/ | ||||
| F: */SConscript* | ||||
| F: */Makefile.sources | ||||
|  | ||||
| ANDROID BUILD | ||||
| R: Emil Velikov <emil.l.velikov@gmail.com> | ||||
| R: Rob Herring <robh@kernel.org> | ||||
| F: CleanSpec.mk | ||||
| F: */Android.*mk | ||||
| F: */Makefile.sources | ||||
|  | ||||
| MESON BUILD | ||||
| R: Dylan Baker <dylan@pnwbakers.com> | ||||
| R: Eric Engestrom <eric@engestrom.ch> | ||||
| F: */meson.build | ||||
| F: meson.build | ||||
| F: meson_options.txt | ||||
|  | ||||
| ANDROID EGL SUPPORT | ||||
| R: Rob Herring <robh@kernel.org> | ||||
| R: Tomasz Figa <tfiga@chromium.org> | ||||
| F: src/egl/drivers/dri2/platform_android.c | ||||
|  | ||||
| WAYLAND EGL SUPPORT | ||||
| R: Daniel Stone <daniels@collabora.com> | ||||
| F: src/egl/wayland/* | ||||
| F: src/egl/drivers/dri2/platform_wayland.c | ||||
|  | ||||
| FREEDRENO | ||||
| R:	Rob Clark <robclark@freedesktop.org> | ||||
| F:	src/gallium/drivers/freedreno/ | ||||
|  | ||||
| GLX | ||||
| R: Adam Jackson <ajax@redhat.com> | ||||
| F: src/glx/ | ||||
							
								
								
									
										212
									
								
								SConstruct
									
									
									
									
									
								
							
							
						
						
									
										212
									
								
								SConstruct
									
									
									
									
									
								
							| @@ -1,142 +1,161 @@ | ||||
| ####################################################################### | ||||
| # Top-level SConstruct | ||||
| # | ||||
| # For example, invoke scons as | ||||
| # For example, invoke scons as  | ||||
| # | ||||
| #   scons build=debug llvm=yes machine=x86 | ||||
| #   scons debug=1 dri=0 machine=x86 | ||||
| # | ||||
| # to set configuration variables. Or you can write those options to a file | ||||
| # named config.py: | ||||
| # | ||||
| #   # config.py | ||||
| #   build='debug' | ||||
| #   llvm=True | ||||
| #   debug=1 | ||||
| #   dri=0 | ||||
| #   machine='x86' | ||||
| # | ||||
| #  | ||||
| # Invoke | ||||
| # | ||||
| #   scons -h | ||||
| # | ||||
| # to get the full list of options. See scons manpage for more info. | ||||
| # | ||||
| #   | ||||
|  | ||||
| import os | ||||
| import os.path | ||||
| import sys | ||||
| import SCons.Util | ||||
|  | ||||
| import common | ||||
|  | ||||
| ####################################################################### | ||||
| # Minimal scons version | ||||
|  | ||||
| EnsureSConsVersion(2, 4) | ||||
|  | ||||
|  | ||||
| ####################################################################### | ||||
| # Configuration options | ||||
|  | ||||
| default_statetrackers = 'mesa' | ||||
|  | ||||
| if common.default_platform in ('linux', 'freebsd', 'darwin'): | ||||
| 	default_drivers = 'softpipe,failover,svga,i915,trace,identity,llvmpipe' | ||||
| 	default_winsys = 'xlib' | ||||
| elif common.default_platform in ('winddk',): | ||||
| 	default_drivers = 'softpipe,svga,i915,trace,identity' | ||||
| 	default_winsys = 'all' | ||||
| else: | ||||
| 	default_drivers = 'all' | ||||
| 	default_winsys = 'all' | ||||
|  | ||||
| opts = Variables('config.py') | ||||
| common.AddOptions(opts) | ||||
| opts.Add(ListVariable('statetrackers', 'state trackers to build', default_statetrackers, | ||||
|                      ['mesa', 'python', 'xorg'])) | ||||
| opts.Add(ListVariable('drivers', 'pipe drivers to build', default_drivers, | ||||
|                      ['softpipe', 'failover', 'svga', 'i915', 'cell', 'trace', 'r300', 'identity', 'llvmpipe'])) | ||||
| opts.Add(ListVariable('winsys', 'winsys drivers to build', default_winsys, | ||||
|                      ['xlib', 'vmware', 'intel', 'gdi', 'radeon'])) | ||||
|  | ||||
| opts.Add(EnumVariable('MSVS_VERSION', 'MS Visual C++ version', None, allowed_values=('7.1', '8.0', '9.0'))) | ||||
|  | ||||
| env = Environment( | ||||
| 	options = opts, | ||||
| 	tools = ['gallium'], | ||||
| 	toolpath = ['#scons'], | ||||
| 	toolpath = ['#scons'],	 | ||||
| 	ENV = os.environ, | ||||
| ) | ||||
|  | ||||
| # XXX: This creates a many problems as it saves... | ||||
| #opts.Save('config.py', env) | ||||
|  | ||||
| # Backwards compatability with old target configuration variable | ||||
| try: | ||||
|     targets = ARGUMENTS['targets'] | ||||
| except KeyError: | ||||
|     pass | ||||
| else: | ||||
|     targets = targets.split(',') | ||||
|     print('scons: warning: targets option is deprecated; pass the targets on their own such as') | ||||
|     print() | ||||
|     print('  scons %s' % ' '.join(targets)) | ||||
|     print() | ||||
|     COMMAND_LINE_TARGETS.append(targets) | ||||
|  | ||||
|  | ||||
| Help(opts.GenerateHelpText(env)) | ||||
|  | ||||
| # replicate options values in local variables | ||||
| debug = env['debug'] | ||||
| dri = env['dri'] | ||||
| llvm = env['llvm'] | ||||
| machine = env['machine'] | ||||
| platform = env['platform'] | ||||
|  | ||||
| # derived options | ||||
| x86 = machine == 'x86' | ||||
| ppc = machine == 'ppc' | ||||
| gcc = platform in ('linux', 'freebsd', 'darwin') | ||||
| msvc = platform in ('windows', 'winddk') | ||||
|  | ||||
| Export([ | ||||
| 	'debug',  | ||||
| 	'x86',  | ||||
| 	'ppc',  | ||||
| 	'dri',  | ||||
| 	'llvm', | ||||
| 	'platform', | ||||
| 	'gcc', | ||||
| 	'msvc', | ||||
| ]) | ||||
|  | ||||
|  | ||||
| ####################################################################### | ||||
| # Environment setup | ||||
|  | ||||
| with open("VERSION") as f: | ||||
|   mesa_version = f.read().strip() | ||||
| env.Append(CPPDEFINES = [ | ||||
|     ('PACKAGE_VERSION', '\\"%s\\"' % mesa_version), | ||||
|     ('PACKAGE_BUGREPORT', '\\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\\"'), | ||||
| ]) | ||||
|  | ||||
| # Includes | ||||
| env.Prepend(CPPPATH = [ | ||||
| 	'#/include', | ||||
| ]) | ||||
| env.Append(CPPPATH = [ | ||||
| 	'#/include', | ||||
| 	'#/src/gallium/include', | ||||
| 	'#/src/gallium/auxiliary', | ||||
| 	'#/src/gallium/drivers', | ||||
| 	'#/src/gallium/winsys', | ||||
| ]) | ||||
|  | ||||
|  | ||||
| # Posix | ||||
| if platform in ('posix', 'linux', 'freebsd', 'darwin'): | ||||
| 	env.Append(CPPDEFINES = [ | ||||
| 		'_POSIX_SOURCE', | ||||
| 		('_POSIX_C_SOURCE', '199309L'),  | ||||
| 		'_SVID_SOURCE', | ||||
| 		'_BSD_SOURCE',  | ||||
| 		'_GNU_SOURCE', | ||||
| 		 | ||||
| 		'PTHREADS', | ||||
| 		'HAVE_POSIX_MEMALIGN', | ||||
| 	]) | ||||
| 	if platform == 'darwin': | ||||
| 		env.Append(CPPDEFINES = ['_DARWIN_C_SOURCE']) | ||||
| 	env.Append(CPPPATH = ['/usr/X11R6/include']) | ||||
| 	env.Append(LIBPATH = ['/usr/X11R6/lib']) | ||||
| 	env.Append(LIBS = [ | ||||
| 		'm', | ||||
| 		'pthread', | ||||
| 		'expat', | ||||
| 		'dl', | ||||
| 	]) | ||||
|  | ||||
|  | ||||
| # DRI | ||||
| if dri: | ||||
| 	env.ParseConfig('pkg-config --cflags --libs libdrm') | ||||
| 	env.Append(CPPDEFINES = [ | ||||
| 		('USE_EXTERNAL_DXTN_LIB', '1'),  | ||||
| 		'IN_DRI_DRIVER', | ||||
| 		'GLX_DIRECT_RENDERING', | ||||
| 		'GLX_INDIRECT_RENDERING', | ||||
| 	]) | ||||
|  | ||||
| # LLVM | ||||
| if llvm: | ||||
| 	# See also http://www.scons.org/wiki/UsingPkgConfig | ||||
| 	env.ParseConfig('llvm-config --cflags --ldflags --libs backend bitreader engine instrumentation interpreter ipo') | ||||
| 	env.Append(CPPDEFINES = ['MESA_LLVM']) | ||||
|         # Force C++ linkage | ||||
| 	env['LINK'] = env['CXX'] | ||||
|  | ||||
| # libGL | ||||
| if platform in ('linux', 'freebsd', 'darwin'): | ||||
| 	env.Append(LIBS = [ | ||||
| 		'X11', | ||||
| 		'Xext', | ||||
| 		'Xxf86vm', | ||||
| 		'Xdamage', | ||||
| 		'Xfixes', | ||||
| 	]) | ||||
|  | ||||
| # for debugging | ||||
| #print env.Dump() | ||||
|  | ||||
|  | ||||
| # Add a check target for running tests | ||||
| check = env.Alias('check') | ||||
| env.AlwaysBuild(check) | ||||
|  | ||||
|  | ||||
| ####################################################################### | ||||
| # Invoke host SConscripts | ||||
| # | ||||
| # For things that are meant to be run on the native host build machine, instead | ||||
| # of the target machine. | ||||
| # | ||||
|  | ||||
| # Create host environent | ||||
| if env['crosscompile'] and not env['embedded']: | ||||
|     host_env = Environment( | ||||
|         options = opts, | ||||
|         # no tool used | ||||
|         tools = [], | ||||
|         toolpath = ['#scons'], | ||||
|         ENV = os.environ, | ||||
|     ) | ||||
|  | ||||
|     # Override options | ||||
|     host_env['platform'] = common.host_platform | ||||
|     host_env['machine'] = common.host_machine | ||||
|     host_env['toolchain'] = 'default' | ||||
|     host_env['llvm'] = False | ||||
|  | ||||
|     host_env.Tool('gallium') | ||||
|  | ||||
|     host_env['hostonly'] = True | ||||
|     assert host_env['crosscompile'] == False | ||||
|  | ||||
|     target_env = env | ||||
|     env = host_env | ||||
|     Export('env') | ||||
|  | ||||
|     SConscript( | ||||
|         'src/SConscript', | ||||
|         variant_dir = host_env['build_dir'], | ||||
|         duplicate = 0, # http://www.scons.org/doc/0.97/HTML/scons-user/x2261.html | ||||
|     ) | ||||
|  | ||||
|     env = target_env | ||||
|  | ||||
| Export('env') | ||||
|  | ||||
|  | ||||
| ####################################################################### | ||||
| # Invoke SConscripts | ||||
|  | ||||
| @@ -145,21 +164,6 @@ Export('env') | ||||
|  | ||||
| SConscript( | ||||
| 	'src/SConscript', | ||||
| 	variant_dir = env['build_dir'], | ||||
| 	variant_dir = env['build'], | ||||
| 	duplicate = 0 # http://www.scons.org/doc/0.97/HTML/scons-user/x2261.html | ||||
| ) | ||||
|  | ||||
|  | ||||
| ######################################################################## | ||||
| # List all aliases | ||||
|  | ||||
| try: | ||||
|     from SCons.Node.Alias import default_ans | ||||
| except ImportError: | ||||
|     pass | ||||
| else: | ||||
|     aliases = sorted(default_ans.keys()) | ||||
|     env.Help('\n') | ||||
|     env.Help('Recognized targets:\n') | ||||
|     for alias in aliases: | ||||
|         env.Help('    %s\n' % alias) | ||||
|   | ||||
							
								
								
									
										119
									
								
								acinclude.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										119
									
								
								acinclude.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,119 @@ | ||||
| # A few convenience macros for Mesa, mostly to keep all the platform | ||||
| # specifics out of configure.ac. | ||||
|  | ||||
| # MESA_PIC_FLAGS() | ||||
| # | ||||
| # Find out whether to build PIC code using the option --enable-pic and | ||||
| # the configure enable_static/enable_shared settings. If PIC is needed, | ||||
| # figure out the necessary flags for the platform and compiler. | ||||
| # | ||||
| # The platform checks have been shamelessly taken from libtool and | ||||
| # stripped down to just what's needed for Mesa. See _LT_COMPILER_PIC in | ||||
| # /usr/share/aclocal/libtool.m4 or | ||||
| # http://git.savannah.gnu.org/gitweb/?p=libtool.git;a=blob;f=libltdl/m4/libtool.m4;hb=HEAD | ||||
| # | ||||
| AC_DEFUN([MESA_PIC_FLAGS], | ||||
| [AC_REQUIRE([AC_PROG_CC])dnl | ||||
| AC_ARG_VAR([PIC_FLAGS], [compiler flags for PIC code]) | ||||
| AC_ARG_ENABLE([pic], | ||||
|     [AS_HELP_STRING([--disable-pic], | ||||
|         [compile PIC objects @<:@default=enabled for shared builds | ||||
|         on supported platforms@:>@])], | ||||
|     [enable_pic="$enableval" | ||||
|     test "x$enable_pic" = x && enable_pic=auto], | ||||
|     [enable_pic=auto]) | ||||
| # disable PIC by default for static builds | ||||
| if test "$enable_pic" = auto && test "$enable_static" = yes; then | ||||
|     enable_pic=no | ||||
| fi | ||||
| # if PIC hasn't been explicitly disabled, try to figure out the flags | ||||
| if test "$enable_pic" != no; then | ||||
|     AC_MSG_CHECKING([for $CC option to produce PIC]) | ||||
|     # allow the user's flags to override | ||||
|     if test "x$PIC_FLAGS" = x; then | ||||
|         # see if we're using GCC | ||||
|         if test "x$GCC" = xyes; then | ||||
|             case "$host_os" in | ||||
|             aix*|beos*|cygwin*|irix5*|irix6*|osf3*|osf4*|osf5*) | ||||
|                 # PIC is the default for these OSes. | ||||
|                 ;; | ||||
|             mingw*|os2*|pw32*) | ||||
|                 # This hack is so that the source file can tell whether | ||||
|                 # it is being built for inclusion in a dll (and should | ||||
|                 # export symbols for example). | ||||
|                 PIC_FLAGS="-DDLL_EXPORT" | ||||
|                 ;; | ||||
|             darwin*|rhapsody*) | ||||
|                 # PIC is the default on this platform | ||||
|                 # Common symbols not allowed in MH_DYLIB files | ||||
|                 PIC_FLAGS="-fno-common" | ||||
|                 ;; | ||||
|             hpux*) | ||||
|                 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, | ||||
|                 # but not for PA HP-UX. | ||||
|                 case $host_cpu in | ||||
|                 hppa*64*|ia64*) | ||||
|                     ;; | ||||
|                 *) | ||||
|                     PIC_FLAGS="-fPIC" | ||||
|                     ;; | ||||
|                 esac | ||||
|                 ;; | ||||
|             *) | ||||
|                 # Everyone else on GCC uses -fPIC | ||||
|                 PIC_FLAGS="-fPIC" | ||||
|                 ;; | ||||
|             esac | ||||
|         else # !GCC | ||||
|             case "$host_os" in | ||||
|             hpux9*|hpux10*|hpux11*) | ||||
|                 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, | ||||
|                 # but not for PA HP-UX. | ||||
|                 case "$host_cpu" in | ||||
|                 hppa*64*|ia64*) | ||||
|                     # +Z the default | ||||
|                     ;; | ||||
|                 *) | ||||
|                     PIC_FLAGS="+Z" | ||||
|                     ;; | ||||
|                 esac | ||||
|                 ;; | ||||
|             linux*|k*bsd*-gnu) | ||||
|                 case `basename "$CC"` in | ||||
|                 icc*|ecc*|ifort*) | ||||
|                     PIC_FLAGS="-KPIC" | ||||
|                     ;; | ||||
|                 pgcc*|pgf77*|pgf90*|pgf95*) | ||||
|                     # Portland Group compilers (*not* the Pentium gcc | ||||
|                     # compiler, which looks to be a dead project) | ||||
|                     PIC_FLAGS="-fpic" | ||||
|                     ;; | ||||
|                 ccc*) | ||||
|                     # All Alpha code is PIC. | ||||
|                     ;; | ||||
|                 xl*) | ||||
|                     # IBM XL C 8.0/Fortran 10.1 on PPC | ||||
|                     PIC_FLAGS="-qpic" | ||||
|                     ;; | ||||
|                 *) | ||||
|                     case `$CC -V 2>&1 | sed 5q` in | ||||
|                     *Sun\ C*|*Sun\ F*) | ||||
|                         # Sun C 5.9 or Sun Fortran | ||||
|                         PIC_FLAGS="-KPIC" | ||||
|                         ;; | ||||
|                     esac | ||||
|                 esac | ||||
|                 ;; | ||||
|             solaris*) | ||||
|                 PIC_FLAGS="-KPIC" | ||||
|                 ;; | ||||
|             sunos4*) | ||||
|                 PIC_FLAGS="-PIC" | ||||
|                 ;; | ||||
|             esac | ||||
|         fi # GCC | ||||
|     fi # PIC_FLAGS | ||||
|     AC_MSG_RESULT([$PIC_FLAGS]) | ||||
| fi | ||||
| AC_SUBST([PIC_FLAGS]) | ||||
| ])# MESA_PIC_FLAGS | ||||
							
								
								
									
										82
									
								
								appveyor.yml
									
									
									
									
									
								
							
							
						
						
									
										82
									
								
								appveyor.yml
									
									
									
									
									
								
							| @@ -1,82 +0,0 @@ | ||||
| # http://www.appveyor.com/docs/appveyor-yml | ||||
| # | ||||
| # To setup AppVeyor for your own personal repositories do the following: | ||||
| # - Sign up | ||||
| # - Add a new project | ||||
| # - Select Git and fill in the Git clone URL | ||||
| # - Setup a Git hook as explained in | ||||
| #   https://github.com/appveyor/webhooks#installing-git-hook | ||||
| # - Check 'Settings > General > Skip branches without appveyor.yml' | ||||
| # - Check 'Settings > General > Rolling builds' | ||||
| # - Setup the global or project notifications to your liking | ||||
| # | ||||
| # Note that kicking (or restarting) a build via the web UI will not work, as it | ||||
| # will fail to find appveyor.yml .  The Git hook is the most practical way to | ||||
| # kick a build. | ||||
| # | ||||
| # See also: | ||||
| # - http://help.appveyor.com/discussions/problems/2209-node-grunt-build-specify-a-project-or-solution-file-the-directory-does-not-contain-a-project-or-solution-file | ||||
| # - http://help.appveyor.com/discussions/questions/1184-build-config-vs-appveyoryaml | ||||
|  | ||||
| version: '{build}' | ||||
|  | ||||
| branches: | ||||
|   except: | ||||
|   - /^travis.*$/ | ||||
|  | ||||
| # Don't download the full Mesa history to speed up cloning.  However the clone | ||||
| # depth must not be too small, otherwise builds might fail when lots of patches | ||||
| # are committed in succession, because the desired commit is not found on the | ||||
| # truncated history. | ||||
| # | ||||
| # See also: | ||||
| # - https://www.appveyor.com/blog/2014/06/04/shallow-clone-for-git-repositories | ||||
| clone_depth: 100 | ||||
|  | ||||
| cache: | ||||
| - win_flex_bison-2.5.9.zip | ||||
| - llvm-5.0.1-msvc2015-mtd.7z | ||||
|  | ||||
| os: Visual Studio 2015 | ||||
|  | ||||
| environment: | ||||
|   WINFLEXBISON_ARCHIVE: win_flex_bison-2.5.9.zip | ||||
|   LLVM_ARCHIVE: llvm-5.0.1-msvc2015-mtd.7z | ||||
|  | ||||
| install: | ||||
| # Check pip | ||||
| - python --version | ||||
| - python -m pip --version | ||||
| # Install Mako | ||||
| - python -m pip install Mako==1.0.6 | ||||
| # Install pywin32 extensions, needed by SCons | ||||
| - python -m pip install pypiwin32 | ||||
| # Install python wheels, necessary to install SCons via pip | ||||
| - python -m pip install wheel | ||||
| # Install SCons | ||||
| - python -m pip install scons==2.5.1 | ||||
| - scons --version | ||||
| # Install flex/bison | ||||
| - if not exist "%WINFLEXBISON_ARCHIVE%" appveyor DownloadFile "https://downloads.sourceforge.net/project/winflexbison/old_versions/%WINFLEXBISON_ARCHIVE%" | ||||
| - 7z x -y -owinflexbison\ "%WINFLEXBISON_ARCHIVE%" > nul | ||||
| - set Path=%CD%\winflexbison;%Path% | ||||
| - win_flex --version | ||||
| - win_bison --version | ||||
| # Download and extract LLVM | ||||
| - if not exist "%LLVM_ARCHIVE%" appveyor DownloadFile "https://people.freedesktop.org/~jrfonseca/llvm/%LLVM_ARCHIVE%" | ||||
| - 7z x -y "%LLVM_ARCHIVE%" > nul | ||||
| - mkdir llvm\bin | ||||
| - set LLVM=%CD%\llvm | ||||
|  | ||||
| build_script: | ||||
| - scons -j%NUMBER_OF_PROCESSORS% MSVC_VERSION=14.0 llvm=1 | ||||
|  | ||||
| after_build: | ||||
| - scons -j%NUMBER_OF_PROCESSORS% MSVC_VERSION=14.0 llvm=1 check | ||||
|  | ||||
|  | ||||
| # It's possible to setup notification here, as described in | ||||
| # http://www.appveyor.com/docs/notifications#appveyor-yml-configuration , but | ||||
| # doing so would cause the notification settings to be replicated across all | ||||
| # repos, which is most likely undesired.  So it's better to rely on the | ||||
| # Appveyor global/project notification settings. | ||||
							
								
								
									
										16
									
								
								autogen.sh
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								autogen.sh
									
									
									
									
									
								
							| @@ -3,12 +3,16 @@ | ||||
| srcdir=`dirname "$0"` | ||||
| test -z "$srcdir" && srcdir=. | ||||
|  | ||||
| SRCDIR=`(cd "$srcdir" && pwd)` | ||||
| ORIGDIR=`pwd` | ||||
| cd "$srcdir" | ||||
|  | ||||
| autoreconf --force --verbose --install || exit 1 | ||||
| cd "$ORIGDIR" || exit $? | ||||
|  | ||||
| if test -z "$NOCONFIGURE"; then | ||||
|     "$srcdir"/configure "$@" | ||||
| if test "x$SRCDIR" != "x$ORIGDIR"; then | ||||
| 	echo "Mesa cannot be built when srcdir != builddir" 1>&2 | ||||
| 	exit 1 | ||||
| fi | ||||
|  | ||||
| MAKEFLAGS="" | ||||
|  | ||||
| autoreconf -v --install || exit 1 | ||||
|  | ||||
| "$srcdir"/configure "$@" | ||||
|   | ||||
| @@ -1,11 +0,0 @@ | ||||
| # fixes:  This commit has more than one Fixes tag but the commit it | ||||
| #         addresses didn't land in branch. | ||||
| 6ff1c479968819b93c46d24bd898e89ce14ac401 autotools: don't ship the git_sha1.h generated in git in the tarballs | ||||
| # pick:   This commit addresses a regression introduced by previous | ||||
| #         commit fa9e6c235da, which didn't make it for 18.2. | ||||
| a72dbc461bdb7714656e62cd8f4b00a404c2e6e0 mesa: allow GL_UNSIGNED_BYTE type for SNORM reads | ||||
| # fixes:  This commit has more than one Fixes tag but the commit it | ||||
| #         addresses didn't land in branch. | ||||
| c9f54486959716762e6818dabb0a73a8cd46df67 radeonsi: fix regression in indirect input swizzles. | ||||
| # extra:  Just some comments update. | ||||
| 2ad9917e187c1e9dbb053d3c98aa0e39fa374059 anv/blorp: Fix a comment as per Nanley's review feedback | ||||
| @@ -1,2 +0,0 @@ | ||||
| [*.sh] | ||||
| indent_style = tab | ||||
							
								
								
									
										9
									
								
								bin/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								bin/.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -1,9 +0,0 @@ | ||||
| config.guess | ||||
| config.sub | ||||
| install-sh | ||||
| /depcomp | ||||
| /missing | ||||
| ylwrap | ||||
| compile | ||||
| ar-lib | ||||
| /test-driver | ||||
| @@ -1,35 +0,0 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # This script is used to generate the list of fixed bugs that | ||||
| # appears in the release notes files, with HTML formatting. | ||||
| # | ||||
| # Note: This script could take a while until all details have | ||||
| #       been fetched from bugzilla. | ||||
| # | ||||
| # Usage examples: | ||||
| # | ||||
| # $ bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 | ||||
| # $ bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 > bugfixes | ||||
| # $ bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 | tee bugfixes | ||||
|  | ||||
|  | ||||
| # regex pattern: trim before bug number | ||||
| trim_before='s/.*show_bug.cgi?id=\([0-9]*\).*/\1/' | ||||
|  | ||||
| # regex pattern: reconstruct the url | ||||
| use_after='s,^,https://bugs.freedesktop.org/show_bug.cgi?id=,' | ||||
|  | ||||
| echo "<ul>" | ||||
| echo "" | ||||
|  | ||||
| # extract fdo urls from commit log | ||||
| git log --pretty=medium $* | grep 'bugs.freedesktop.org/show_bug' | sed -e $trim_before | sort -n -u | sed -e $use_after |\ | ||||
| while read url | ||||
| do | ||||
| 	id=$(echo $url | cut -d'=' -f2) | ||||
| 	summary=$(wget --quiet -O - $url | grep -e '<title>.*</title>' | sed -e 's/ *<title>[0-9]\+ – \(.*\)<\/title>/\1/') | ||||
| 	echo "<li><a href=\"$url\">Bug $id</a> - $summary</li>" | ||||
| 	echo "" | ||||
| done | ||||
|  | ||||
| echo "</ul>" | ||||
							
								
								
									
										48
									
								
								bin/confdiff.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										48
									
								
								bin/confdiff.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,48 @@ | ||||
| #!/bin/bash -e | ||||
|  | ||||
| usage() | ||||
| { | ||||
| 	echo "Usage: $0 <target1> <target2>" | ||||
| 	echo "Highlight differences between Mesa configs" | ||||
| 	echo "Example:" | ||||
| 	echo "  $0 linux linux-x86" | ||||
| } | ||||
|  | ||||
| die() | ||||
| { | ||||
| 	echo "$@" >&2 | ||||
| 	return 1 | ||||
| } | ||||
|  | ||||
| case "$1" in | ||||
| -h|--help) usage; exit 0;; | ||||
| esac | ||||
|  | ||||
| [ $# -lt 2 ] && die 2 targets needed. See $0 --help | ||||
| target1=$1 | ||||
| target2=$2 | ||||
|  | ||||
| topdir=$(cd "`dirname $0`"/..; pwd) | ||||
| cd "$topdir" | ||||
|  | ||||
| [ -f "./configs/$target1" ] || die Missing configs/$target1 | ||||
| [ -f "./configs/$target2" ] || die Missing configs/$target2 | ||||
|  | ||||
| trap 'rm -f "$t1" "$t2"' 0 | ||||
|  | ||||
| t1=$(mktemp) | ||||
| t2=$(mktemp) | ||||
|  | ||||
| make -f- -n -p <<EOF | sed '/^# Not a target/,/^$/d' > $t1 | ||||
| TOP = . | ||||
| include \$(TOP)/configs/$target1 | ||||
| default: | ||||
| EOF | ||||
|  | ||||
| make -f- -n -p <<EOF | sed '/^# Not a target/,/^$/d' > $t2 | ||||
| TOP = . | ||||
| include \$(TOP)/configs/$target2 | ||||
| default: | ||||
| EOF | ||||
|  | ||||
| diff -pu -I'^#' $t1 $t2 | ||||
							
								
								
									
										1555
									
								
								bin/config.guess
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										1555
									
								
								bin/config.guess
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1685
									
								
								bin/config.sub
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										1685
									
								
								bin/config.sub
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -1,45 +0,0 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # Script for generating a list of candidates which fix commits that have been | ||||
| # previously cherry-picked to a stable branch. | ||||
| # | ||||
| # Usage examples: | ||||
| # | ||||
| # $ bin/get-extra-pick-list.sh | ||||
| # $ bin/get-extra-pick-list.sh > picklist | ||||
| # $ bin/get-extra-pick-list.sh | tee picklist | ||||
|  | ||||
| # Use the last branchpoint as our limit for the search | ||||
| latest_branchpoint=`git merge-base origin/master HEAD` | ||||
|  | ||||
| # Grep for commits with "cherry picked from commit" in the commit message. | ||||
| git log --reverse --grep="cherry picked from commit" $latest_branchpoint..HEAD |\ | ||||
| 	grep "cherry picked from commit" |\ | ||||
| 	sed -e 's/^[[:space:]]*(cherry picked from commit[[:space:]]*//' -e 's/)//'  > already_picked | ||||
|  | ||||
| # For each cherry-picked commit... | ||||
| cat already_picked | cut -c -8 |\ | ||||
| while read sha | ||||
| do | ||||
| 	# ... check if it's referenced (fixed by another) patch | ||||
| 	git log -n1 --pretty=oneline --grep=$sha $latest_branchpoint..origin/master |\ | ||||
| 		cut -c -8 |\ | ||||
| 	while read candidate | ||||
| 	do | ||||
| 		# And flag up if it hasn't landed in branch yet. | ||||
| 		if grep -q ^$candidate already_picked ; then | ||||
| 			continue | ||||
| 		fi | ||||
| 		# Or if it isn't in the ignore list. | ||||
| 		if [ -f bin/.cherry-ignore ] ; then | ||||
| 			if grep -q ^$candidate bin/.cherry-ignore ; then | ||||
| 				continue | ||||
| 			fi | ||||
| 		fi | ||||
| 		printf "Commit \"%s\" references %s\n" \ | ||||
| 		       "`git log -n1 --pretty=oneline $candidate`" \ | ||||
| 		       "$sha" | ||||
| 	done | ||||
| done | ||||
|  | ||||
| rm -f already_picked | ||||
| @@ -1,81 +0,0 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # Script for generating a list of candidates [referenced by a Fixes tag] for | ||||
| # cherry-picking to a stable branch | ||||
| # | ||||
| # Usage examples: | ||||
| # | ||||
| # $ bin/get-fixes-pick-list.sh | ||||
| # $ bin/get-fixes-pick-list.sh > picklist | ||||
| # $ bin/get-fixes-pick-list.sh | tee picklist | ||||
|  | ||||
| # Use the last branchpoint as our limit for the search | ||||
| latest_branchpoint=`git merge-base origin/master HEAD` | ||||
|  | ||||
| # List all the commits between day 1 and the branch point... | ||||
| git log --reverse --pretty=%H $latest_branchpoint > already_landed | ||||
|  | ||||
| # ... and the ones cherry-picked. | ||||
| git log --reverse --pretty=medium --grep="cherry picked from commit" $latest_branchpoint..HEAD |\ | ||||
| 	grep "cherry picked from commit" |\ | ||||
| 	sed -e 's/^[[:space:]]*(cherry picked from commit[[:space:]]*//' -e 's/)//'  > already_picked | ||||
|  | ||||
| # Grep for commits with Fixes tag | ||||
| git log --reverse --pretty=%H -i --grep="fixes:" $latest_branchpoint..origin/master |\ | ||||
| while read sha | ||||
| do | ||||
| 	# Check to see whether the patch is on the ignore list ... | ||||
| 	if [ -f bin/.cherry-ignore ] ; then | ||||
| 		if grep -q ^$sha bin/.cherry-ignore ; then | ||||
| 			continue | ||||
| 		fi | ||||
| 	fi | ||||
|  | ||||
| 	# Skip if it has been already cherry-picked. | ||||
| 	if grep -q ^$sha already_picked ; then | ||||
| 		continue | ||||
| 	fi | ||||
|  | ||||
| 	# Place every "fixes:" tag on its own line and join with the next word | ||||
| 	# on its line or a later one. | ||||
| 	fixes=`git show --pretty=medium -s $sha | tr -d "\n" | sed -e 's/fixes:[[:space:]]*/\nfixes:/Ig' | grep "fixes:" | sed -e 's/\(fixes:[a-zA-Z0-9]*\).*$/\1/'` | ||||
|  | ||||
| 	# For each one try to extract the tag | ||||
| 	fixes_count=`echo "$fixes" | wc -l` | ||||
| 	warn=`(test $fixes_count -gt 1 && echo $fixes_count) || echo 0` | ||||
| 	while [ $fixes_count -gt 0 ] ; do | ||||
| 		# Treat only the current line | ||||
| 		id=`echo "$fixes" | tail -n $fixes_count | head -n 1 | cut -d : -f 2` | ||||
| 		fixes_count=$(($fixes_count-1)) | ||||
|  | ||||
| 		# Bail out if we cannot find suitable id. | ||||
| 		# Any specific validation the $id is valid and not some junk, is | ||||
| 		# implied with the follow up code | ||||
| 		if [ "x$id" = x ] ; then | ||||
| 			continue | ||||
| 		fi | ||||
|  | ||||
| 		# Check if the offending commit is in branch. | ||||
|  | ||||
| 		# Be that cherry-picked ... | ||||
| 		# ... or landed before the branchpoint. | ||||
| 		if grep -q ^$id already_picked || | ||||
| 		   grep -q ^$id already_landed ; then | ||||
|  | ||||
| 			printf "Commit \"%s\" fixes %s\n" \ | ||||
| 			       "`git log -n1 --pretty=oneline $sha`" \ | ||||
| 			       "$id" | ||||
| 			warn=$(($warn-1)) | ||||
| 		fi | ||||
|  | ||||
| 	done | ||||
|  | ||||
| 	if [ $warn -gt 0 ] ; then | ||||
| 		printf "WARNING: Commit \"%s\" has more than one Fixes tag\n" \ | ||||
| 		       "`git log -n1 --pretty=oneline $sha`" | ||||
| 	fi | ||||
|  | ||||
| done | ||||
|  | ||||
| rm -f already_picked | ||||
| rm -f already_landed | ||||
| @@ -1,38 +0,0 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # Script for generating a list of candidates for cherry-picking to a stable branch | ||||
| # | ||||
| # Usage examples: | ||||
| # | ||||
| # $ bin/get-pick-list.sh | ||||
| # $ bin/get-pick-list.sh > picklist | ||||
| # $ bin/get-pick-list.sh | tee picklist | ||||
|  | ||||
| # Use the last branchpoint as our limit for the search | ||||
| latest_branchpoint=`git merge-base origin/master HEAD` | ||||
|  | ||||
| # Grep for commits with "cherry picked from commit" in the commit message. | ||||
| git log --reverse --pretty=medium --grep="cherry picked from commit" $latest_branchpoint..HEAD |\ | ||||
| 	grep "cherry picked from commit" |\ | ||||
| 	sed -e 's/^[[:space:]]*(cherry picked from commit[[:space:]]*//' -e 's/)//' > already_picked | ||||
|  | ||||
| # Grep for commits that were marked as a candidate for the stable tree. | ||||
| git log --reverse --pretty=%H -i --grep='^CC:.*mesa-stable' $latest_branchpoint..origin/master |\ | ||||
| while read sha | ||||
| do | ||||
| 	# Check to see whether the patch is on the ignore list. | ||||
| 	if [ -f bin/.cherry-ignore ] ; then | ||||
| 		if grep -q ^$sha bin/.cherry-ignore ; then | ||||
| 			continue | ||||
| 		fi | ||||
| 	fi | ||||
|  | ||||
| 	# Check to see if it has already been picked over. | ||||
| 	if grep -q ^$sha already_picked ; then | ||||
| 		continue | ||||
| 	fi | ||||
|  | ||||
| 	git log -n1 --pretty=oneline $sha | cat | ||||
| done | ||||
|  | ||||
| rm -f already_picked | ||||
| @@ -1,42 +0,0 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # Script for generating a list of candidates which have typos in the nomination line | ||||
| # | ||||
| # Usage examples: | ||||
| # | ||||
| # $ bin/get-typod-pick-list.sh | ||||
| # $ bin/get-typod-pick-list.sh > picklist | ||||
| # $ bin/get-typod-pick-list.sh | tee picklist | ||||
|  | ||||
| # NB: | ||||
| # This script intentionally _never_ checks for specific version tag | ||||
| # Should we consider folding it with the original get-pick-list.sh | ||||
|  | ||||
| # Use the last branchpoint as our limit for the search | ||||
| latest_branchpoint=`git merge-base origin/master HEAD` | ||||
|  | ||||
| # Grep for commits with "cherry picked from commit" in the commit message. | ||||
| git log --reverse --grep="cherry picked from commit" $latest_branchpoint..HEAD |\ | ||||
| 	grep "cherry picked from commit" |\ | ||||
| 	sed -e 's/^[[:space:]]*(cherry picked from commit[[:space:]]*//' -e 's/)//' > already_picked | ||||
|  | ||||
| # Grep for commits that were marked as a candidate for the stable tree. | ||||
| git log --reverse --pretty=%H -i --grep='^CC:.*mesa-dev' $latest_branchpoint..origin/master |\ | ||||
| while read sha | ||||
| do | ||||
| 	# Check to see whether the patch is on the ignore list. | ||||
| 	if [ -f bin/.cherry-ignore ] ; then | ||||
| 		if grep -q ^$sha bin/.cherry-ignore ; then | ||||
| 			continue | ||||
| 		fi | ||||
| 	fi | ||||
|  | ||||
| 	# Check to see if it has already been picked over. | ||||
| 	if grep -q ^$sha already_picked ; then | ||||
| 		continue | ||||
| 	fi | ||||
|  | ||||
| 	git log -n1 --pretty=oneline $sha | cat | ||||
| done | ||||
|  | ||||
| rm -f already_picked | ||||
| @@ -1,49 +0,0 @@ | ||||
| #!/usr/bin/env python | ||||
|  | ||||
| """ | ||||
| Generate the contents of the git_sha1.h file. | ||||
| The output of this script goes to stdout. | ||||
| """ | ||||
|  | ||||
|  | ||||
| import argparse | ||||
| import os | ||||
| import os.path | ||||
| import subprocess | ||||
| import sys | ||||
|  | ||||
|  | ||||
| def get_git_sha1(): | ||||
|     """Try to get the git SHA1 with git rev-parse.""" | ||||
|     git_dir = os.path.join(os.path.dirname(sys.argv[0]), '..', '.git') | ||||
|     try: | ||||
|         git_sha1 = subprocess.check_output([ | ||||
|             'git', | ||||
|             '--git-dir=' + git_dir, | ||||
|             'rev-parse', | ||||
|             'HEAD', | ||||
|         ], stderr=open(os.devnull, 'w')).decode("ascii") | ||||
|     except: | ||||
|         # don't print anything if it fails | ||||
|         git_sha1 = '' | ||||
|     return git_sha1 | ||||
|  | ||||
| parser = argparse.ArgumentParser() | ||||
| parser.add_argument('--output', help='File to write the #define in', | ||||
|         required=True) | ||||
| args = parser.parse_args() | ||||
|  | ||||
| git_sha1 = os.environ.get('MESA_GIT_SHA1_OVERRIDE', get_git_sha1())[:10] | ||||
| if git_sha1: | ||||
|     git_sha1_h_in_path = os.path.join(os.path.dirname(sys.argv[0]), | ||||
|             '..', 'src', 'git_sha1.h.in') | ||||
|     with open(git_sha1_h_in_path , 'r') as git_sha1_h_in: | ||||
|         new_sha1 = git_sha1_h_in.read().replace('@VCS_TAG@', git_sha1) | ||||
|         if os.path.isfile(args.output): | ||||
|             with open(args.output, 'r') as git_sha1_h: | ||||
|                 if git_sha1_h.read() == new_sha1: | ||||
|                     quit() | ||||
|         with open(args.output, 'w') as git_sha1_h: | ||||
|             git_sha1_h.write(new_sha1) | ||||
| else: | ||||
|     open(args.output, 'w').close() | ||||
							
								
								
									
										1
									
								
								bin/install-sh
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								bin/install-sh
									
									
									
									
									
										Symbolic link
									
								
							| @@ -0,0 +1 @@ | ||||
| minstall | ||||
| @@ -1,75 +0,0 @@ | ||||
| #!/usr/bin/env python | ||||
| # encoding=utf-8 | ||||
| # Copyright © 2017-2018 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 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. | ||||
|  | ||||
| """Script to install megadriver symlinks for meson.""" | ||||
|  | ||||
| from __future__ import print_function | ||||
| import argparse | ||||
| import os | ||||
| import shutil | ||||
|  | ||||
|  | ||||
| def main(): | ||||
|     parser = argparse.ArgumentParser() | ||||
|     parser.add_argument('megadriver') | ||||
|     parser.add_argument('libdir') | ||||
|     parser.add_argument('drivers', nargs='+') | ||||
|     args = parser.parse_args() | ||||
|  | ||||
|     if os.path.isabs(args.libdir): | ||||
|         to = os.path.join(os.environ.get('DESTDIR', '/'), args.libdir[1:]) | ||||
|     else: | ||||
|         to = os.path.join(os.environ['MESON_INSTALL_DESTDIR_PREFIX'], args.libdir) | ||||
|  | ||||
|     master = os.path.join(to, os.path.basename(args.megadriver)) | ||||
|  | ||||
|     if not os.path.exists(to): | ||||
|         if os.path.lexists(to): | ||||
|             os.unlink(to) | ||||
|         os.makedirs(to) | ||||
|     shutil.copy(args.megadriver, master) | ||||
|  | ||||
|     for driver in args.drivers: | ||||
|         abs_driver = os.path.join(to, driver) | ||||
|  | ||||
|         if os.path.lexists(abs_driver): | ||||
|             os.unlink(abs_driver) | ||||
|         print('installing {} to {}'.format(args.megadriver, abs_driver)) | ||||
|         os.link(master, abs_driver) | ||||
|  | ||||
|         try: | ||||
|             ret = os.getcwd() | ||||
|             os.chdir(to) | ||||
|  | ||||
|             name, ext = os.path.splitext(driver) | ||||
|             while ext != '.so': | ||||
|                 if os.path.lexists(name): | ||||
|                     os.unlink(name) | ||||
|                 os.symlink(driver, name) | ||||
|                 name, ext = os.path.splitext(name) | ||||
|         finally: | ||||
|             os.chdir(ret) | ||||
|     os.unlink(master) | ||||
|  | ||||
|  | ||||
| if __name__ == '__main__': | ||||
|     main() | ||||
							
								
								
									
										74
									
								
								bin/installmesa
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										74
									
								
								bin/installmesa
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,74 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # | ||||
| # Simple shell script for installing Mesa's header and library files. | ||||
| # If the copy commands below don't work on a particular system (i.e. the | ||||
| # -f or -d flags), we may need to branch on `uname` to do the right thing. | ||||
| # | ||||
|  | ||||
|  | ||||
| TOP=. | ||||
|  | ||||
| INCLUDE_DIR="/usr/local/include" | ||||
| LIB_DIR="/usr/local/lib" | ||||
|  | ||||
| if [ "x$#" = "x0" ] ; then | ||||
| echo | ||||
| echo "***** Mesa installation - You may need root privileges to do this *****" | ||||
| echo | ||||
| echo "Default directory for header files is:" ${INCLUDE_DIR} | ||||
| echo "Enter new directory or press <Enter> to accept this default." | ||||
|  | ||||
| read INPUT | ||||
| if [ "x${INPUT}" != "x" ] ; then | ||||
| 	INCLUDE_DIR=${INPUT} | ||||
| fi | ||||
|  | ||||
| echo | ||||
| echo "Default directory for library files is:" ${LIB_DIR} | ||||
| echo "Enter new directory or press <Enter> to accept this default." | ||||
|  | ||||
| read INPUT | ||||
| if [ "x${INPUT}" != "x" ] ; then | ||||
| 	LIB_DIR=${INPUT} | ||||
| fi | ||||
|  | ||||
| echo | ||||
| echo "About to install Mesa header files (GL/*.h) in: " ${INCLUDE_DIR}/GL | ||||
| echo "and Mesa library files (libGL.*, etc) in: " ${LIB_DIR} | ||||
| echo "Press <Enter> to continue, or <ctrl>-C to abort." | ||||
|  | ||||
| read INPUT | ||||
|  | ||||
| else | ||||
| INCLUDE_DIR=$1/include | ||||
| LIB_DIR=$1/lib | ||||
| fi | ||||
|  | ||||
| # flags: | ||||
| #  -f = force | ||||
| #  -d = preserve symlinks (does not work on BSD) | ||||
|  | ||||
| if [ `uname` = "FreeBSD" ] ; then | ||||
| 	CP_FLAGS="-f" | ||||
| elif [ `uname` = "Darwin" ] ; then | ||||
| 	CP_FLAGS="-f" | ||||
| elif [ `uname` = "AIX" ] ; then | ||||
| 	CP_FLAGS="-fh" | ||||
| else | ||||
| 	CP_FLAGS="-fd" | ||||
| fi | ||||
|  | ||||
|  | ||||
| set -v | ||||
|  | ||||
| mkdir -p ${INCLUDE_DIR} | ||||
| mkdir -p ${INCLUDE_DIR}/GL | ||||
| # NOT YET: mkdir -p ${INCLUDE_DIR}/GLES | ||||
| mkdir -p ${LIB_DIR} | ||||
| cp -f ${TOP}/include/GL/*.h ${INCLUDE_DIR}/GL | ||||
| cp -f ${TOP}/src/glw/*.h ${INCLUDE_DIR}/GL | ||||
| # NOT YET: cp -f ${TOP}/include/GLES/*.h ${INCLUDE_DIR}/GLES | ||||
| cp ${CP_FLAGS} ${TOP}/lib*/lib* ${LIB_DIR} | ||||
|  | ||||
| echo "Done." | ||||
| @@ -1,21 +0,0 @@ | ||||
| # Copyright © 2017 Eric Engestrom | ||||
|  | ||||
| # 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 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. | ||||
|  | ||||
| git_sha1_gen_py = files('git_sha1_gen.py') | ||||
| @@ -1,35 +0,0 @@ | ||||
| #!/usr/bin/env python | ||||
| # encoding=utf-8 | ||||
| # Copyright © 2017 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 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. | ||||
|  | ||||
| from __future__ import print_function | ||||
| import os | ||||
|  | ||||
|  | ||||
| def main(): | ||||
|     filename = os.path.join(os.environ['MESON_SOURCE_ROOT'], 'VERSION') | ||||
|     with open(filename) as f: | ||||
|         version = f.read().strip() | ||||
|     print(version, end='') | ||||
|  | ||||
|  | ||||
| if __name__ == '__main__': | ||||
|     main() | ||||
							
								
								
									
										93
									
								
								bin/minstall
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										93
									
								
								bin/minstall
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,93 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
|  | ||||
| # A minimal replacement for 'install' that supports installing symbolic links. | ||||
| # Only a limited number of options are supported: | ||||
| # -d dir          Create a directory | ||||
| # -m mode         Sets a file's mode when installing | ||||
|  | ||||
|  | ||||
| # If these commands aren't portable, we'll need some "if (arch)" type stuff | ||||
| SYMLINK="ln -s" | ||||
| MKDIR="mkdir -p" | ||||
| RM="rm -f" | ||||
|  | ||||
| MODE="" | ||||
|  | ||||
| if [ "$1" = "-d" ] ; then | ||||
| 	# make a directory path | ||||
| 	$MKDIR "$2" | ||||
| 	exit 0 | ||||
| fi | ||||
|  | ||||
| if [ "$1" = "-m" ] ; then | ||||
| 	# set file mode | ||||
| 	MODE=$2 | ||||
| 	shift 2 | ||||
| fi | ||||
|  | ||||
| # install file(s) into destination | ||||
| if [ $# -ge 2 ] ; then | ||||
|  | ||||
| 	# Last cmd line arg is the dest dir | ||||
| 	for FILE in $@ ; do | ||||
| 		DEST="$FILE" | ||||
| 	done | ||||
|  | ||||
| 	# Loop over args, moving them to DEST directory | ||||
| 	I=1 | ||||
| 	for FILE in $@ ; do | ||||
| 		if [ $I = $# ] ; then | ||||
| 			# stop, don't want to install $DEST into $DEST | ||||
| 			exit 0 | ||||
| 		fi | ||||
|  | ||||
| 		PWDSAVE=`pwd` | ||||
|  | ||||
| 		# determine file's type | ||||
| 		if [ -h "$FILE" ] ; then | ||||
| 			#echo $FILE is a symlink | ||||
| 			# Unfortunately, cp -d isn't universal so we have to | ||||
| 			# use a work-around. | ||||
|  | ||||
| 			# Use ls -l to find the target that the link points to | ||||
| 			LL=`ls -l "$FILE"` | ||||
| 			for L in $LL ; do | ||||
| 				TARGET=$L | ||||
| 			done | ||||
| 			#echo $FILE is a symlink pointing to $TARGET | ||||
|  | ||||
| 			FILE=`basename "$FILE"` | ||||
| 			# Go to $DEST and make the link | ||||
| 			cd "$DEST"        # pushd | ||||
| 				$RM "$FILE" | ||||
| 				$SYMLINK "$TARGET" "$FILE" | ||||
| 			cd "$PWDSAVE"     # popd | ||||
|  | ||||
| 		elif [ -f "$FILE" ] ; then | ||||
| 			#echo "$FILE" is a regular file | ||||
| 			# Only copy if the files differ | ||||
| 			if ! cmp -s $FILE $DEST/`basename $FILE`; then | ||||
| 				$RM "$DEST/`basename $FILE`" | ||||
| 				cp "$FILE" "$DEST" | ||||
| 			fi | ||||
| 			if [ $MODE ] ; then | ||||
| 				FILE=`basename "$FILE"` | ||||
| 				chmod $MODE "$DEST/$FILE" | ||||
| 			fi | ||||
| 		else | ||||
| 			echo "Unknown type of argument: " "$FILE" | ||||
| 			exit 1 | ||||
| 		fi | ||||
|  | ||||
| 		I=`expr $I + 1` | ||||
| 	done | ||||
|  | ||||
| 	exit 0 | ||||
| fi | ||||
|  | ||||
| # If we get here, we didn't find anything to do | ||||
| echo "Usage:" | ||||
| echo "  install -d dir                      Create named directory" | ||||
| echo "  install [-m mode] file [...] dest   Install files in destination" | ||||
|  | ||||
							
								
								
									
										969
									
								
								bin/mklib
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										969
									
								
								bin/mklib
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,969 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # Make a shared library. | ||||
| # This script should be useful for projects other than Mesa. | ||||
| # Improvements/fixes are welcome. | ||||
|  | ||||
|  | ||||
| # Copyright (C) 1999-2006  Brian Paul   All Rights Reserved. | ||||
| # | ||||
| # 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 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 | ||||
| # BRIAN PAUL 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. | ||||
|  | ||||
|  | ||||
| # | ||||
| # Option defaults | ||||
| # | ||||
| LIBNAME="" | ||||
| MAJOR=1 | ||||
| MINOR=0 | ||||
| PATCH="" | ||||
| DEPS="" | ||||
| LINK="" | ||||
| LDFLAGS="" | ||||
| CPLUSPLUS=0 | ||||
| STATIC=0 | ||||
| DLOPEN=0 | ||||
| INSTALLDIR="." | ||||
| ARCH="auto" | ||||
| ARCHOPT="" | ||||
| NOPREFIX=0 | ||||
| EXPORTS="" | ||||
| ID="" | ||||
|  | ||||
| # | ||||
| # Parse arguments | ||||
| # | ||||
| while true | ||||
| do | ||||
|     case $1 in | ||||
| 	'-h' | '--help') | ||||
| 	    echo 'Usage: mklib [options] objects' | ||||
| 	    echo 'Create a shared library from object files.' | ||||
| 	    echo '  -o LIBRARY    specifies the name of the resulting library, without' | ||||
| 	    echo '                the leading "lib" or any suffix.' | ||||
| 	    echo '                (eg: "-o GL" might result in "libGL.so" being made)' | ||||
| 	    echo '  -major N      specifies major version number (default is 1)' | ||||
| 	    echo '  -minor N      specifies minor version number (default is 0)' | ||||
| 	    echo '  -patch N      specifies patch version number (default is 0)' | ||||
| 	    echo '  -lLIBRARY     specifies a dependency on LIBRARY' | ||||
| 	    echo '  -LDIR         search in DIR for library dependencies at build time' | ||||
| 	    echo '  -RDIR         search in DIR for library dependencies at run time' | ||||
| 	    echo '  -linker L     explicity specify the linker program to use (eg: gcc, g++)' | ||||
| 	    echo '                Not observed on all systems at this time.' | ||||
| 	    echo '  -ldflags OPT  specify any additional linker flags in OPT' | ||||
| 	    echo '  -cplusplus    link with C++ runtime' | ||||
| 	    echo '  -static       make a static library (default is dynamic/shared)' | ||||
| 	    echo '  -dlopen       make a shared library suitable for dynamic loading' | ||||
| 	    echo '  -install DIR  put resulting library file(s) in DIR' | ||||
| 	    echo '  -arch ARCH    override using `uname` to determine host system' | ||||
| 	    echo '  -archopt OPT  specify an extra achitecture-specific option OPT' | ||||
| 	    echo '  -altopts OPTS alternate options to override all others' | ||||
| 	    echo "  -noprefix     don't prefix library name with 'lib' nor add any suffix" | ||||
| 	    echo '  -exports FILE only export the symbols listed in FILE' | ||||
| 	    echo '  -id NAME      Sets the id of the dylib (Darwin)' | ||||
| 	    echo '  -h, --help    display this information and exit' | ||||
| 	    exit 1 | ||||
| 	    ;; | ||||
| 	'-o') | ||||
| 	    shift 1; | ||||
| 	    LIBNAME=$1 | ||||
| 	    ;; | ||||
| 	'-major') | ||||
| 	    shift 1; | ||||
| 	    MAJOR=$1 | ||||
| 	    ;; | ||||
| 	'-minor') | ||||
| 	    shift 1; | ||||
| 	    MINOR=$1 | ||||
| 	    ;; | ||||
| 	'-patch') | ||||
| 	    shift 1; | ||||
| 	    PATCH=$1 | ||||
| 	    ;; | ||||
| 	'-linker') | ||||
| 	    shift 1; | ||||
| 	    LINK=$1 | ||||
| 	    ;; | ||||
| 	'-ldflags') | ||||
| 	    shift 1; | ||||
| 	    LDFLAGS=$1 | ||||
| 	    ;; | ||||
| 	-l*) | ||||
| 	    DEPS="$DEPS $1" | ||||
| 	    ;; | ||||
| 	-L*) | ||||
| 	    DEPS="$DEPS $1" | ||||
| 	    ;; | ||||
| 	-R*) | ||||
| 	    DEPS="$DEPS $1" | ||||
| 	    ;; | ||||
| 	-Wl*) | ||||
|             DEPS="$DEPS $1" | ||||
|             ;; | ||||
| 	-pthread) | ||||
| 	    # this is a special case (see bugzilla 10876) | ||||
| 	    DEPS="$DEPS $1" | ||||
| 	    ;; | ||||
| 	'-pthread') | ||||
| 	    DEPS="$DEPS -pthread" | ||||
| 	    ;; | ||||
| 	'-cplusplus') | ||||
| 	    CPLUSPLUS=1 | ||||
| 	    ;; | ||||
| 	'-static') | ||||
| 	    STATIC=1 | ||||
| 	    ;; | ||||
| 	'-dlopen') | ||||
| 	    DLOPEN=1 | ||||
| 	    ;; | ||||
| 	'-install') | ||||
| 	    shift 1; | ||||
| 	    INSTALLDIR=$1 | ||||
| 	    ;; | ||||
| 	'-arch') | ||||
| 	    shift 1; | ||||
| 	    ARCH=$1 | ||||
| 	    ;; | ||||
| 	'-archopt') | ||||
| 	    shift 1; | ||||
| 	    ARCHOPT=$1 | ||||
| 	    ;; | ||||
| 	'-altopts') | ||||
|             shift 1; | ||||
|             ALTOPTS=$1 | ||||
|             ;; | ||||
| 	'-noprefix') | ||||
| 	    NOPREFIX=1 | ||||
| 	    ;; | ||||
| 	'-exports') | ||||
| 	    shift 1; | ||||
| 	    EXPORTS=$1 | ||||
| 	    ;; | ||||
| 	'-id') | ||||
| 	    shift 1; | ||||
| 	    ID=$1 | ||||
| 	    ;; | ||||
| 	-*) | ||||
| 	    echo "mklib: Unknown option: " $1 ; | ||||
| 	    exit 1 | ||||
| 	    ;; | ||||
| 	*) | ||||
| 	    # This should be the first object file, stop parsing | ||||
| 	    break | ||||
|     esac | ||||
|     shift 1 | ||||
| done | ||||
| OBJECTS=$@ | ||||
|  | ||||
|  | ||||
| if [ ${ARCH} = "auto" ] ; then | ||||
|     ARCH=`uname` | ||||
| fi | ||||
|  | ||||
|  | ||||
| if [ $STATIC = 1 ]; then | ||||
|     # filter out linker options inside object list | ||||
|     NEWOBJECTS="" | ||||
|     for OBJ in $OBJECTS ; do | ||||
| 	case $OBJ in | ||||
| 	    -Wl,*) | ||||
| 		echo "mklib: warning: ignoring $OBJ for static library" | ||||
| 		;; | ||||
| 	    *) | ||||
| 		NEWOBJECTS="$NEWOBJECTS $OBJ" | ||||
| 		;; | ||||
| 	esac | ||||
|     done | ||||
|     OBJECTS=$NEWOBJECTS | ||||
| fi | ||||
|  | ||||
|  | ||||
| # | ||||
| # Error checking | ||||
| # | ||||
| if [ "x${LIBNAME}" = "x" ] ; then | ||||
|     echo "mklib: Error: no library name specified" | ||||
|     exit 1 | ||||
| fi | ||||
| if [ "x${OBJECTS}" = "x" ] ; then | ||||
|     echo "mklib: Error: no object files specified" | ||||
|     exit 1 | ||||
| fi | ||||
|  | ||||
|  | ||||
| # | ||||
| # Debugging info | ||||
| # | ||||
| if [  ]  ; then | ||||
|     echo "-----------------" | ||||
|     echo ARCH is $ARCH | ||||
|     echo LIBNAME is $LIBNAME | ||||
|     echo MAJOR is $MAJOR | ||||
|     echo MINOR is $MINOR | ||||
|     echo PATCH is $PATCH | ||||
|     echo DEPS are $DEPS | ||||
|     echo "EXPORTS in" $EXPORTS | ||||
|     echo ID is $ID | ||||
|     echo "-----------------" | ||||
| fi | ||||
|  | ||||
|  | ||||
| # | ||||
| # OK, make the library now | ||||
| # | ||||
| case $ARCH in | ||||
|  | ||||
|     'Linux' | 'OpenBSD' | 'DragonFly' | 'GNU' | GNU/*) | ||||
| 	# we assume gcc | ||||
|  | ||||
| 	if [ "x$LINK" = "x" ] ; then | ||||
| 	    # -linker was not specified so set default link command now | ||||
|             if [ $CPLUSPLUS = 1 ] ; then | ||||
|                 LINK=g++ | ||||
|             else | ||||
|                 LINK=gcc | ||||
|             fi | ||||
| 	fi | ||||
|  | ||||
| 	if [ $NOPREFIX = 1 ] ; then | ||||
| 	    # No "lib" or ".so" part | ||||
| 	    echo "mklib: Making" $ARCH "shared library: " ${LIBNAME} | ||||
| 	    case $ARCH in 'Linux' | 'GNU' | GNU/*) | ||||
| 		OPTS="-Xlinker -Bsymbolic -shared" | ||||
| 	    ;; | ||||
| 	    *) | ||||
| 		OPTS="-shared" | ||||
| 	    ;; | ||||
| 	    esac | ||||
|  | ||||
| 	    # Check if objects are 32-bit and we're running in 64-bit | ||||
| 	    # environment.  If so, pass -m32 flag to linker. | ||||
| 	    set ${OBJECTS} | ||||
| 	    ABI32=`file $1 | grep 32-bit` | ||||
| 	    if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then | ||||
| 		OPTS="-m32 ${OPTS}" | ||||
| 	    fi | ||||
|  | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|  | ||||
|             rm -f ${LIBNAME} | ||||
|             # make lib | ||||
|             ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS} | ||||
|             # finish up | ||||
|             FINAL_LIBS="${LIBNAME}" | ||||
|         elif [ $STATIC = 1 ] ; then | ||||
|             LIBNAME="lib${LIBNAME}.a"     # prefix with "lib", suffix with ".a" | ||||
|             echo "mklib: Making" $ARCH "static library: " ${LIBNAME} | ||||
|             LINK="ar" | ||||
|             OPTS="-ru" | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|             rm -f ${LIBNAME} | ||||
|  | ||||
| 	    # expand any .a objects into constituent .o files. | ||||
| 	    NEWOBJECTS="" | ||||
| 	    DELETIA="" | ||||
| 	    for OBJ in $OBJECTS ; do | ||||
| 		case $OBJ in | ||||
| 		    *.a) | ||||
| 			# extract the .o files from this .a archive | ||||
| 			FILES=`ar t $OBJ` | ||||
| 			ar x $OBJ | ||||
| 			NEWOBJECTS="$NEWOBJECTS $FILES" | ||||
| 			# keep track of temporary .o files and delete them below | ||||
| 			DELETIA="$DELETIA $FILES" | ||||
| 			;; | ||||
| 		    *) | ||||
| 			# ordinary .o file | ||||
| 			NEWOBJECTS="$NEWOBJECTS $OBJ" | ||||
| 			;; | ||||
| 		esac | ||||
| 	    done | ||||
|  | ||||
|             # make lib | ||||
|             ${LINK} ${OPTS} ${LIBNAME} ${NEWOBJECTS} | ||||
|             ranlib ${LIBNAME} | ||||
|  | ||||
| 	    # remove temporary extracted .o files | ||||
| 	    rm -f ${DELETIA} | ||||
|  | ||||
|             # finish up | ||||
|             FINAL_LIBS=${LIBNAME} | ||||
|         else | ||||
| 	    LIBNAME="lib${LIBNAME}"     # prefix with "lib" | ||||
| 	    case $ARCH in 'Linux' | 'GNU' | GNU/*) | ||||
| 		OPTS="-Xlinker -Bsymbolic -shared -Wl,-soname,${LIBNAME}.so.${MAJOR}" | ||||
| 	    ;; | ||||
| 	    *) | ||||
| 		OPTS="-shared -Wl,-soname,${LIBNAME}.so.${MAJOR}" | ||||
| 	    ;; | ||||
| 	    esac | ||||
| 	    if [ $EXPORTS ] ; then | ||||
| 		#OPTS="${OPTS} -Xlinker --retain-symbols-file ${EXPORTS}" | ||||
| 		# Make the 'exptmp' file for --version-script option | ||||
| 		echo "{" > exptmp | ||||
| 		echo "global:" >> exptmp | ||||
| 		sed 's/$/;/' ${EXPORTS} >> exptmp | ||||
| 		echo "local:" >> exptmp | ||||
| 		echo "*;" >> exptmp | ||||
| 		echo "};" >> exptmp | ||||
| 		OPTS="${OPTS} -Xlinker --version-script=exptmp" | ||||
| 		# exptmp is removed below | ||||
| 	    fi | ||||
|  | ||||
| 	    # Check if objects are 32-bit and we're running in 64-bit | ||||
| 	    # environment.  If so, pass -m32 flag to linker. | ||||
| 	    set ${OBJECTS} | ||||
| 	    ABI32=`file $1 | grep 32-bit` | ||||
| 	    if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then | ||||
| 		OPTS="-m32 ${OPTS}" | ||||
| 	    fi | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|  | ||||
| 	    if [ x${PATCH} = "x" ] ; then | ||||
| 		VERSION="${MAJOR}.${MINOR}" | ||||
| 	    else | ||||
| 		VERSION="${MAJOR}.${MINOR}.${PATCH}" | ||||
| 	    fi | ||||
|  | ||||
|             echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}.so.${VERSION} | ||||
|  | ||||
|             # rm any old libs | ||||
|             rm -f ${LIBNAME}.so.${VERSION} | ||||
|             rm -f ${LIBNAME}.so.${MAJOR} | ||||
|             rm -f ${LIBNAME}.so | ||||
|  | ||||
|             # make lib | ||||
|             ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS} | ||||
|             # make usual symlinks | ||||
|             ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR} | ||||
|             ln -s ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so | ||||
|             # finish up | ||||
|             FINAL_LIBS="${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so" | ||||
| #	    rm -f exptmp | ||||
|         fi | ||||
| 	;; | ||||
|  | ||||
|     'SunOS') | ||||
|         if [ $STATIC = 1 ] ; then | ||||
| 	    LIBNAME="lib${LIBNAME}.a" | ||||
| 	    echo "mklib: Making SunOS static library: " ${LIBNAME} | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ar -ruv ${LIBNAME} ${OBJECTS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	else | ||||
| 	    if [ $NOPREFIX = 0 ] ; then | ||||
| 		LIBNAME="lib${LIBNAME}.so" | ||||
| 	    fi | ||||
| 	    echo "mklib: Making SunOS shared library: " ${LIBNAME} | ||||
|  | ||||
| 	    if [ "x$LINK" = "x" ] ; then | ||||
| 		# -linker was not specified, choose default linker now | ||||
| 		if [ $CPLUSPLUS = 1 ] ; then | ||||
| 		    # determine linker and options for C++ code | ||||
| 		    if [ `which c++` ] ; then | ||||
| 			# use Sun c++ | ||||
| 			LINK="c++" | ||||
| 		    elif [ `type g++` ] ; then | ||||
| 			# use g++ | ||||
| 			LINK="g++" | ||||
| 		    else | ||||
| 			echo "mklib: warning: can't find C++ compiler, trying CC." | ||||
| 			LINK="CC" | ||||
| 		    fi | ||||
| 		else | ||||
| 		    # use native Sun linker for C code | ||||
| 		    LINK="ld" | ||||
| 		fi | ||||
| 	    fi | ||||
|  | ||||
| 	    # linker options | ||||
| 	    if [ ${LINK} = "ld" -o ${LINK} = "cc" -o ${LINK} = "CC" ] ; then | ||||
| 		# SunOS tools, -G to make shared libs | ||||
| 		OPTS="-G" | ||||
| 	    else | ||||
| 		# gcc linker | ||||
| 		# Check if objects are 32-bit and we're running in 64-bit | ||||
| 		# environment.  If so, pass -m32 flag to linker. | ||||
| 		set ${OBJECTS} | ||||
| 		ABI32=`file $1 | grep 32-bit` | ||||
| 		if [ "${ABI32}" ] ; then | ||||
| 		    OPTS="-m32 -shared -Wl,-Bdynamic" | ||||
| 		else | ||||
| 		    OPTS="-m64 -shared -Wl,-Bdynamic" | ||||
| 		fi | ||||
| 	    fi | ||||
|  | ||||
| 	    # If using Sun C++ compiler, need to tell it not to add runpaths | ||||
| 	    # that are specific to the build machine | ||||
| 	    if [ ${LINK} = "CC" ] ; then | ||||
| 		OPTS="${OPTS} -norunpath" | ||||
| 	    fi | ||||
|  | ||||
| 	    # Solaris linker requires explicitly listing the Standard C & C++ | ||||
| 	    # libraries in the link path when building shared objects | ||||
| 	    if [ ${LINK} = "CC" ] ; then | ||||
| 		DEPS="${DEPS} -lCrun" | ||||
| 	    fi | ||||
| 	    DEPS="${DEPS} -lc" | ||||
|  | ||||
| 	    if [ $EXPORTS ] ; then | ||||
| 		# Make the 'mapfile.scope' linker mapfile | ||||
| 		echo "{" > mapfile.scope | ||||
| 		echo "global:" >> mapfile.scope | ||||
| 		sed 's/$/;/' ${EXPORTS} >> mapfile.scope | ||||
| 		echo "local:" >> mapfile.scope | ||||
| 		echo "    *;" >> mapfile.scope | ||||
| 		echo "};" >> mapfile.scope | ||||
| 		OPTS="${OPTS} -Wl,-Mmapfile.scope" | ||||
| 	    fi | ||||
|  | ||||
| 	    # Check if objects are SPARC v9 | ||||
| 	    # file says: ELF 64-bit MSB relocatable SPARCV9 Version 1 | ||||
| 	    set ${OBJECTS} | ||||
| 	    if [ ${LINK} = "cc" -o ${LINK} = "CC" ] ; then | ||||
| 		SPARCV9=`file $1 | grep SPARCV9` | ||||
| 		if [ "${SPARCV9}" ] ; then | ||||
| 		    OPTS="${OPTS} -xarch=v9" | ||||
| 		fi | ||||
| 	    fi | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|  | ||||
| 	    # for debug: | ||||
| 	    #echo "mklib: linker is" ${LINK} ${OPTS} | ||||
| 	    if [ $NOPREFIX = 1 ] ; then | ||||
| 		rm -f ${LIBNAME} | ||||
| 		${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS} | ||||
| 		FINAL_LIBS="${LIBNAME}" | ||||
| 	    else | ||||
| 		rm -f ${LIBNAME}.${MAJOR} ${LIBNAME} | ||||
| 		${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.${MAJOR} -h ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS} | ||||
| 		ln -s ${LIBNAME}.${MAJOR} ${LIBNAME} | ||||
| 		FINAL_LIBS="${LIBNAME}.${MAJOR} ${LIBNAME}" | ||||
| 	    fi | ||||
| 	fi | ||||
| 	;; | ||||
|  | ||||
|     'FreeBSD') | ||||
| 	# we assume gcc | ||||
|  | ||||
| 	if [ "x$LINK" = "x" ] ; then | ||||
| 	    # -linker was not specified so set default link command now | ||||
|             if [ $CPLUSPLUS = 1 ] ; then | ||||
|                 LINK=g++ | ||||
|             else | ||||
|                 LINK=gcc | ||||
|             fi | ||||
| 	fi | ||||
|  | ||||
| 	if [ $NOPREFIX = 1 ] ; then | ||||
| 	    # No "lib" or ".so" part | ||||
| 	    echo "mklib: Making FreeBSD shared library: " ${LIBNAME} | ||||
| 	    OPTS="-shared" | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
|         elif [ $STATIC = 1 ] ; then | ||||
| 	    STLIB="lib${LIBNAME}.a" | ||||
| 	    echo "mklib: Making FreeBSD static library: " ${STLIB} | ||||
| 	    rm -f ${STLIB} | ||||
| 	    ar cq ${STLIB} ${OBJECTS} | ||||
| 	    ranlib ${STLIB} | ||||
| 	    FINAL_LIBS=${STLIB} | ||||
| 	else | ||||
| 	    SHLIB="lib${LIBNAME}.so.${MAJOR}" | ||||
| 	    OPTS="-shared -Wl,-soname,${SHLIB}" | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
| 	    echo "mklib: Making FreeBSD shared library: " ${SHLIB} | ||||
| 	    rm -f ${SHLIB} | ||||
| 	    ${LINK} ${OPTS} ${LDFLAGS} -o ${SHLIB} ${OBJECTS} ${DEPS} | ||||
| 	    ln -sf ${SHLIB} "lib${LIBNAME}.so" | ||||
| 	    FINAL_LIBS="${SHLIB} lib${LIBNAME}.so" | ||||
| 	fi | ||||
| 	;; | ||||
|  | ||||
|     'NetBSD') | ||||
|         if [ $STATIC = 1 ] ; then | ||||
| 	    LIBNAME="lib${LIBNAME}_pic.a" | ||||
| 	    echo "mklib: Making NetBSD PIC static library: " ${LIBNAME} | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ar cq ${LIBNAME} ${OBJECTS} | ||||
| 	    ranlib ${LIBNAME} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	else | ||||
| 	    LIBNAME="lib${LIBNAME}.so.${MAJOR}.${MINOR}" | ||||
| 	    echo "mklib: Making NetBSD PIC shared library: " ${LIBNAME} | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ld -x -Bshareable -Bforcearchive -o ${LIBNAME} ${OBJECTS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	fi | ||||
| 	;; | ||||
|  | ||||
|     'IRIX' | 'IRIX64') | ||||
|         if [ $STATIC = 1 ] ; then | ||||
| 	    LIBNAME="lib${LIBNAME}.a" | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ar rc ${LIBNAME} ${OBJECTS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	else | ||||
| 	    LIBNAME="lib${LIBNAME}.so"  # prefix with "lib", suffix with ".so" | ||||
|  | ||||
| 	    # examine first object to determine ABI | ||||
|     	    set ${OBJECTS} | ||||
| 	    ABI_O32=`file $1 | grep 'ELF 32-bit'` | ||||
| 	    ABI_N32=`file $1 | grep 'ELF N32'` | ||||
| 	    ABI_N64=`file $1 | grep 'ELF 64-bit'` | ||||
| 	    if [ "${ABI_O32}" ] ; then | ||||
| 		OPTS="-32 -shared -all" | ||||
| 		ABI="o32-bit" | ||||
| 	    elif [ "${ABI_N32}" ] ; then | ||||
| 		OPTS="-n32 -shared -all" | ||||
| 		ABI="n32-bit" | ||||
| 	    elif [ "${ABI_N64}" ] ; then | ||||
| 		OPTS="-64 -shared -all" | ||||
| 		ABI="64-bit" | ||||
| 	    else | ||||
| 		echo "Error: Unexpected IRIX ABI!" | ||||
| 		exit 1 | ||||
| 	    fi | ||||
|  | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|  | ||||
| 	    if [ $CPLUSPLUS = 1 ] ; then | ||||
| 		LINK="CC" | ||||
| 	    else | ||||
| 		LINK="ld" | ||||
| 	    fi | ||||
|  | ||||
| 	    echo "mklib: Making IRIX " ${ABI} " shared library: " ${LIBNAME} | ||||
| 	    ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	fi | ||||
| 	;; | ||||
|  | ||||
|     'linux-cygwin') | ||||
| 	LIBNAME="lib${LIBNAME}.a" | ||||
| 	echo "mklib: Making linux-cygwin library: " ${LIBNAME} | ||||
| 	rm -f ${LIBNAME} | ||||
| 	gnuwin32ar ruv ${LIBNAME} ${OBJECTS} | ||||
| 	FINAL_LIBS=${LIBNAME} | ||||
| 	;; | ||||
|  | ||||
|     'HP-UX') | ||||
|         if [ $STATIC = 1 ] ; then | ||||
| 	    LIBNAME="lib${LIBNAME}.a" | ||||
| 	    echo "mklib: Making HP-UX static library: " ${LIBNAME} | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ar -ruv ${LIBNAME} ${OBJECTS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	else | ||||
|             # HP uses a .2 for their current GL/GLU libraries | ||||
| 	    if [ ${LIBNAME} = "GL" -o ${LIBNAME} = "GLU" ] ; then | ||||
| 	       MAJOR=2 | ||||
| 	    fi | ||||
| 	    RUNLIB="lib${LIBNAME}.${MAJOR}" | ||||
| 	    DEVLIB="lib${LIBNAME}.sl" | ||||
| 	    echo "mklib: Making HP-UX shared library: " ${RUNLIB} ${DEVLIB} | ||||
| 	    ld -b -o ${RUNLIB} +b ${RUNLIB} ${OBJECTS} ${DEPS} | ||||
| 	    ln -s ${RUNLIB} ${DEVLIB} | ||||
| 	    FINAL_LIBS="${RUNLIB} ${DEVLIB}" | ||||
| 	fi | ||||
| 	;; | ||||
|  | ||||
|     'AIX' ) | ||||
| 	# examine first object to determine ABI | ||||
|     	set ${OBJECTS} | ||||
| 	ABI_64=`file $1 | grep '64-bit'` | ||||
| 	if [ "${ABI_64}" ] ; then | ||||
| 	    X64="-X64" | ||||
| 	    Q64="-q64" | ||||
| 	    OFILE=shr_64.o | ||||
| 	else | ||||
| 	    OFILE=shr.o  #Want to be consistent with the IBM libGL.a | ||||
| 	fi | ||||
|  | ||||
| 	if [ $STATIC = 1 ] ; then | ||||
| 	    LIBNAME="lib${LIBNAME}.a" | ||||
| 	    echo "mklib: Making AIX static library: " ${LIBNAME} | ||||
| 	    ar -ruv ${X64} ${LIBNAME} ${OBJECTS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	else | ||||
| 	    EXPFILE="lib${LIBNAME}.exp" | ||||
| 	    LIBNAME="lib${LIBNAME}.a"  # shared objects are still stored in the .a libraries | ||||
| 	    OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry ${Q64}" | ||||
| 	    rm -f ${EXPFILE} ${OFILE} | ||||
| 	    NM="/bin/nm -eC ${X64}" | ||||
| 	    echo "#! /usr/lib/${LIBNAME}" > ${EXPFILE} | ||||
| 	    ${NM} ${OBJECTS} | awk '{ | ||||
| 	    if ((($2 == "T") || ($2 == "D") || ($2 == "B")) \ | ||||
| 	    && ( substr($1,1,1) != ".")) { | ||||
| 		    if (substr ($1, 1, 7) != "__sinit" && | ||||
| 			    substr ($1, 1, 7) != "__sterm") { | ||||
| 			    if (substr ($1, 1, 5) == "__tf1") | ||||
| 				print (substr ($1, 7)) | ||||
| 			    else if (substr ($1, 1, 5) == "__tf9") | ||||
| 				print (substr ($1, 15)) | ||||
| 			    else | ||||
| 				print $1 | ||||
| 			} | ||||
| 		} | ||||
| 	    }' | sort -u >> ${EXPFILE} | ||||
|  | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|  | ||||
|             # On AIX a shared library is linked differently when | ||||
|             # you want to dlopen the file | ||||
| 	    if [ $DLOPEN = "1" ] ; then | ||||
| 		cc -G ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS} | ||||
| 	    else | ||||
| 		cc ${OPTS} ${LDFLAGS} -o ${OFILE} ${OBJECTS} ${DEPS} | ||||
| 		ar ${X64} -r ${LIBNAME} ${OFILE} | ||||
| 	    fi | ||||
|  | ||||
|             FINAL_LIBS="${LIBNAME}" | ||||
|         fi | ||||
|         ;; | ||||
|  | ||||
|     'OpenSTEP') | ||||
| 	LIBNAME="lib${LIBNAME}.a" | ||||
| 	echo "mklib: Making OpenSTEP static library: " ${LIBNAME} | ||||
| 	libtool -static -o ${LIBNAME} - ${OBJECTS} | ||||
| 	FINAL_LIBS=${LIBNAME} | ||||
| 	;; | ||||
|  | ||||
|     'OSF1') | ||||
|         if [ $STATIC = 1 ] ; then | ||||
| 	    LIBNAME="lib${LIBNAME}.a" | ||||
| 	    echo "mklib: Making OSF/1 static library: " ${LIBNAME} | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ar -ruv ${LIBNAME} ${OBJECTS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	else | ||||
| 	    VERSION="${MAJOR}.${MINOR}" | ||||
| 	    LIBNAME="lib${LIBNAME}.so" | ||||
| 	    echo "mklib: Making OSF/1 shared library: " ${LIBNAME} | ||||
| 	    if [ "x$LINK" = "x" ] ; then | ||||
| 		if [ $CPLUSPLUS = 1 ] ; then | ||||
| 		    LINK=cxx | ||||
| 		else | ||||
| 		    LINK=cc | ||||
| 		fi | ||||
| 	    fi | ||||
| 	    rm -f ${LIBNAME}.${VERSION} | ||||
| 	    ${LINK} -o ${LIBNAME}.${VERSION} -shared -set_version ${VERSION} -soname ${LIBNAME}.${VERSION} -expect_unresolved \* -all ${OBJECTS} ${DEPS} | ||||
| 	    ln -sf ${LIBNAME}.${VERSION} ${LIBNAME} | ||||
| 	    FINAL_LIBS="${LIBNAME} ${LIBNAME}.${VERSION}" | ||||
| 	fi | ||||
| 	;; | ||||
|  | ||||
|     'Darwin') | ||||
|         if [ $STATIC = 1 ] ; then | ||||
|             LIBNAME="lib${LIBNAME}.a" | ||||
|             echo "mklib: Making Darwin static library: " ${LIBNAME} | ||||
|             LINK="ar" | ||||
|             OPTS="-ruvs" | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|             ${LINK} ${OPTS} ${LIBNAME} ${OBJECTS} | ||||
|             FINAL_LIBS=${LIBNAME} | ||||
|         else | ||||
|             # On Darwin a .bundle is used for a library that you want to dlopen | ||||
|             if [ $DLOPEN = "1" ] ; then | ||||
|                 LIBSUFFIX="bundle" | ||||
|                 OPTS="${ARCHOPT} -bundle -multiply_defined suppress" | ||||
|             else | ||||
|                 LIBSUFFIX="dylib" | ||||
|                 if [ -z "$ID" ] ; then | ||||
|                     ID="lib${LIBNAME}.${MAJOR}.${LIBSUFFIX}" | ||||
|                 fi | ||||
|                 OPTS="${ARCHOPT} -dynamiclib -multiply_defined suppress -current_version ${MAJOR}.${MINOR}.0 -compatibility_version ${MAJOR}.${MINOR}.0 -install_name ${ID}" | ||||
|             fi | ||||
|  | ||||
|             if [ ${EXPORTS} ] ; then | ||||
|                 if [ -f ${EXPORTS}".darwin" ] ; then | ||||
|                     EXPORTS=$EXPORTS".darwin" | ||||
|                 fi | ||||
|                 OPTS="${OPTS} -exported_symbols_list ${EXPORTS}" | ||||
|             fi | ||||
|  | ||||
|             LINKNAME="lib${LIBNAME}.${MAJOR}.${LIBSUFFIX}" | ||||
|             LINKNAME2="lib${LIBNAME}.${LIBSUFFIX}" | ||||
|             LIBNAME="lib${LIBNAME}.${MAJOR}.${MINOR}.${LIBSUFFIX}" | ||||
|  | ||||
| 	    # examine first object to determine ABI | ||||
|     	    set ${OBJECTS} | ||||
|             ABIS=`lipo -info $1 | sed s/.*://` | ||||
|             for ABI in $ABIS; do | ||||
|                 OPTS="${OPTS} -arch ${ABI}" | ||||
|             done | ||||
|  | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|  | ||||
| 	    # XXX can we always add -isysroot /Developer/SDKs/MacOSX10.4u.sdk | ||||
| 	    # to OPTS here? | ||||
|  | ||||
| 	    # determine linker | ||||
| 	    if [ $CPLUSPLUS = 1 ] ; then | ||||
| 		LINK="g++" | ||||
| 	    else | ||||
| 		LINK="cc" | ||||
| 	    fi | ||||
|  | ||||
|             echo "mklib: Making Darwin shared library: " ${LIBNAME} | ||||
|  | ||||
|             ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS} | ||||
|             ln -s ${LIBNAME} ${LINKNAME} | ||||
|             ln -s ${LIBNAME} ${LINKNAME2} | ||||
|             FINAL_LIBS="${LIBNAME} ${LINKNAME} ${LINKNAME2}" | ||||
|         fi | ||||
|         ;; | ||||
|  | ||||
|     'LynxOS') | ||||
| 	LIBNAME="lib${LIBNAME}.a" | ||||
| 	echo "mklib: Making LynxOS static library: " ${LIBNAME} | ||||
| 	rm -f ${LIBNAME} | ||||
| 	ar ru ${LIBNAME} ${OBJECTS} | ||||
| 	FINAL_LIBS=${LIBNAME} | ||||
| 	;; | ||||
|  | ||||
|     'BeOS') | ||||
|         if [ $STATIC = 1 ] ; then | ||||
|             LIBNAME="lib${LIBNAME}.a" | ||||
|             echo "mklib: Making BeOS static library: " ${LIBNAME} | ||||
|             ar -cru "${LIBNAME}" ${OBJECTS} | ||||
|         else | ||||
| 	    LIBNAME="lib${LIBNAME}.so" | ||||
| 	    echo "mklib: Making BeOS shared library: " ${LIBNAME} | ||||
| 	    gcc -nostart -Xlinker "-soname=${LIBNAME}" -L/Be/develop/lib/x86 -lbe ${DEPS} ${OBJECTS} -o "${LIBNAME}" | ||||
| 	    mimeset -f "${LIBNAME}" | ||||
| 	    # XXX remove the Mesa3D stuff here since mklib isn't mesa-specific. | ||||
| 	    setversion "${LIBNAME}" -app ${MAJOR} ${MINOR} ${PATCH} -short "Powered by Mesa3D!" -long "Powered by Mesa3D!" | ||||
| 	fi | ||||
| 	FINAL_LIBS=${LIBNAME} | ||||
| 	;; | ||||
|  | ||||
|     'QNX') | ||||
| 	LIBNAME="lib${LIBNAME}.a" | ||||
| 	echo "mklib: Making QNX library: " ${LIBNAME} | ||||
| 	wlib ${LIBNAME} ${OBJECTS} | ||||
| 	FINAL_LIBS=${LIBNAME} | ||||
| 	;; | ||||
|  | ||||
|     'MorphOS') | ||||
| 	LIBNAME="lib${LIBNAME}.a" | ||||
| 	echo "mklib: Making MorphOS library: " ${LIBNAME} | ||||
| 	ppc-morphos-ar rc ${LIBNAME} ${OBJECTS} | ||||
| 	FINAL_LIBS="${LIBNAME}" | ||||
| 	;; | ||||
|  | ||||
|     'icc' | 'icc-istatic') | ||||
| 	# Intel C compiler | ||||
| 	# This should get merged into the Linux code, above, since this isn't | ||||
| 	# really a different architecture. | ||||
| 	LIBNAME="lib${LIBNAME}"     # prefix with "lib" | ||||
|  | ||||
|         if [ $STATIC = 1 ] ; then | ||||
|             echo "mklib: Making Intel ICC static library: " ${LIBNAME}.a | ||||
|             LINK="ar" | ||||
|             OPTS="-ruv" | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|             # make lib | ||||
|             ${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS} | ||||
|             # finish up | ||||
|             FINAL_LIBS="${LIBNAME}.a" | ||||
|         else | ||||
|             if [ $ARCH = icc-istatic ] ; then | ||||
|                  OPTS="-shared -i-static -cxxlib-icc" | ||||
|             else | ||||
|                  OPTS="-shared" | ||||
|             fi | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|             VERSION="${MAJOR}.${MINOR}.${PATCH}" | ||||
|             echo "mklib: Making Intel ICC shared library: " ${LIBNAME}.so.${VERSION} | ||||
|  | ||||
|             if [ $CPLUSPLUS = 1 ] ; then | ||||
|                 LINK="icpc" | ||||
|             else | ||||
|                 LINK="icc" | ||||
|             fi | ||||
|             # rm any old libs | ||||
|             rm -f ${LIBNAME}.so.${VERSION} | ||||
|             rm -f ${LIBNAME}.so.${MAJOR} | ||||
|             rm -f ${LIBNAME}.so | ||||
|             # make lib | ||||
|             ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS} | ||||
|             # make usual symlinks | ||||
|             ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR} | ||||
|             ln -s ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so | ||||
|             # finish up | ||||
|             FINAL_LIBS="${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so" | ||||
|         fi | ||||
| 	;; | ||||
|  | ||||
|     'aix-gcc') | ||||
| 	# AIX with gcc | ||||
|         if [ $STATIC = 1 ] ; then | ||||
| 	    LIBNAME="lib${LIBNAME}.a" | ||||
| 	    echo "mklib: Making AIX GCC static library: " ${LIBNAME} | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ar ru ${LIBNAME} ${OBJECTS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	else | ||||
| 	    LIBNAME="lib${LIBNAME}.so"  # prefix with "lib", suffix with ".so" | ||||
| 	    echo "mklib: Making AIX GCC shared library: " ${LIBNAME} | ||||
| 	    # remove old lib | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    # make the lib | ||||
| 	    gcc -shared -Wl,-G ${OBJECTS} ${DEPS} -o ${LIBNAME} | ||||
| 	    # NOTE: the application linking with this library must specify | ||||
| 	    # the -Wl,-brtl flags to gcc | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
| 	fi | ||||
| 	;; | ||||
|  | ||||
|     'ultrix') | ||||
| 	# XXX untested | ||||
|         if [ $STATIC = 0 ] ; then | ||||
| 	    echo "mklib: Warning shared libs not supported on Ultrix" | ||||
| 	fi | ||||
| 	LIBNAME="lib${LIBNAME}.a" | ||||
| 	echo "mklib: Making static library for Ultrix: " ${LIBNAME} | ||||
| 	rm -f ${LIBNAME} | ||||
| 	ar ru ${LIBNAME} ${OBJECTS} | ||||
| 	FINAL_LIBS="${LIBNAME}" | ||||
| 	;; | ||||
|  | ||||
|      CYGWIN*) | ||||
| 	# GCC-based environment | ||||
| 	if [ $NOPREFIX = 1 ] ; then | ||||
| 	    # No "lib" or ".so" part | ||||
| 	    echo "mklib: Making CYGWIN shared library: " ${LIBNAME} | ||||
| 	    OPTS="-shared -Wl,--enable-auto-image-base" | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS} | ||||
| 	    FINAL_LIBS=${LIBNAME} | ||||
|         else | ||||
| 	CYGNAME="cyg${LIBNAME}"     # prefix with "cyg" | ||||
| 	LIBNAME="lib${LIBNAME}"     # prefix with "lib" | ||||
|  | ||||
|         if [ $STATIC = 1 ] ; then | ||||
|             echo "mklib: Making" $ARCH "static library: " ${LIBNAME}.a | ||||
|             LINK="ar" | ||||
|             OPTS="-ru" | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|             # make lib | ||||
|             ${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS} | ||||
| 	    ranlib ${LIBNAME}.a | ||||
|             # finish up | ||||
|             FINAL_LIBS=${LIBNAME}.a | ||||
|         else | ||||
| 	    OPTS="-shared -Wl,--enable-auto-image-base -Wl,-export-all -Wl,--out-implib=${LIBNAME}-${MAJOR}.dll.a" | ||||
|             if [ "${ALTOPTS}" ] ; then | ||||
|                 OPTS=${ALTOPTS} | ||||
|             fi | ||||
|             echo "mklib: Making" $ARCH "shared library: " ${CYGNAME}-${MAJOR}.dll | ||||
|  | ||||
|             if [ $CPLUSPLUS = 1 ] ; then | ||||
|                 LINK="g++" | ||||
|             else | ||||
|                 LINK="gcc" | ||||
|             fi | ||||
|  | ||||
|             # rm any old libs | ||||
|             rm -f ${CYGNAME}-${MAJOR}.dll | ||||
|             rm -f ${LIBNAME}-${MAJOR}.dll.a | ||||
|             rm -f ${LIBNAME}.dll.a | ||||
|             rm -f ${LIBNAME}.a | ||||
|  | ||||
|             # make lib | ||||
|             ${LINK} ${OPTS} ${LDFLAGS} -o ${CYGNAME}-${MAJOR}.dll ${OBJECTS} ${DEPS} | ||||
|             # make build fail if link failed | ||||
|             es=$? | ||||
|             if [ "$es" -ne "0" ]; then | ||||
|                 exit $es | ||||
|             fi | ||||
|             # make usual symlinks | ||||
|             ln -s ${LIBNAME}-${MAJOR}.dll.a ${LIBNAME}.dll.a | ||||
|             # finish up | ||||
|             FINAL_LIBS="${LIBNAME}-${MAJOR}.dll.a ${LIBNAME}.dll.a" | ||||
| 	    # special case for installing in bin | ||||
|             FINAL_BINS="${CYGNAME}-${MAJOR}.dll" | ||||
|         fi | ||||
|         fi | ||||
| 	;; | ||||
|  | ||||
|     'example') | ||||
| 	# If you're adding support for a new architecture, you can | ||||
| 	# start with this: | ||||
|         if [ $STATIC = 1 ] ; then | ||||
| 	    LIBNAME="lib${LIBNAME}.a" | ||||
| 	    echo "mklib: Making static library for example arch: " ${LIBNAME} | ||||
| 	    rm -f ${LIBNAME} | ||||
| 	    ar rv ${LIBNAME} ${OBJECTS} | ||||
| 	    FINAL_LIBS="${LIBNAME}" | ||||
| 	else | ||||
| 	    LIBNAME="lib${LIBNAME}.so"  # prefix with "lib", suffix with ".so" | ||||
| 	    echo "mklib: Making shared library for example arch: " ${LIBNAME} | ||||
| 	    ld -o ${LIBNAME} ${OBJECTS} ${DEPS} | ||||
| 	    FINAL_LIBS="${LIBNAME}" | ||||
| 	fi | ||||
| 	;; | ||||
|  | ||||
|     *) | ||||
| 	echo "mklib: ERROR: Don't know how to make a static/shared library for" ${ARCH} | ||||
| 	echo "mklib: Please add necessary commands to mklib script." | ||||
| 	;; | ||||
| esac | ||||
|  | ||||
|  | ||||
| # | ||||
| # Put library files into installation directory if specified. | ||||
| # | ||||
| if [ ${INSTALLDIR} != "." ] ; then | ||||
|     echo "mklib: Installing" ${FINAL_LIBS} "in" ${INSTALLDIR} | ||||
|     test -d ${INSTALLDIR} || mkdir -p ${INSTALLDIR} | ||||
|     mv ${FINAL_LIBS} ${INSTALLDIR}/ | ||||
| fi | ||||
| @@ -1,251 +0,0 @@ | ||||
| #!/usr/bin/env python | ||||
| # | ||||
| # Copyright 2012 VMware Inc | ||||
| # Copyright 2008-2009 Jose Fonseca | ||||
| # | ||||
| # 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 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. | ||||
| # | ||||
|  | ||||
| """Perf annotate for JIT code. | ||||
|  | ||||
| Linux `perf annotate` does not work with JIT code.  This script takes the data | ||||
| produced by `perf script` command, plus the diassemblies outputed by gallivm | ||||
| into /tmp/perf-XXXXX.map.asm and produces output similar to `perf annotate`. | ||||
|  | ||||
| See docs/llvmpipe.html for usage instructions. | ||||
|  | ||||
| The `perf script` output parser was derived from the gprof2dot.py script. | ||||
| """ | ||||
|  | ||||
|  | ||||
| import sys | ||||
| import os.path | ||||
| import re | ||||
| import optparse | ||||
| import subprocess | ||||
|  | ||||
|  | ||||
| class Parser: | ||||
|     """Parser interface.""" | ||||
|  | ||||
|     def __init__(self): | ||||
|         pass | ||||
|  | ||||
|     def parse(self): | ||||
|         raise NotImplementedError | ||||
|  | ||||
|  | ||||
| class LineParser(Parser): | ||||
|     """Base class for parsers that read line-based formats.""" | ||||
|  | ||||
|     def __init__(self, file): | ||||
|         Parser.__init__(self) | ||||
|         self._file = file | ||||
|         self.__line = None | ||||
|         self.__eof = False | ||||
|         self.line_no = 0 | ||||
|  | ||||
|     def readline(self): | ||||
|         line = self._file.readline() | ||||
|         if not line: | ||||
|             self.__line = '' | ||||
|             self.__eof = True | ||||
|         else: | ||||
|             self.line_no += 1 | ||||
|         self.__line = line.rstrip('\r\n') | ||||
|  | ||||
|     def lookahead(self): | ||||
|         assert self.__line is not None | ||||
|         return self.__line | ||||
|  | ||||
|     def consume(self): | ||||
|         assert self.__line is not None | ||||
|         line = self.__line | ||||
|         self.readline() | ||||
|         return line | ||||
|  | ||||
|     def eof(self): | ||||
|         assert self.__line is not None | ||||
|         return self.__eof | ||||
|  | ||||
|  | ||||
| mapFile = None | ||||
|  | ||||
| def lookupMap(filename, matchSymbol): | ||||
|     global mapFile | ||||
|     mapFile = filename | ||||
|     stream = open(filename, 'rt') | ||||
|     for line in stream: | ||||
|         start, length, symbol = line.split() | ||||
|  | ||||
|         start = int(start, 16) | ||||
|         length = int(length,16) | ||||
|  | ||||
|         if symbol == matchSymbol: | ||||
|             return start | ||||
|  | ||||
|     return None | ||||
|  | ||||
| def lookupAsm(filename, desiredFunction): | ||||
|     stream = open(filename + '.asm', 'rt') | ||||
|     while stream.readline() != desiredFunction + ':\n': | ||||
|         pass | ||||
|  | ||||
|     asm = [] | ||||
|     line = stream.readline().strip() | ||||
|     while line: | ||||
|         addr, instr = line.split(':', 1) | ||||
|         addr = int(addr) | ||||
|         asm.append((addr, instr)) | ||||
|         line = stream.readline().strip() | ||||
|  | ||||
|     return asm | ||||
|  | ||||
|  | ||||
|  | ||||
| samples = {} | ||||
|  | ||||
|  | ||||
| class PerfParser(LineParser): | ||||
|     """Parser for linux perf callgraph output. | ||||
|  | ||||
|     It expects output generated with | ||||
|  | ||||
|         perf record -g | ||||
|         perf script | ||||
|     """ | ||||
|  | ||||
|     def __init__(self, infile, symbol): | ||||
|         LineParser.__init__(self, infile) | ||||
|         self.symbol = symbol | ||||
|  | ||||
|     def readline(self): | ||||
|         # Override LineParser.readline to ignore comment lines | ||||
|         while True: | ||||
|             LineParser.readline(self) | ||||
|             if self.eof() or not self.lookahead().startswith('#'): | ||||
|                 break | ||||
|  | ||||
|     def parse(self): | ||||
|         # read lookahead | ||||
|         self.readline() | ||||
|  | ||||
|         while not self.eof(): | ||||
|             self.parse_event() | ||||
|  | ||||
|         asm = lookupAsm(mapFile, self.symbol) | ||||
|  | ||||
|         addresses = samples.keys() | ||||
|         addresses.sort() | ||||
|         total_samples = 0 | ||||
|  | ||||
|         sys.stdout.write('%s:\n' % self.symbol) | ||||
|         for address, instr in asm: | ||||
|             try: | ||||
|                 sample = samples.pop(address) | ||||
|             except KeyError: | ||||
|                 sys.stdout.write(6*' ') | ||||
|             else: | ||||
|                 sys.stdout.write('%6u' % (sample)) | ||||
|                 total_samples += sample | ||||
|             sys.stdout.write('%6u: %s\n' % (address, instr)) | ||||
|         print 'total:', total_samples | ||||
|         assert len(samples) == 0 | ||||
|  | ||||
|         sys.exit(0) | ||||
|  | ||||
|     def parse_event(self): | ||||
|         if self.eof(): | ||||
|             return | ||||
|  | ||||
|         line = self.consume() | ||||
|         assert line | ||||
|  | ||||
|         callchain = self.parse_callchain() | ||||
|         if not callchain: | ||||
|             return | ||||
|  | ||||
|     def parse_callchain(self): | ||||
|         callchain = [] | ||||
|         while self.lookahead(): | ||||
|             function = self.parse_call(len(callchain) == 0) | ||||
|             if function is None: | ||||
|                 break | ||||
|             callchain.append(function) | ||||
|         if self.lookahead() == '': | ||||
|             self.consume() | ||||
|         return callchain | ||||
|  | ||||
|     call_re = re.compile(r'^\s+(?P<address>[0-9a-fA-F]+)\s+(?P<symbol>.*)\s+\((?P<module>[^)]*)\)$') | ||||
|  | ||||
|     def parse_call(self, first): | ||||
|         line = self.consume() | ||||
|         mo = self.call_re.match(line) | ||||
|         assert mo | ||||
|         if not mo: | ||||
|             return None | ||||
|  | ||||
|         if not first: | ||||
|             return None | ||||
|  | ||||
|         function_name = mo.group('symbol') | ||||
|         if not function_name: | ||||
|             function_name = mo.group('address') | ||||
|  | ||||
|         module = mo.group('module') | ||||
|  | ||||
|         function_id = function_name + ':' + module | ||||
|  | ||||
|         address = mo.group('address') | ||||
|         address = int(address, 16) | ||||
|  | ||||
|         if function_name != self.symbol: | ||||
|             return None | ||||
|  | ||||
|         start_address = lookupMap(module, function_name) | ||||
|         address -= start_address | ||||
|  | ||||
|         #print function_name, module, address | ||||
|  | ||||
|         samples[address] = samples.get(address, 0) + 1 | ||||
|  | ||||
|         return True | ||||
|  | ||||
|  | ||||
| def main(): | ||||
|     """Main program.""" | ||||
|  | ||||
|     optparser = optparse.OptionParser( | ||||
|         usage="\n\t%prog [options] symbol_name") | ||||
|     (options, args) = optparser.parse_args(sys.argv[1:]) | ||||
|     if len(args) != 1: | ||||
|         optparser.error('wrong number of arguments') | ||||
|  | ||||
|     symbol = args[0] | ||||
|  | ||||
|     p = subprocess.Popen(['perf', 'script'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) | ||||
|     parser = PerfParser(p.stdout, symbol) | ||||
|     parser.parse() | ||||
|  | ||||
|  | ||||
| if __name__ == '__main__': | ||||
|     main() | ||||
|  | ||||
|  | ||||
| # vim: set sw=4 et: | ||||
							
								
								
									
										366
									
								
								bin/raw2png.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										366
									
								
								bin/raw2png.py
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,366 @@ | ||||
| #!/usr/bin/env python | ||||
| ########################################################################## | ||||
| #  | ||||
| # Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. | ||||
| # All Rights Reserved. | ||||
| #  | ||||
| # 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, sub license, 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 NON-INFRINGEMENT. | ||||
| # IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS 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. | ||||
| #  | ||||
| ########################################################################## | ||||
|  | ||||
|  | ||||
| import os.path | ||||
| import sys | ||||
| import struct | ||||
| import Image # http://www.pythonware.com/products/pil/ | ||||
|  | ||||
| PIPE_FORMAT_LAYOUT_RGBAZS   = 0 | ||||
| PIPE_FORMAT_LAYOUT_YCBCR    = 1 | ||||
| PIPE_FORMAT_LAYOUT_DXT      = 2 | ||||
| PIPE_FORMAT_LAYOUT_MIXED    = 3 | ||||
|  | ||||
| PIPE_FORMAT_COMP_R    = 0 | ||||
| PIPE_FORMAT_COMP_G    = 1 | ||||
| PIPE_FORMAT_COMP_B    = 2 | ||||
| PIPE_FORMAT_COMP_A    = 3 | ||||
| PIPE_FORMAT_COMP_0    = 4 | ||||
| PIPE_FORMAT_COMP_1    = 5 | ||||
| PIPE_FORMAT_COMP_Z    = 6 | ||||
| PIPE_FORMAT_COMP_S    = 7 | ||||
|  | ||||
| PIPE_FORMAT_TYPE_UNKNOWN = 0 | ||||
| PIPE_FORMAT_TYPE_FLOAT   = 1 | ||||
| PIPE_FORMAT_TYPE_UNORM   = 2 | ||||
| PIPE_FORMAT_TYPE_SNORM   = 3 | ||||
| PIPE_FORMAT_TYPE_USCALED = 4 | ||||
| PIPE_FORMAT_TYPE_SSCALED = 5 | ||||
| PIPE_FORMAT_TYPE_SRGB    = 6 | ||||
| PIPE_FORMAT_TYPE_FIXED   = 7 | ||||
|  | ||||
| def _PIPE_FORMAT_RGBAZS( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, EXP2, TYPE ): | ||||
|    return ((PIPE_FORMAT_LAYOUT_RGBAZS << 0) |\ | ||||
|    ((SWZ) << 2) |\ | ||||
|    ((SIZEX) << 14) |\ | ||||
|    ((SIZEY) << 17) |\ | ||||
|    ((SIZEZ) << 20) |\ | ||||
|    ((SIZEW) << 23) |\ | ||||
|    ((EXP2) << 26) |\ | ||||
|    ((TYPE) << 29) ) | ||||
|  | ||||
| def _PIPE_FORMAT_SWZ( SWZX, SWZY, SWZZ, SWZW ): | ||||
| 	return (((SWZX) << 0) | ((SWZY) << 3) | ((SWZZ) << 6) | ((SWZW) << 9)) | ||||
|  | ||||
| def _PIPE_FORMAT_RGBAZS_1( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, TYPE ): | ||||
| 	return _PIPE_FORMAT_RGBAZS( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, 0, TYPE ) | ||||
|  | ||||
| def _PIPE_FORMAT_RGBAZS_2( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, TYPE ): | ||||
|     _PIPE_FORMAT_RGBAZS( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, 1, TYPE ) | ||||
|  | ||||
| def _PIPE_FORMAT_RGBAZS_8( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, TYPE ): | ||||
| 	return _PIPE_FORMAT_RGBAZS( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, 3, TYPE ) | ||||
|  | ||||
| def _PIPE_FORMAT_RGBAZS_64( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, TYPE ): | ||||
| 	return _PIPE_FORMAT_RGBAZS( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, 6, TYPE ) | ||||
|  | ||||
| def _PIPE_FORMAT_MIXED( SWZ, SIZEX, SIZEY, SIZEZ, SIZEW, SIGNX, SIGNY, SIGNZ, SIGNW, NORMALIZED, SCALE8 ): | ||||
|     return ((PIPE_FORMAT_LAYOUT_MIXED << 0) |\ | ||||
|     ((SWZ) << 2) |\ | ||||
|     ((SIZEX) << 14) |\ | ||||
|     ((SIZEY) << 17) |\ | ||||
|     ((SIZEZ) << 20) |\ | ||||
|     ((SIZEW) << 23) |\ | ||||
|     ((SIGNX) << 26) |\ | ||||
|     ((SIGNY) << 27) |\ | ||||
|     ((SIGNZ) << 28) |\ | ||||
|     ((SIGNW) << 29) |\ | ||||
|     ((NORMALIZED) << 30) |\ | ||||
|     ((SCALE8) << 31) ) | ||||
|  | ||||
|  | ||||
| _PIPE_FORMAT_R001 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_1 ) | ||||
| _PIPE_FORMAT_RG01 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_G, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_1 ) | ||||
| _PIPE_FORMAT_RGB1 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_G, PIPE_FORMAT_COMP_B, PIPE_FORMAT_COMP_1 ) | ||||
| _PIPE_FORMAT_RGBA = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_G, PIPE_FORMAT_COMP_B, PIPE_FORMAT_COMP_A ) | ||||
| _PIPE_FORMAT_ARGB = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_A, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_G, PIPE_FORMAT_COMP_B ) | ||||
| _PIPE_FORMAT_ABGR = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_A, PIPE_FORMAT_COMP_B, PIPE_FORMAT_COMP_G, PIPE_FORMAT_COMP_R ) | ||||
| _PIPE_FORMAT_BGRA = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_B, PIPE_FORMAT_COMP_G, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_A ) | ||||
| _PIPE_FORMAT_1RGB = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_1, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_G, PIPE_FORMAT_COMP_B ) | ||||
| _PIPE_FORMAT_1BGR = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_1, PIPE_FORMAT_COMP_B, PIPE_FORMAT_COMP_G, PIPE_FORMAT_COMP_R ) | ||||
| _PIPE_FORMAT_BGR1 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_B, PIPE_FORMAT_COMP_G, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_1 ) | ||||
| _PIPE_FORMAT_0000 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0 ) | ||||
| _PIPE_FORMAT_000R = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_R ) | ||||
| _PIPE_FORMAT_RRR1 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_1 ) | ||||
| _PIPE_FORMAT_RRRR = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_R ) | ||||
| _PIPE_FORMAT_RRRG = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_R, PIPE_FORMAT_COMP_G ) | ||||
| _PIPE_FORMAT_Z000 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_Z, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0 ) | ||||
| _PIPE_FORMAT_0Z00 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_Z, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0 ) | ||||
| _PIPE_FORMAT_SZ00 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_S, PIPE_FORMAT_COMP_Z, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0 ) | ||||
| _PIPE_FORMAT_ZS00 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_Z, PIPE_FORMAT_COMP_S, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0 ) | ||||
| _PIPE_FORMAT_S000 = _PIPE_FORMAT_SWZ( PIPE_FORMAT_COMP_S, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0, PIPE_FORMAT_COMP_0 ) | ||||
|  | ||||
| def _PIPE_FORMAT_YCBCR( REV ): | ||||
|    return ((PIPE_FORMAT_LAYOUT_YCBCR << 0) |\ | ||||
|    ((REV) << 2) ) | ||||
|  | ||||
| def _PIPE_FORMAT_DXT( LEVEL, RSIZE, GSIZE, BSIZE, ASIZE ): | ||||
|     return ((PIPE_FORMAT_LAYOUT_DXT << 0) | \ | ||||
|     ((LEVEL) << 2) | \ | ||||
|     ((RSIZE) << 5) | \ | ||||
|     ((GSIZE) << 8) | \ | ||||
|     ((BSIZE) << 11) | \ | ||||
|     ((ASIZE) << 14) ) | ||||
|  | ||||
| PIPE_FORMAT_NONE                  = _PIPE_FORMAT_RGBAZS_1 ( _PIPE_FORMAT_0000, 0, 0, 0, 0, PIPE_FORMAT_TYPE_UNKNOWN ) | ||||
| PIPE_FORMAT_A8R8G8B8_UNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_ARGB, 1, 1, 1, 1, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_X8R8G8B8_UNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_1RGB, 1, 1, 1, 1, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_B8G8R8A8_UNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_BGRA, 1, 1, 1, 1, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_B8G8R8X8_UNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_BGR1, 1, 1, 1, 1, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_A1R5G5B5_UNORM        = _PIPE_FORMAT_RGBAZS_1 ( _PIPE_FORMAT_ARGB, 1, 5, 5, 5, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_A4R4G4B4_UNORM        = _PIPE_FORMAT_RGBAZS_1 ( _PIPE_FORMAT_ARGB, 4, 4, 4, 4, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R5G6B5_UNORM          = _PIPE_FORMAT_RGBAZS_1 ( _PIPE_FORMAT_RGB1, 5, 6, 5, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_A2B10G10R10_UNORM     = _PIPE_FORMAT_RGBAZS_2 ( _PIPE_FORMAT_ABGR, 1, 5, 5, 5, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_L8_UNORM              = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RRR1, 1, 1, 1, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_A8_UNORM              = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_000R, 0, 0, 0, 1, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_I8_UNORM              = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RRRR, 1, 1, 1, 1, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_A8L8_UNORM            = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RRRG, 1, 1, 1, 1, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_L16_UNORM             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RRR1, 2, 2, 2, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_YCBCR                 = _PIPE_FORMAT_YCBCR( 0 ) | ||||
| PIPE_FORMAT_YCBCR_REV             = _PIPE_FORMAT_YCBCR( 1 ) | ||||
| PIPE_FORMAT_Z16_UNORM             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_Z000, 2, 0, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_Z32_UNORM             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_Z000, 4, 0, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_Z32_FLOAT             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_Z000, 4, 0, 0, 0, PIPE_FORMAT_TYPE_FLOAT ) | ||||
| PIPE_FORMAT_S8Z24_UNORM           = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_SZ00, 1, 3, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_Z24S8_UNORM           = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_ZS00, 3, 1, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_X8Z24_UNORM           = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_0Z00, 1, 3, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_Z24X8_UNORM           = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_Z000, 3, 1, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_S8_UNORM              = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_S000, 1, 0, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R64_FLOAT             = _PIPE_FORMAT_RGBAZS_64( _PIPE_FORMAT_R001, 1, 0, 0, 0, PIPE_FORMAT_TYPE_FLOAT ) | ||||
| PIPE_FORMAT_R64G64_FLOAT          = _PIPE_FORMAT_RGBAZS_64( _PIPE_FORMAT_RG01, 1, 1, 0, 0, PIPE_FORMAT_TYPE_FLOAT ) | ||||
| PIPE_FORMAT_R64G64B64_FLOAT       = _PIPE_FORMAT_RGBAZS_64( _PIPE_FORMAT_RGB1, 1, 1, 1, 0, PIPE_FORMAT_TYPE_FLOAT ) | ||||
| PIPE_FORMAT_R64G64B64A64_FLOAT    = _PIPE_FORMAT_RGBAZS_64( _PIPE_FORMAT_RGBA, 1, 1, 1, 1, PIPE_FORMAT_TYPE_FLOAT ) | ||||
| PIPE_FORMAT_R32_FLOAT             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 4, 0, 0, 0, PIPE_FORMAT_TYPE_FLOAT ) | ||||
| PIPE_FORMAT_R32G32_FLOAT          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 4, 4, 0, 0, PIPE_FORMAT_TYPE_FLOAT ) | ||||
| PIPE_FORMAT_R32G32B32_FLOAT       = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 4, 4, 4, 0, PIPE_FORMAT_TYPE_FLOAT ) | ||||
| PIPE_FORMAT_R32G32B32A32_FLOAT    = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 4, 4, 4, 4, PIPE_FORMAT_TYPE_FLOAT ) | ||||
| PIPE_FORMAT_R32_UNORM             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 4, 0, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R32G32_UNORM          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 4, 4, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R32G32B32_UNORM       = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 4, 4, 4, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R32G32B32A32_UNORM    = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 4, 4, 4, 4, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R32_USCALED           = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 4, 0, 0, 0, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R32G32_USCALED        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 4, 4, 0, 0, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R32G32B32_USCALED     = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 4, 4, 4, 0, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R32G32B32A32_USCALED  = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 4, 4, 4, 4, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R32_SNORM             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 4, 0, 0, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R32G32_SNORM          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 4, 4, 0, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R32G32B32_SNORM       = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 4, 4, 4, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R32G32B32A32_SNORM    = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 4, 4, 4, 4, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R32_SSCALED           = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 4, 0, 0, 0, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R32G32_SSCALED        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 4, 4, 0, 0, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R32G32B32_SSCALED     = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 4, 4, 4, 0, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R32G32B32A32_SSCALED  = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 4, 4, 4, 4, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R16_UNORM             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 2, 0, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R16G16_UNORM          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 2, 2, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R16G16B16_UNORM       = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 2, 2, 2, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R16G16B16A16_UNORM    = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 2, 2, 2, 2, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R16_USCALED           = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 2, 0, 0, 0, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R16G16_USCALED        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 2, 2, 0, 0, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R16G16B16_USCALED     = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 2, 2, 2, 0, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R16G16B16A16_USCALED  = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 2, 2, 2, 2, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R16_SNORM             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 2, 0, 0, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R16G16_SNORM          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 2, 2, 0, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R16G16B16_SNORM       = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 2, 2, 2, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R16G16B16A16_SNORM    = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 2, 2, 2, 2, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R16_SSCALED           = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 2, 0, 0, 0, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R16G16_SSCALED        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 2, 2, 0, 0, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R16G16B16_SSCALED     = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 2, 2, 2, 0, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R16G16B16A16_SSCALED  = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 2, 2, 2, 2, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R8_UNORM              = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 1, 0, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R8G8_UNORM            = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 1, 1, 0, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R8G8B8_UNORM          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 0, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R8G8B8A8_UNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 1, 1, 1, 1, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R8G8B8X8_UNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 1, PIPE_FORMAT_TYPE_UNORM ) | ||||
| PIPE_FORMAT_R8_USCALED            = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 1, 0, 0, 0, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R8G8_USCALED          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 1, 1, 0, 0, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R8G8B8_USCALED        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 0, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R8G8B8A8_USCALED      = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 1, 1, 1, 1, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R8G8B8X8_USCALED      = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 1, PIPE_FORMAT_TYPE_USCALED ) | ||||
| PIPE_FORMAT_R8_SNORM              = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 1, 0, 0, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R8G8_SNORM            = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 1, 1, 0, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R8G8B8_SNORM          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R8G8B8A8_SNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 1, 1, 1, 1, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R8G8B8X8_SNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 1, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_B6G5R5_SNORM          = _PIPE_FORMAT_RGBAZS_1 ( _PIPE_FORMAT_BGR1, 6, 5, 5, 0, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_A8B8G8R8_SNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_BGRA, 1, 1, 1, 1, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_X8B8G8R8_SNORM        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 1, PIPE_FORMAT_TYPE_SNORM ) | ||||
| PIPE_FORMAT_R8_SSCALED            = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 1, 0, 0, 0, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R8G8_SSCALED          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 1, 1, 0, 0, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R8G8B8_SSCALED        = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 0, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R8G8B8A8_SSCALED      = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 1, 1, 1, 1, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R8G8B8X8_SSCALED      = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 1, PIPE_FORMAT_TYPE_SSCALED ) | ||||
| PIPE_FORMAT_R32_FIXED             = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_R001, 4, 0, 0, 0, PIPE_FORMAT_TYPE_FIXED ) | ||||
| PIPE_FORMAT_R32G32_FIXED          = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RG01, 4, 4, 0, 0, PIPE_FORMAT_TYPE_FIXED ) | ||||
| PIPE_FORMAT_R32G32B32_FIXED       = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 4, 4, 4, 0, PIPE_FORMAT_TYPE_FIXED ) | ||||
| PIPE_FORMAT_R32G32B32A32_FIXED    = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 4, 4, 4, 4, PIPE_FORMAT_TYPE_FIXED ) | ||||
| PIPE_FORMAT_L8_SRGB               = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RRR1, 1, 1, 1, 0, PIPE_FORMAT_TYPE_SRGB ) | ||||
| PIPE_FORMAT_A8_L8_SRGB            = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RRRG, 1, 1, 1, 1, PIPE_FORMAT_TYPE_SRGB ) | ||||
| PIPE_FORMAT_R8G8B8_SRGB           = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 0, PIPE_FORMAT_TYPE_SRGB ) | ||||
| PIPE_FORMAT_R8G8B8A8_SRGB         = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGBA, 1, 1, 1, 1, PIPE_FORMAT_TYPE_SRGB ) | ||||
| PIPE_FORMAT_R8G8B8X8_SRGB         = _PIPE_FORMAT_RGBAZS_8 ( _PIPE_FORMAT_RGB1, 1, 1, 1, 1, PIPE_FORMAT_TYPE_SRGB ) | ||||
| PIPE_FORMAT_X8UB8UG8SR8S_NORM     = _PIPE_FORMAT_MIXED( _PIPE_FORMAT_1BGR, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1 ) | ||||
| PIPE_FORMAT_B6UG5SR5S_NORM        = _PIPE_FORMAT_MIXED( _PIPE_FORMAT_BGR1, 6, 5, 5, 0, 0, 1, 1, 0, 1, 0 ) | ||||
| PIPE_FORMAT_DXT1_RGB              = _PIPE_FORMAT_DXT( 1, 8, 8, 8, 0 ) | ||||
| PIPE_FORMAT_DXT1_RGBA             = _PIPE_FORMAT_DXT( 1, 8, 8, 8, 8 ) | ||||
| PIPE_FORMAT_DXT3_RGBA             = _PIPE_FORMAT_DXT( 3, 8, 8, 8, 8 ) | ||||
| PIPE_FORMAT_DXT5_RGBA             = _PIPE_FORMAT_DXT( 5, 8, 8, 8, 8 ) | ||||
|  | ||||
|  | ||||
| formats = {} | ||||
| for name, value in globals().items(): | ||||
|     if name.startswith("PIPE_FORMAT_") and isinstance(value, int): | ||||
|         formats[value] = name | ||||
|  | ||||
|  | ||||
| def clip(g): | ||||
| 	return min(max(g, 0), 255) | ||||
|  | ||||
|  | ||||
| def yuv2rgb(y, u, v): | ||||
| 	C = y - 16 | ||||
| 	D = u - 128 | ||||
| 	E = v - 128 | ||||
|  | ||||
| 	r = clip(( 298 * C           + 409 * E + 128) >> 8) | ||||
| 	g = clip(( 298 * C - 100 * D - 208 * E + 128) >> 8) | ||||
| 	b = clip(( 298 * C + 516 * D           + 128) >> 8) | ||||
| 	 | ||||
| 	return r, g, b | ||||
|  | ||||
| 	 | ||||
| def translate_r5g6b5(data): | ||||
| 	value, = struct.unpack_from("H", data) | ||||
| 	r = ((value >> 11) & 0x1f)*0xff/0x1f | ||||
| 	g = ((value >>  5) & 0x3f)*0xff/0x3f | ||||
| 	b = ((value >>  0) & 0x1f)*0xff/0x1f | ||||
| 	a = 255 | ||||
| 	return [[(r, g, b, a)]] | ||||
|  | ||||
| def translate_a8r8g8b8(data): | ||||
|     b, g, r, a = struct.unpack_from("BBBB", data) | ||||
|     return [[(r, g, b, a)]] | ||||
|  | ||||
|  | ||||
| def translate_x8r8g8b8(data): | ||||
|     b, g, r, x = struct.unpack_from("BBBB", data) | ||||
|     a = 255 | ||||
|     return [[(r, g, b, a)]] | ||||
|  | ||||
| def translate_r8g8b8a8(data): | ||||
| 	r, g, b, a = struct.unpack_from("BBBB", data) | ||||
| 	return [[(r, g, b, a)]] | ||||
|  | ||||
| def translate_ycbcr(data): | ||||
| 	y1, u, y2, v = struct.unpack_from("BBBB", data) | ||||
| 	r1, g1, b1 = yuv2rgb(y1, u, v) | ||||
| 	r2, g2, b2 = yuv2rgb(y1, u, v) | ||||
| 	return [[(r1, g1, b1, 255), (r2, g2, b2, 255)]] | ||||
|  | ||||
| def translate_ycbcr_rev(data): | ||||
|     v, y2, u, y1 = struct.unpack_from("BBBB", data) | ||||
|     r1, g1, b1 = yuv2rgb(y1, u, v) | ||||
|     r2, g2, b2 = yuv2rgb(y1, u, v) | ||||
|     return [[(r1, g1, b1, 255), (r2, g2, b2, 255)]] | ||||
|  | ||||
| def translate_x8z24(data): | ||||
|     value, = struct.unpack_from("I", data) | ||||
|     r = g = b = (value & 0xffffff)*0xff/0xffffff | ||||
|     a = 255 | ||||
|     return [[(r, g, b, a)]] | ||||
|  | ||||
| def translate_s8z24(data): | ||||
|     value, = struct.unpack_from("I", data) | ||||
|     r = (value & 0xffffff)*0xff/0xffffff | ||||
|     g = value >> 24 | ||||
|     b = 0 | ||||
|     a = 255 | ||||
|     return [[(r, g, b, a)]] | ||||
|  | ||||
|  | ||||
| translate = { | ||||
| 	PIPE_FORMAT_A8R8G8B8_UNORM: (4, 1, 1, translate_a8r8g8b8), | ||||
| 	PIPE_FORMAT_X8R8G8B8_UNORM: (4, 1, 1, translate_x8r8g8b8), | ||||
| 	PIPE_FORMAT_B8G8R8A8_UNORM: (4, 1, 1, translate_r8g8b8a8), | ||||
| 	PIPE_FORMAT_B8G8R8X8_UNORM: (4, 1, 1, translate_r8g8b8a8), | ||||
| 	PIPE_FORMAT_A8B8G8R8_SNORM: (4, 1, 1, translate_r8g8b8a8), | ||||
| 	PIPE_FORMAT_R5G6B5_UNORM: (2, 1, 1, translate_r5g6b5), | ||||
| 	PIPE_FORMAT_YCBCR: (4, 2, 1, translate_ycbcr), | ||||
| 	PIPE_FORMAT_YCBCR_REV: (4, 2, 1, translate_ycbcr_rev), | ||||
|     PIPE_FORMAT_S8Z24_UNORM: (4, 1, 1, translate_s8z24), | ||||
|     PIPE_FORMAT_X8Z24_UNORM: (4, 1, 1, translate_x8z24), | ||||
| } | ||||
|  | ||||
| def read_header(infile): | ||||
| 	header_fmt = "IIII" | ||||
| 	header = infile.read(struct.calcsize(header_fmt)) | ||||
| 	return struct.unpack_from(header_fmt, header) | ||||
|  | ||||
| def process(infilename, outfilename): | ||||
| 	sys.stderr.write("%s -> %s\n" % (infilename, outfilename)) | ||||
| 	infile = open(infilename, "rb") | ||||
| 	format, cpp, width, height = read_header(infile) | ||||
| 	sys.stderr.write("  %ux%ux%ubpp %s\n" % (width, height, cpp*8, formats[format])) | ||||
| 	outimage = Image.new( | ||||
| 	mode='RGB', | ||||
| 	size=(width, height), | ||||
| 	color=(0,0,0)) | ||||
| 	outpixels = outimage.load() | ||||
| 	try: | ||||
| 		bsize, bwidth, bheight, translate_func = translate[format] | ||||
| 	except KeyError: | ||||
| 		sys.stderr.write('error: unsupported format %s\n' % formats[format]) | ||||
| 		return | ||||
| 	for y in range(0, height, bheight): | ||||
| 		for x in range(0, width, bwidth): | ||||
| 			indata = infile.read(bsize) | ||||
| 			outdata = translate_func(indata) | ||||
| 			for j in range(bheight): | ||||
| 				for i in range(bwidth): | ||||
| 					r, g, b, a = outdata[j][i] | ||||
| 					outpixels[x+i, y+j] = r, g, b | ||||
| 	outimage.save(outfilename, "PNG") | ||||
|  | ||||
|  | ||||
| def main(): | ||||
| 	if sys.platform == 'win32': | ||||
| 		# wildcard expansion | ||||
| 		from glob import glob | ||||
| 		args = [] | ||||
| 		for arg in sys.argv[1:]: | ||||
| 			args.extend(glob(arg)) | ||||
| 	else: | ||||
| 		args = sys.argv[1:] | ||||
| 	for infilename in args: | ||||
| 		root, ext = os.path.splitext(infilename) | ||||
| 		outfilename = root + ".png" | ||||
| 		process(infilename, outfilename) | ||||
|  | ||||
|  | ||||
| if __name__ == '__main__': | ||||
| 	main() | ||||
| @@ -1,29 +0,0 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # This script is used to generate the list of changes that | ||||
| # appears in the release notes files, with HTML formatting. | ||||
| # | ||||
| # Usage examples: | ||||
| # | ||||
| # $ bin/shortlog_mesa.sh mesa-9.0.2..mesa-9.0.3 | ||||
| # $ bin/shortlog_mesa.sh mesa-9.0.2..mesa-9.0.3 > changes | ||||
| # $ bin/shortlog_mesa.sh mesa-9.0.2..mesa-9.0.3 | tee changes | ||||
|  | ||||
|  | ||||
| in_log=0 | ||||
|  | ||||
| git shortlog $* | while read l | ||||
| do | ||||
|     if [ $in_log -eq 0 ]; then | ||||
| 	echo '<p>'$l'</p>' | ||||
| 	echo '<ul>' | ||||
| 	in_log=1 | ||||
|     elif echo "$l" | egrep -q '^$' ; then | ||||
| 	echo '</ul>' | ||||
| 	echo | ||||
| 	in_log=0 | ||||
|     else | ||||
|         mesg=$(echo $l | sed 's/ (cherry picked from commit [0-9a-f]\+)//;s/\&/&/g;s/</\</g;s/>/\>/g') | ||||
| 	echo '  <li>'${mesg}'</li>' | ||||
|     fi | ||||
| done | ||||
							
								
								
									
										17
									
								
								bin/version.mk
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										17
									
								
								bin/version.mk
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| #!/usr/bin/make -sf | ||||
| # Print the various Mesa version fields. This is mostly used to add the | ||||
| # version to configure. | ||||
|  | ||||
| # This reflects that this script is usually called from the toplevel | ||||
| TOP = . | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| version: | ||||
| 	@echo $(MESA_VERSION) | ||||
| major: | ||||
| 	@echo $(MESA_MAJOR) | ||||
| minor: | ||||
| 	@echo $(MESA_MINOR) | ||||
| tiny: | ||||
| 	@echo $(MESA_TINY) | ||||
| @@ -1,3 +0,0 @@ | ||||
| { | ||||
| 	radeon_drm_winsys_create; | ||||
| }; | ||||
| @@ -1,6 +0,0 @@ | ||||
| VERSION_1 { | ||||
|     global: | ||||
|         main; | ||||
|     local: | ||||
|         *; | ||||
| }; | ||||
							
								
								
									
										132
									
								
								common.py
									
									
									
									
									
								
							
							
						
						
									
										132
									
								
								common.py
									
									
									
									
									
								
							| @@ -3,113 +3,65 @@ | ||||
|  | ||||
| import os | ||||
| import os.path | ||||
| import re | ||||
| import subprocess | ||||
| import sys | ||||
| import platform as _platform | ||||
|  | ||||
| import SCons.Script.SConscript | ||||
|  | ||||
|  | ||||
| ####################################################################### | ||||
| # Defaults | ||||
|  | ||||
| host_platform = _platform.system().lower() | ||||
| if host_platform.startswith('cygwin'): | ||||
|     host_platform = 'cygwin' | ||||
|  | ||||
| # Search sys.argv[] for a "platform=foo" argument since we don't have | ||||
| # an 'env' variable at this point. | ||||
| if 'platform' in SCons.Script.ARGUMENTS: | ||||
|     target_platform = SCons.Script.ARGUMENTS['platform'] | ||||
| else: | ||||
|     target_platform = host_platform | ||||
|  | ||||
| _machine_map = { | ||||
|     'x86': 'x86', | ||||
|     'i386': 'x86', | ||||
|     'i486': 'x86', | ||||
|     'i586': 'x86', | ||||
|     'i686': 'x86', | ||||
|     'BePC': 'x86', | ||||
|     'Intel': 'x86', | ||||
|     'ppc': 'ppc', | ||||
|     'BeBox': 'ppc', | ||||
|     'BeMac': 'ppc', | ||||
|     'AMD64': 'x86_64', | ||||
|     'x86_64': 'x86_64', | ||||
|     'sparc': 'sparc', | ||||
|     'sun4u': 'sparc', | ||||
| _platform_map = { | ||||
| 	'linux2': 'linux', | ||||
| 	'win32': 'winddk', | ||||
| } | ||||
|  | ||||
| default_platform = sys.platform | ||||
| default_platform = _platform_map.get(default_platform, default_platform) | ||||
|  | ||||
| # find host_machine value | ||||
| _machine_map = { | ||||
| 	'x86': 'x86', | ||||
| 	'i386': 'x86', | ||||
| 	'i486': 'x86', | ||||
| 	'i586': 'x86', | ||||
| 	'i686': 'x86', | ||||
| 	'ppc' : 'ppc', | ||||
| 	'x86_64': 'x86_64', | ||||
| } | ||||
| if 'PROCESSOR_ARCHITECTURE' in os.environ: | ||||
|     host_machine = os.environ['PROCESSOR_ARCHITECTURE'] | ||||
| 	default_machine = os.environ['PROCESSOR_ARCHITECTURE'] | ||||
| else: | ||||
|     host_machine = _platform.machine() | ||||
| host_machine = _machine_map.get(host_machine, 'generic') | ||||
| 	default_machine = _platform.machine() | ||||
| default_machine = _machine_map.get(default_machine, 'generic') | ||||
|  | ||||
| default_machine = host_machine | ||||
| default_toolchain = 'default' | ||||
|  | ||||
| if target_platform == 'windows' and host_platform != 'windows': | ||||
|     default_machine = 'x86' | ||||
|     default_toolchain = 'crossmingw' | ||||
|  | ||||
|  | ||||
| # find default_llvm value | ||||
| if 'LLVM' in os.environ or 'LLVM_CONFIG' in os.environ: | ||||
|     default_llvm = 'yes' | ||||
| if default_platform in ('linux', 'freebsd'): | ||||
| 	default_dri = 'yes' | ||||
| elif default_platform in ('winddk', 'windows', 'wince', 'darwin'): | ||||
| 	default_dri = 'no' | ||||
| else: | ||||
|     default_llvm = 'no' | ||||
|     try: | ||||
|         if target_platform != 'windows' and \ | ||||
|            subprocess.call(['llvm-config', '--version'], | ||||
|                            stdout=subprocess.PIPE) == 0: | ||||
|             default_llvm = 'yes' | ||||
|     except: | ||||
|         pass | ||||
| 	default_dri = 'no' | ||||
|  | ||||
|  | ||||
| ####################################################################### | ||||
| # Common options | ||||
|  | ||||
| def AddOptions(opts): | ||||
|     try: | ||||
|         from SCons.Variables.BoolVariable import BoolVariable as BoolOption | ||||
|     except ImportError: | ||||
|         from SCons.Options.BoolOption import BoolOption | ||||
|     try: | ||||
|         from SCons.Variables.EnumVariable import EnumVariable as EnumOption | ||||
|     except ImportError: | ||||
|         from SCons.Options.EnumOption import EnumOption | ||||
|     opts.Add(EnumOption('build', 'build type', 'debug', | ||||
|                         allowed_values=('debug', 'checked', 'profile', | ||||
|                                         'release', 'opt'))) | ||||
|     opts.Add(BoolOption('verbose', 'verbose output', 'no')) | ||||
|     opts.Add(EnumOption('machine', 'use machine-specific assembly code', | ||||
|                         default_machine, | ||||
|                         allowed_values=('generic', 'ppc', 'x86', 'x86_64'))) | ||||
|     opts.Add(EnumOption('platform', 'target platform', host_platform, | ||||
|                         allowed_values=('cygwin', 'darwin', 'freebsd', 'haiku', | ||||
|                                         'linux', 'sunos', 'windows'))) | ||||
|     opts.Add(BoolOption('embedded', 'embedded build', 'no')) | ||||
|     opts.Add(BoolOption('analyze', | ||||
|                         'enable static code analysis where available', 'no')) | ||||
|     opts.Add(BoolOption('asan', 'enable Address Sanitizer', 'no')) | ||||
|     opts.Add('toolchain', 'compiler toolchain', default_toolchain) | ||||
|     opts.Add(BoolOption('gles', 'EXPERIMENTAL: enable OpenGL ES support', | ||||
|                         'no')) | ||||
|     opts.Add(BoolOption('llvm', 'use LLVM', default_llvm)) | ||||
|     opts.Add(BoolOption('openmp', 'EXPERIMENTAL: compile with openmp (swrast)', | ||||
|                         'no')) | ||||
|     opts.Add(BoolOption('debug', 'DEPRECATED: debug build', 'yes')) | ||||
|     opts.Add(BoolOption('profile', 'DEPRECATED: profile build', 'no')) | ||||
|     opts.Add(BoolOption('quiet', 'DEPRECATED: profile build', 'yes')) | ||||
|     opts.Add(BoolOption('texture_float', | ||||
|                         'enable floating-point textures and renderbuffers', | ||||
|                         'no')) | ||||
|     opts.Add(BoolOption('swr', 'Build OpenSWR', 'no')) | ||||
|     if host_platform == 'windows': | ||||
|         opts.Add('MSVC_VERSION', 'Microsoft Visual C/C++ version') | ||||
| 	try: | ||||
| 		from SCons.Variables.BoolVariable import BoolVariable as BoolOption | ||||
| 	except ImportError: | ||||
| 		from SCons.Options.BoolOption import BoolOption | ||||
| 	try: | ||||
| 		from SCons.Variables.EnumVariable import EnumVariable as EnumOption | ||||
| 	except ImportError: | ||||
| 		from SCons.Options.EnumOption import EnumOption | ||||
| 	opts.Add(BoolOption('debug', 'debug build', 'no')) | ||||
| 	opts.Add(BoolOption('profile', 'profile build', 'no')) | ||||
| 	opts.Add(BoolOption('quiet', 'quiet command lines', 'yes')) | ||||
| 	opts.Add(EnumOption('machine', 'use machine-specific assembly code', default_machine, | ||||
| 											 allowed_values=('generic', 'ppc', 'x86', 'x86_64'))) | ||||
| 	opts.Add(EnumOption('platform', 'target platform', default_platform, | ||||
| 											 allowed_values=('linux', 'cell', 'windows', 'winddk', 'wince', 'darwin'))) | ||||
| 	opts.Add(EnumOption('toolchain', 'compiler toolchain', 'default', | ||||
| 											 allowed_values=('default', 'crossmingw', 'winsdk', 'winddk'))) | ||||
| 	opts.Add(BoolOption('llvm', 'use LLVM', 'no')) | ||||
| 	opts.Add(BoolOption('dri', 'build DRI drivers', default_dri)) | ||||
|  | ||||
|   | ||||
							
								
								
									
										2
									
								
								configs/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								configs/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| current | ||||
| autoconf | ||||
							
								
								
									
										30
									
								
								configs/aix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								configs/aix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| # Configuration for AIX, dynamic libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = aix | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = xlC | ||||
|  | ||||
| CFLAGS = -O -DAIXV3 -DPTHREADS | ||||
| CXXFLAGS = -O -DAIXV3 -DPTHREADS | ||||
|  | ||||
| # Misc tools and flags | ||||
| MKLIB_OPTIONS = | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| GL_LIB_DEPS = -lX11 -lXext -lpthread -lm | ||||
| GLU_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lm -lC | ||||
| GLUT_LIB_DEPS = -L$(TOP)/lib -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm | ||||
| GLW_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lXm -lXt -lX11 | ||||
| OSMESA_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) | ||||
| APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm -lC | ||||
|  | ||||
							
								
								
									
										27
									
								
								configs/aix-64
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								configs/aix-64
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | ||||
| # Configuration for AIX 64-bit, dynamic libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = aix-64 | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = xlc | ||||
| CXX = xlC | ||||
|  | ||||
| CFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3 -DPTHREADS | ||||
| CXXFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3 -DPTHREADS | ||||
| LIB_DIR = lib64 | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| GL_LIB_DEPS = -lX11 -lXext -lm -lpthread | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lC | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXm -lXt -lX11 | ||||
| APP_LIB_DEPS = -L$(TOP)/lib64 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lpthread -lC | ||||
|  | ||||
							
								
								
									
										25
									
								
								configs/aix-64-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								configs/aix-64-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,25 @@ | ||||
| # Configuration for AIX, static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = aix-64-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = xlC | ||||
|  | ||||
| CFLAGS = -q64 -O -DAIXV3 -DPTHREADS | ||||
| CXXFLAGS = -q64 -O -DAIXV3 -DPTHREADS | ||||
| MKLIB_OPTIONS = -static | ||||
| LIB_DIR = lib64 | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| APP_LIB_DEPS = -q64 -L$(TOP)/$(LIB_DIR)  -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \ | ||||
|                -lX11 -lXext -lXmu -lXi -lm -lpthread -lC | ||||
|  | ||||
							
								
								
									
										23
									
								
								configs/aix-gcc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								configs/aix-gcc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | ||||
| # Configuration for AIX with gcc | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = aix-gcc | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
|  | ||||
| CFLAGS = -O2 -DAIXV3 | ||||
| CXXFLAGS = -O2 -DAIXV3 | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| MKLIB_OPTIONS = -arch aix-gcc | ||||
| GL_LIB_DEPS = -lX11 -lXext -lm | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -Wl,-brtl -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lX11 -lXext -lXmu -lXi | ||||
|  | ||||
							
								
								
									
										25
									
								
								configs/aix-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								configs/aix-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,25 @@ | ||||
| # Configuration for AIX, static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = aix-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = xlC | ||||
|  | ||||
| CFLAGS = -O -DAIXV3 -DPTHREADS | ||||
| CXXFLAGS = -O -DAIXV3 -DPTHREADS | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \ | ||||
|                -lX11 -lXext -lXmu -lXi -lm -lpthread -lC | ||||
|  | ||||
|  | ||||
							
								
								
									
										148
									
								
								configs/autoconf.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										148
									
								
								configs/autoconf.in
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,148 @@ | ||||
| # Autoconf configuration | ||||
|  | ||||
| # Pull in the defaults | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| # This is generated by configure | ||||
| CONFIG_NAME = autoconf | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = @CC@ | ||||
| CXX = @CXX@ | ||||
| OPT_FLAGS = @OPT_FLAGS@ | ||||
| ARCH_FLAGS = @ARCH_FLAGS@ | ||||
| ASM_FLAGS = @ASM_FLAGS@ | ||||
| PIC_FLAGS = @PIC_FLAGS@ | ||||
| DEFINES = @DEFINES@ | ||||
| CFLAGS = @CPPFLAGS@ @CFLAGS@ \ | ||||
| 	$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES) | ||||
| CXXFLAGS = @CPPFLAGS@ @CXXFLAGS@ \ | ||||
| 	$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) | ||||
| LDFLAGS = @LDFLAGS@ | ||||
| EXTRA_LIB_PATH = @EXTRA_LIB_PATH@ | ||||
| RADEON_CFLAGS = @RADEON_CFLAGS@ | ||||
| RADEON_LDFLAGS = @RADEON_LDFLAGS@ | ||||
|  | ||||
| # Assembler | ||||
| MESA_ASM_SOURCES = @MESA_ASM_SOURCES@ | ||||
| GLAPI_ASM_SOURCES = @GLAPI_ASM_SOURCES@ | ||||
|  | ||||
| # Misc tools and flags | ||||
| MAKE = @MAKE@ | ||||
| SHELL = @SHELL@ | ||||
| MKLIB_OPTIONS = @MKLIB_OPTIONS@ | ||||
| MKDEP = @MKDEP@ | ||||
| MKDEP_OPTIONS = @MKDEP_OPTIONS@ | ||||
| INSTALL = @INSTALL@ | ||||
|  | ||||
| # Python and flags (generally only needed by the developers) | ||||
| PYTHON2 = python | ||||
| PYTHON_FLAGS = -t -O -O | ||||
|  | ||||
| # Library names (base name) | ||||
| GL_LIB = GL | ||||
| GLU_LIB = GLU | ||||
| GLUT_LIB = glut | ||||
| GLW_LIB = GLw | ||||
| OSMESA_LIB = @OSMESA_LIB@ | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = @GL_LIB_NAME@ | ||||
| GLU_LIB_NAME = @GLU_LIB_NAME@ | ||||
| GLUT_LIB_NAME = @GLUT_LIB_NAME@ | ||||
| GLW_LIB_NAME = @GLW_LIB_NAME@ | ||||
| OSMESA_LIB_NAME = @OSMESA_LIB_NAME@ | ||||
|  | ||||
| # Globs used to install the lib and all symlinks | ||||
| GL_LIB_GLOB = @GL_LIB_GLOB@ | ||||
| GLU_LIB_GLOB = @GLU_LIB_GLOB@ | ||||
| GLUT_LIB_GLOB = @GLUT_LIB_GLOB@ | ||||
| GLW_LIB_GLOB = @GLW_LIB_GLOB@ | ||||
| OSMESA_LIB_GLOB = @OSMESA_LIB_GLOB@ | ||||
|  | ||||
| # Directories to build | ||||
| LIB_DIR = @LIB_DIR@ | ||||
| SRC_DIRS = @SRC_DIRS@ | ||||
| GLU_DIRS = @GLU_DIRS@ | ||||
| DRIVER_DIRS = @DRIVER_DIRS@ | ||||
| GALLIUM_DIRS = @GALLIUM_DIRS@ | ||||
| GALLIUM_AUXILIARY_DIRS = @GALLIUM_AUXILIARY_DIRS@ | ||||
| GALLIUM_DRIVERS_DIRS = @GALLIUM_DRIVERS_DIRS@ | ||||
| GALLIUM_WINSYS_DIRS = @GALLIUM_WINSYS_DIRS@ | ||||
| GALLIUM_WINSYS_DRM_DIRS = @GALLIUM_WINSYS_DRM_DIRS@ | ||||
| GALLIUM_STATE_TRACKERS_DIRS = @GALLIUM_STATE_TRACKERS_DIRS@ | ||||
| GALLIUM_AUXILIARIES = $(foreach DIR,$(GALLIUM_AUXILIARY_DIRS),$(TOP)/src/gallium/auxiliary/$(DIR)/lib$(DIR).a) | ||||
| GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a) | ||||
|  | ||||
| # Which subdirs under $(TOP)/progs/ to enter: | ||||
| PROGRAM_DIRS = @PROGRAM_DIRS@ | ||||
|  | ||||
| # Driver specific build vars | ||||
| DRI_DIRS = @DRI_DIRS@  | ||||
| WINDOW_SYSTEM = @WINDOW_SYSTEM@ | ||||
| USING_EGL = @USING_EGL@ | ||||
|  | ||||
| # Dependencies | ||||
| X11_INCLUDES = @X11_INCLUDES@ | ||||
|  | ||||
| # GLw motif setup | ||||
| GLW_SOURCES = @GLW_SOURCES@ | ||||
| MOTIF_CFLAGS = @MOTIF_CFLAGS@ | ||||
|  | ||||
| # Library/program dependencies | ||||
| GL_LIB_DEPS = $(EXTRA_LIB_PATH) @GL_LIB_DEPS@ | ||||
| OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @OSMESA_MESA_DEPS@ \ | ||||
| 	$(EXTRA_LIB_PATH) @OSMESA_LIB_DEPS@ | ||||
| EGL_LIB_DEPS = $(EXTRA_LIB_PATH) @EGL_LIB_DEPS@ | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLU_MESA_DEPS@ \ | ||||
| 	$(EXTRA_LIB_PATH) @GLU_LIB_DEPS@ | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLUT_MESA_DEPS@ \ | ||||
| 	$(EXTRA_LIB_PATH) @GLUT_LIB_DEPS@ | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLW_MESA_DEPS@ \ | ||||
| 	$(EXTRA_LIB_PATH) @GLW_LIB_DEPS@ | ||||
| APP_LIB_DEPS = $(EXTRA_LIB_PATH) @APP_LIB_DEPS@ | ||||
|  | ||||
| # DRI dependencies | ||||
| DRI_LIB_DEPS = $(EXTRA_LIB_PATH) @DRI_LIB_DEPS@ | ||||
| LIBDRM_CFLAGS = @LIBDRM_CFLAGS@ | ||||
| LIBDRM_LIB = @LIBDRM_LIBS@ | ||||
| DRI2PROTO_CFLAGS = @DRI2PROTO_CFLAGS@ | ||||
| EXPAT_INCLUDES = @EXPAT_INCLUDES@ | ||||
|  | ||||
| # Autoconf directories | ||||
| prefix = @prefix@ | ||||
| exec_prefix = @exec_prefix@ | ||||
| libdir = @libdir@ | ||||
| includedir = @includedir@ | ||||
|  | ||||
| # Installation directories (for make install) | ||||
| INSTALL_DIR = $(prefix) | ||||
| INSTALL_LIB_DIR = $(libdir) | ||||
| INSTALL_INC_DIR = $(includedir) | ||||
|  | ||||
| # DRI installation directories | ||||
| DRI_DRIVER_INSTALL_DIR = @DRI_DRIVER_INSTALL_DIR@ | ||||
|  | ||||
| # Where libGL will look for DRI hardware drivers | ||||
| DRI_DRIVER_SEARCH_DIR = @DRI_DRIVER_SEARCH_DIR@ | ||||
|  | ||||
| # Xorg driver install directory (for xorg state-tracker) | ||||
| XORG_DRIVER_INSTALL_DIR = @XORG_DRIVER_INSTALL_DIR@ | ||||
|  | ||||
| # pkg-config substitutions | ||||
| GL_PC_REQ_PRIV = @GL_PC_REQ_PRIV@ | ||||
| GL_PC_LIB_PRIV = @GL_PC_LIB_PRIV@ | ||||
| GL_PC_CFLAGS = @GL_PC_CFLAGS@ | ||||
| DRI_PC_REQ_PRIV = @DRI_PC_REQ_PRIV@ | ||||
| GLU_PC_REQ = @GLU_PC_REQ@ | ||||
| GLU_PC_REQ_PRIV = @GLU_PC_REQ_PRIV@ | ||||
| GLU_PC_LIB_PRIV = @GLU_PC_LIB_PRIV@ | ||||
| GLU_PC_CFLAGS = @GLU_PC_CFLAGS@ | ||||
| GLUT_PC_REQ_PRIV = @GLUT_PC_REQ_PRIV@ | ||||
| GLUT_PC_LIB_PRIV = @GLUT_PC_LIB_PRIV@ | ||||
| GLUT_PC_CFLAGS = @GLUT_PC_CFLAGS@ | ||||
| GLW_PC_REQ_PRIV = @GLW_PC_REQ_PRIV@ | ||||
| GLW_PC_LIB_PRIV = @GLW_PC_LIB_PRIV@ | ||||
| GLW_PC_CFLAGS = @GLW_PC_CFLAGS@ | ||||
| OSMESA_PC_REQ = @OSMESA_PC_REQ@ | ||||
| OSMESA_PC_LIB_PRIV = @OSMESA_PC_LIB_PRIV@ | ||||
							
								
								
									
										104
									
								
								configs/beos
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										104
									
								
								configs/beos
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,104 @@ | ||||
| # Configuration for BeOS | ||||
| # Written by Philippe Houdoin | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = beos | ||||
|  | ||||
|  | ||||
| DEFINES = 	\ | ||||
| 	-DBEOS_THREADS  | ||||
|  | ||||
| MACHINE=$(shell uname -m) | ||||
| ifeq ($(MACHINE), BePC) | ||||
| 	CPU = x86 | ||||
| else | ||||
| 	CPU = ppc | ||||
| endif | ||||
|  | ||||
| ifeq ($(CPU), x86) | ||||
| 	# BeOS x86 settings | ||||
|  | ||||
| 	DEFINES += \ | ||||
| 		-DGNU_ASSEMBLER \ | ||||
| 		-DUSE_X86_ASM \ | ||||
| 		-DUSE_MMX_ASM \ | ||||
| 		-DUSE_3DNOW_ASM \ | ||||
| 		-DUSE_SSE_ASM | ||||
| 	 | ||||
| 	MESA_ASM_SOURCES = $(X86_SOURCES) | ||||
| 	GLAPI_ASM_SOURCES = $(X86_API) | ||||
|  | ||||
| 	CC = gcc | ||||
| 	CXX = g++ | ||||
| 	LD = gcc | ||||
| 	 | ||||
| 	CFLAGS = \ | ||||
| 		-Wall -Wno-multichar -Wno-ctor-dtor-privacy \ | ||||
| 		$(DEFINES) | ||||
|  | ||||
| 	CXXFLAGS = $(CFLAGS) | ||||
|  | ||||
| 	# Work around aliasing bugs - developers should comment this out | ||||
| 	CFLAGS += -fno-strict-aliasing | ||||
| 	CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| 	LDFLAGS += -Xlinker | ||||
|  | ||||
| 	ifdef DEBUG | ||||
| 		CFLAGS   += -g -O0 | ||||
| 		LDFLAGS += -g | ||||
| 		DEFINES += -DDEBUG | ||||
| 	else | ||||
| 		CFLAGS   += -O3 | ||||
| 	endif | ||||
|  | ||||
| 	GLUT_CFLAGS = -fexceptions | ||||
|  | ||||
| else | ||||
| 	# BeOS PPC settings | ||||
|  | ||||
| 	CC = mwcc | ||||
| 	CXX = $(CC) | ||||
| 	LD = mwldppc | ||||
|  | ||||
| 	CFLAGS = \ | ||||
| 		-w on -requireprotos \ | ||||
| 		$(DEFINES) | ||||
|  | ||||
| 	CXXFLAGS = $(CFLAGS) | ||||
|  | ||||
| 	LDFLAGS += \ | ||||
| 		-export pragma \ | ||||
| 		-init _init_routine_ \ | ||||
| 		-term _term_routine_ \ | ||||
| 		-lroot \ | ||||
| 		/boot/develop/lib/ppc/glue-noinit.a \ | ||||
| 		/boot/develop/lib/ppc/init_term_dyn.o \ | ||||
| 		/boot/develop/lib/ppc/start_dyn.o  | ||||
|  | ||||
| 	ifdef DEBUG | ||||
| 		CFLAGS   += -g -O0 | ||||
| 		CXXFLAGS += -g -O0 | ||||
| 		LDFLAGS += -g | ||||
| 	else | ||||
| 		CFLAGS   += -O7 | ||||
| 		CXXFLAGS += -O7 | ||||
| 	endif | ||||
|  | ||||
| 	GLUT_CFLAGS = -fexceptions | ||||
| endif | ||||
|  | ||||
| # Directories | ||||
| SRC_DIRS = gallium mesa glu glut/beos glew | ||||
| GLU_DIRS = sgi | ||||
| DRIVER_DIRS = beos | ||||
| PROGRAM_DIRS = beos samples redbook demos tests | ||||
|  | ||||
| # Library/program dependencies | ||||
| GL_LIB_DEPS =  | ||||
| OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) | ||||
| GLU_LIB_DEPS =   | ||||
| GLUT_LIB_DEPS = -lgame -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) | ||||
| APP_LIB_DEPS = -lbe -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLUT_LIB) | ||||
|  | ||||
							
								
								
									
										33
									
								
								configs/bluegene-osmesa
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								configs/bluegene-osmesa
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | ||||
| # Configuration for building only libOSMesa on BlueGene, no Xlib driver | ||||
| # This doesn't really have a lot of dependencies, so it should be usable | ||||
| # on other (gcc-based) systems too. | ||||
| # It uses static linking and disables multithreading. | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = bluegene-osmesa | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = /bgl/BlueLight/ppcfloor/blrts-gnu/bin/powerpc-bgl-blrts-gnu-gcc | ||||
| CXX = /bgl/BlueLight/ppcfloor/blrts-gnu/bin/powerpc-bgl-blrts-gnu-g++ | ||||
| CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE | ||||
| CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURC | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Directories | ||||
| SRC_DIRS = mesa glu | ||||
| DRIVER_DIRS = osmesa | ||||
| PROGRAM_DIRS = osdemos | ||||
|  | ||||
|  | ||||
| # Dependencies | ||||
| OSMESA_LIB_DEPS = -lm | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB) | ||||
| APP_LIB_DEPS = -lOSMesa -lGLU -lm | ||||
							
								
								
									
										29
									
								
								configs/bluegene-xlc-osmesa
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								configs/bluegene-xlc-osmesa
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,29 @@ | ||||
| # Configuration for building only libOSMesa on BlueGene using the IBM xlc compiler | ||||
| # This doesn't really have a lot of dependencies, so it should be usable | ||||
| # on similar systems too. | ||||
| # It uses static linking and disables multithreading. | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = bluegene-osmesa | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = /opt/ibmcmp/vacpp/bg/8.0/bin/blrts_xlc | ||||
| CXX = /opt/ibmcmp/vacpp/bg/8.0/bin/blrts_xlC | ||||
| CFLAGS = -O3 -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE | ||||
| CXXFLAGS = -O3 -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE | ||||
|  | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Directories | ||||
| SRC_DIRS = mesa glu | ||||
| DRIVER_DIRS = osmesa | ||||
| PROGRAM_DIRS = osdemos | ||||
|  | ||||
|  | ||||
| # Dependencies | ||||
| OSMESA_LIB_DEPS = -lm | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB) | ||||
| APP_LIB_DEPS = -lOSMesa -lGLU -lm | ||||
							
								
								
									
										32
									
								
								configs/catamount-osmesa-pgi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								configs/catamount-osmesa-pgi
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | ||||
| # Configuration for building only libOSMesa on Cray Xt3 | ||||
| # for the compute nodes running Catamount using the  | ||||
| # Portland Group compiler. The Portland Group toolchain has to be  | ||||
| # enabled before using "module switch PrgEnv-gnu PrgEnv-pgi" . | ||||
| # This doesn't really have a lot of dependencies, so it should be usable | ||||
| # on other similar systems too. | ||||
| # It uses static linking and disables multithreading. | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = catamount-osmesa-pgi | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = CC | ||||
| CFLAGS = -target=catamount -fastsse -O3 -Mnontemporal -Mprefetch=distance:8,nta   -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE | ||||
| CXXFLAGS = -target=catamount -fastsse -O3 -Mnontemporal -Mprefetch=distance:8,nta -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE | ||||
|  | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Directories | ||||
| SRC_DIRS = mesa glu | ||||
| DRIVER_DIRS = osmesa | ||||
| PROGRAM_DIRS = osdemos | ||||
|  | ||||
|  | ||||
| # Dependencies | ||||
| OSMESA_LIB_DEPS = -lm | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB) | ||||
| APP_LIB_DEPS = -lOSMesa -lGLU -lm | ||||
							
								
								
									
										42
									
								
								configs/config.mgw
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								configs/config.mgw
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,42 @@ | ||||
| # MinGW config include file updated for Mesa 7.0 | ||||
| # | ||||
| #  Updated : by Heromyth, on 2007-7-21 | ||||
| #  Email   : zxpmyth@yahoo.com.cn | ||||
| #  Bugs    : 1) All the default settings work fine. But the setting X86=1 can't work.  | ||||
| #            The others havn't been tested yet. | ||||
| #            2) The generated DLLs are *not* compatible with the ones built | ||||
| #            with the other compilers like VC8, especially for GLUT.  | ||||
| #            3) Although more tests are needed, it can be used individually! | ||||
|  | ||||
| # The generated DLLs by MingW with STDCALL are not totally compatible  | ||||
| # with the ones linked by Microsoft's compilers. | ||||
| # | ||||
| # xxx_USING_STDCALL = 1          Compiling MESA with __stdcall. This is default! | ||||
| #  | ||||
| # xxx_USING_STDCALL = 0          Compiling MESA without __stdcall. I like this:) | ||||
| #   | ||||
|  | ||||
| # In fact, GL_USING_STDCALL and GLUT_USING_STDCALL can be | ||||
| # different. For example: | ||||
| # | ||||
| #   GL_USING_STDCALL = 0 | ||||
| #   GLUT_USING_STDCALL = 1 | ||||
| #  | ||||
| # Suggested setting: | ||||
| # | ||||
| #     ALL_USING_STDCALL = 1 | ||||
| # | ||||
| # That's default! | ||||
| # | ||||
|  | ||||
|  | ||||
| ALL_USING_STDCALL = 1 | ||||
|  | ||||
|  | ||||
| ifeq ($(ALL_USING_STDCALL),1) | ||||
|   GL_USING_STDCALL = 1 | ||||
|   GLUT_USING_STDCALL = 1 | ||||
| else | ||||
|   GL_USING_STDCALL = 0 | ||||
|   GLUT_USING_STDCALL = 0 | ||||
| endif | ||||
							
								
								
									
										57
									
								
								configs/darwin
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								configs/darwin
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,57 @@ | ||||
| # Configuration for Darwin / MacOS X, making dynamic libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = darwin | ||||
|  | ||||
| INSTALL_DIR = /usr/X11 | ||||
|  | ||||
| X11_DIR = $(INSTALL_DIR) | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
| PIC_FLAGS = -fPIC | ||||
| DEFINES =  -D_DARWIN_C_SOURCE -DPTHREADS -D_GNU_SOURCE \ | ||||
| 	   -DGLX_ALIAS_UNSUPPORTED -DGLX_INDIRECT_RENDERING | ||||
|  | ||||
| # -D_GNU_SOURCE          - for src/mesa/main ... | ||||
| # -DGLX_DIRECT_RENDERING - pulls in libdrm stuff in glx/x11 | ||||
| # -DGLX_USE_APPLEGL      - supposed to be used with GLX_DIRECT_RENDERING to use AGL rather than DRM, but doesn't compile | ||||
| # -DIN_DRI_DRIVER | ||||
|  | ||||
| ARCH_FLAGS += $(RC_CFLAGS) | ||||
|  | ||||
| CFLAGS =  -ggdb3 -Os -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing \ | ||||
| 	-I$(INSTALL_DIR)/include -I$(X11_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES) | ||||
| CXXFLAGS =  -ggdb3 -Os -Wall -fno-strict-aliasing \ | ||||
| 	-I$(INSTALL_DIR)/include -I$(X11_DIR)/include $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES) | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.dylib | ||||
| GLU_LIB_NAME = libGLU.dylib | ||||
| GLUT_LIB_NAME = libglut.dylib | ||||
| GLW_LIB_NAME = libGLw.dylib | ||||
| OSMESA_LIB_NAME = libOSMesa.dylib | ||||
|  | ||||
| # globs used to install the lib and all symlinks | ||||
| GL_LIB_GLOB = libGL.*dylib | ||||
| GLU_LIB_GLOB = libGLU.*dylib | ||||
| GLUT_LIB_GLOB = libglut.*dylib | ||||
| GLW_LIB_GLOB = libGLw.*dylib | ||||
| OSMESA_LIB_GLOB = libOSMesa.*dylib | ||||
|  | ||||
| GL_LIB_DEPS = -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXext -lm -lpthread | ||||
| OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB)  -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXmu -lXi -lXext | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXt | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXmu -lXt -lXi -lm | ||||
|  | ||||
| # omit glw lib for now: | ||||
| SRC_DIRS = glx/x11 mesa gallium glu glut/glx glew | ||||
| GLU_DIRS = sgi | ||||
| DRIVER_DIRS = osmesa | ||||
| #DRIVER_DIRS = dri | ||||
| DRI_DIRS = swrast | ||||
| PROGRAM_DIRS = xdemos | ||||
							
								
								
									
										7
									
								
								configs/darwin-fat-32bit
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								configs/darwin-fat-32bit
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| # Configuration for Darwin / MacOS X, making 32bit fat dynamic libs | ||||
|  | ||||
| RC_CFLAGS=-arch ppc -arch i386 | ||||
|  | ||||
| include $(TOP)/configs/darwin | ||||
|  | ||||
| CONFIG_NAME = darwin-fat-32bit | ||||
							
								
								
									
										7
									
								
								configs/darwin-fat-all
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								configs/darwin-fat-all
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| # Configuration for Darwin / MacOS X, making 32bit and 64bit fat dynamic libs | ||||
|  | ||||
| RC_CFLAGS=-arch ppc -arch i386 -arch ppc64 -arch x86_64 | ||||
|  | ||||
| include $(TOP)/configs/darwin | ||||
|  | ||||
| CONFIG_NAME = darwin-fat-all | ||||
							
								
								
									
										33
									
								
								configs/darwin-x86ppc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								configs/darwin-x86ppc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | ||||
| # Configuration for Darwin / MacOS X, making dynamic libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = darwin | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = cc | ||||
| CFLAGS = -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk \ | ||||
|          -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin | ||||
| CXXFLAGS = -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk \ | ||||
|          -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin | ||||
|  | ||||
| MKLIB_OPTIONS = -archopt "-isysroot /Developer/SDKs/MacOSX10.4u.sdk" | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.dylib | ||||
| GLU_LIB_NAME = libGLU.dylib | ||||
| GLUT_LIB_NAME = libglut.dylib | ||||
| GLW_LIB_NAME = libGLw.dylib | ||||
| OSMESA_LIB_NAME = libOSMesa.dylib | ||||
|  | ||||
| GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread | ||||
| OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -lGL | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -lGL | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -lGL -lGLU -L/usr/X11R6/lib -lX11 -lXmu -lXi -lXext | ||||
| GLW_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXt $(TOP)/lib/GL.dylib | ||||
| APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm | ||||
|  | ||||
| # omit glw lib for now: | ||||
| SRC_DIRS = gallium mesa glu glut/glx glew | ||||
|  | ||||
							
								
								
									
										148
									
								
								configs/default
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										148
									
								
								configs/default
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,148 @@ | ||||
| # Default/template configuration | ||||
|  | ||||
| # This is included by other config files which may override some | ||||
| # of these variables. | ||||
| # Think of this as a base class from which configs are derived. | ||||
|  | ||||
|  | ||||
| CONFIG_NAME = default | ||||
|  | ||||
| # Version info | ||||
| MESA_MAJOR=7 | ||||
| MESA_MINOR=7 | ||||
| MESA_TINY=1 | ||||
| MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY) | ||||
|  | ||||
| # external projects.  This should be useless now that we use libdrm. | ||||
| DRM_SOURCE_PATH=$(TOP)/../drm | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = CC | ||||
| HOST_CC = $(CC) | ||||
| CFLAGS = -O | ||||
| CXXFLAGS = -O | ||||
| LDFLAGS = | ||||
| HOST_CFLAGS = $(CFLAGS) | ||||
| GLU_CFLAGS =  | ||||
|  | ||||
| # Compiler for building demos/tests/etc | ||||
| APP_CC = $(CC) | ||||
| APP_CXX = $(CXX) | ||||
|  | ||||
| # Misc tools and flags | ||||
| SHELL = /bin/sh | ||||
| MKLIB = $(SHELL) $(TOP)/bin/mklib | ||||
| MKLIB_OPTIONS =  | ||||
| MKDEP = makedepend | ||||
| MKDEP_OPTIONS = -fdepend | ||||
| MAKE = make | ||||
|  | ||||
| # Use MINSTALL for installing libraries, INSTALL for everything else | ||||
| MINSTALL = $(SHELL) $(TOP)/bin/minstall | ||||
| INSTALL = $(MINSTALL) | ||||
|  | ||||
| # Tools for regenerating glapi (generally only needed by the developers) | ||||
| PYTHON2 = python | ||||
| PYTHON_FLAGS = -t -O -O | ||||
| INDENT = indent | ||||
| INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce -T GLubyte -T GLbyte -T Bool | ||||
|  | ||||
| # Library names (base name) | ||||
| GL_LIB = GL | ||||
| GLU_LIB = GLU | ||||
| GLUT_LIB = glut | ||||
| GLEW_LIB = GLEW | ||||
| GLW_LIB = GLw | ||||
| OSMESA_LIB = OSMesa | ||||
|  | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = lib$(GL_LIB).so | ||||
| GLU_LIB_NAME = lib$(GLU_LIB).so | ||||
| GLUT_LIB_NAME = lib$(GLUT_LIB).so | ||||
| GLEW_LIB_NAME = lib$(GLEW_LIB).a | ||||
| GLW_LIB_NAME = lib$(GLW_LIB).so | ||||
| OSMESA_LIB_NAME = lib$(OSMESA_LIB).so | ||||
|  | ||||
| # globs used to install the lib and all symlinks | ||||
| GL_LIB_GLOB = $(GL_LIB_NAME)* | ||||
| GLU_LIB_GLOB = $(GLU_LIB_NAME)* | ||||
| GLUT_LIB_GLOB = $(GLUT_LIB_NAME)* | ||||
| GLW_LIB_GLOB = $(GLW_LIB_NAME)* | ||||
| OSMESA_LIB_GLOB = $(OSMESA_LIB_NAME)* | ||||
|  | ||||
| # Optional assembly language optimization files for libGL | ||||
| MESA_ASM_SOURCES =  | ||||
|  | ||||
| # GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in | ||||
| # order to build the Motif widget too) | ||||
| GLW_SOURCES = GLwDrawA.c | ||||
| MOTIF_CFLAGS = -I/usr/include/Motif1.2 | ||||
|  | ||||
|  | ||||
| # Directories to build | ||||
| LIB_DIR = lib | ||||
| SRC_DIRS = mesa gallium egl gallium/winsys glu glut/glx glew glw | ||||
| GLU_DIRS = sgi | ||||
| DRIVER_DIRS = x11 osmesa | ||||
| # Which subdirs under $(TOP)/progs/ to enter: | ||||
| PROGRAM_DIRS = demos redbook samples glsl objviewer xdemos | ||||
|  | ||||
| # EGL directories | ||||
| EGL_DRIVERS_DIRS = demo | ||||
|  | ||||
| # Gallium directories and  | ||||
| GALLIUM_DIRS = auxiliary drivers state_trackers | ||||
| GALLIUM_AUXILIARY_DIRS = rbug draw translate cso_cache pipebuffer tgsi sct rtasm util indices vl | ||||
| GALLIUM_AUXILIARIES = $(foreach DIR,$(GALLIUM_AUXILIARY_DIRS),$(TOP)/src/gallium/auxiliary/$(DIR)/lib$(DIR).a) | ||||
| GALLIUM_DRIVERS_DIRS = softpipe failover svga i915 trace identity | ||||
| GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a) | ||||
| GALLIUM_WINSYS_DIRS = xlib egl_xlib | ||||
| GALLIUM_WINSYS_DRM_DIRS = | ||||
| GALLIUM_STATE_TRACKERS_DIRS = glx | ||||
|  | ||||
|  | ||||
| # Library dependencies | ||||
| #EXTRA_LIB_PATH ?= | ||||
| GL_LIB_DEPS     = $(EXTRA_LIB_PATH) -lX11 -lXext -lm -lpthread | ||||
| EGL_LIB_DEPS    = $(EXTRA_LIB_PATH) -ldl -lpthread | ||||
| OSMESA_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) | ||||
| GLU_LIB_DEPS    = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm | ||||
| GLUT_LIB_DEPS   = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lm | ||||
| GLW_LIB_DEPS    = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXt -lX11 | ||||
| APP_LIB_DEPS    = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm | ||||
|  | ||||
| # Program dependencies - specific GL/glut libraries added in Makefiles | ||||
| APP_LIB_DEPS = -lm | ||||
|  | ||||
|  | ||||
| # Installation directories (for make install) | ||||
| INSTALL_DIR = /usr/local | ||||
| INSTALL_LIB_DIR = $(INSTALL_DIR)/$(LIB_DIR) | ||||
| INSTALL_INC_DIR = $(INSTALL_DIR)/include | ||||
| DRI_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/dri | ||||
|  | ||||
| # Where libGL will look for DRI hardware drivers | ||||
| DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR) | ||||
|  | ||||
| # Xorg driver install directory (for xorg state-tracker) | ||||
| XORG_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/xorg/modules/drivers | ||||
|  | ||||
| # pkg-config substitutions | ||||
| GL_PC_REQ_PRIV = | ||||
| GL_PC_LIB_PRIV = | ||||
| GL_PC_CFLAGS = | ||||
| DRI_PC_REQ_PRIV = | ||||
| GLU_PC_REQ = gl | ||||
| GLU_PC_REQ_PRIV = | ||||
| GLU_PC_LIB_PRIV = | ||||
| GLU_PC_CFLAGS = | ||||
| GLUT_PC_REQ_PRIV = | ||||
| GLUT_PC_LIB_PRIV = | ||||
| GLUT_PC_CFLAGS = | ||||
| GLW_PC_REQ_PRIV = | ||||
| GLW_PC_LIB_PRIV = | ||||
| GLW_PC_CFLAGS = | ||||
| OSMESA_PC_REQ = | ||||
| OSMESA_PC_LIB_PRIV = | ||||
							
								
								
									
										31
									
								
								configs/freebsd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								configs/freebsd
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,31 @@ | ||||
| # Configuration for FreeBSD | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = FreeBSD | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = c++ | ||||
| MAKE = gmake | ||||
|  | ||||
| OPT_FLAGS  = -O2 | ||||
| PIC_FLAGS  = -fPIC | ||||
|  | ||||
| DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -DUSE_XSHM \ | ||||
| 	-DHZ=100 | ||||
|  | ||||
| X11_INCLUDES = -I/usr/local/include | ||||
|  | ||||
| CFLAGS += $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) $(X11_INCLUDES) -ffast-math -pedantic | ||||
|  | ||||
| CXXFLAGS += $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) $(X11_INCLUDES) | ||||
|  | ||||
| GLUT_CFLAGS = -fexceptions | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| EXTRA_LIB_PATH = -L/usr/local/lib | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) $(EXTRA_LIB_PATH) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lXext -lXmu -lXi -lX11 -lm | ||||
							
								
								
									
										55
									
								
								configs/freebsd-dri
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								configs/freebsd-dri
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,55 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for freebsd-dri: FreeBSD DRI hardware drivers | ||||
|  | ||||
| include $(TOP)/configs/freebsd | ||||
|  | ||||
| CONFIG_NAME = freebsd-dri | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
| WARN_FLAGS = -Wall | ||||
| OPT_FLAGS = -O -g | ||||
|  | ||||
| EXPAT_INCLUDES = -I/usr/local/include | ||||
| X11_INCLUDES = -I/usr/local/include | ||||
| DEFINES = -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \ | ||||
| 	-DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \ | ||||
| 	-DHAVE_ALIAS | ||||
|  | ||||
| CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) -Wmissing-prototypes -std=c99 -Wundef -ffast-math \ | ||||
| 	$(ASM_FLAGS) $(X11_INCLUDES) $(DEFINES) | ||||
|  | ||||
| CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) -Wall -ansi -pedantic $(ASM_FLAGS) $(X11_INCLUDES)  | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| ASM_SOURCES =  | ||||
| MESA_ASM_SOURCES =  | ||||
|  | ||||
| # Library/program dependencies | ||||
| LIBDRM_CFLAGS = `pkg-config --cflags libdrm` | ||||
| LIBDRM_LIB = `pkg-config --libs libdrm` | ||||
| DRI_LIB_DEPS = -L/usr/local/lib -lm -pthread -lexpat $(LIBDRM_LIB) | ||||
| GL_LIB_DEPS = -L/usr/local/lib -lX11 -lXext -lXxf86vm -lXdamage -lXfixes \ | ||||
| 	-lm -pthread $(LIBDRM_LIB) | ||||
|  | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/local/lib -lGLU -lGL -lX11 -lXmu -lXt -lXi -lm | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/local/lib -lGL -lXt -lX11 | ||||
|  | ||||
|  | ||||
| # Directories | ||||
| SRC_DIRS = glx/x11 gallium mesa glu glut/glx glew glw | ||||
| DRIVER_DIRS = dri | ||||
| PROGRAM_DIRS =  | ||||
| WINDOW_SYSTEM=dri | ||||
|  | ||||
| DRM_SOURCE_PATH=$(TOP)/../drm | ||||
|  | ||||
| # ffb and gamma are missing because they have not been converted to use the new | ||||
| # interface. | ||||
| DRI_DIRS = i810 i915 i965 mach64 mga r128 r200 r300 radeon tdfx \ | ||||
| 	   unichrome savage sis | ||||
|  | ||||
							
								
								
									
										10
									
								
								configs/freebsd-dri-amd64
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								configs/freebsd-dri-amd64
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for freebsd-dri-amd64: FreeBSD DRI hardware drivers | ||||
|  | ||||
| include $(TOP)/configs/freebsd-dri | ||||
|  | ||||
| CONFIG_NAME = freebsd-dri-x86-64 | ||||
|  | ||||
| ASM_FLAGS = -DUSE_X86_64_ASM | ||||
| MESA_ASM_SOURCES = $(X86-64_SOURCES) | ||||
| GLAPI_ASM_SOURCES = $(X86-64_API) | ||||
							
								
								
									
										13
									
								
								configs/freebsd-dri-x86
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								configs/freebsd-dri-x86
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for freebsd-dri: FreeBSD DRI hardware drivers | ||||
|  | ||||
| include $(TOP)/configs/freebsd-dri | ||||
|  | ||||
| CONFIG_NAME = freebsd-dri-x86 | ||||
|  | ||||
| # Unnecessary on x86, generally. | ||||
| PIC_FLAGS =  | ||||
|  | ||||
| ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM | ||||
| MESA_ASM_SOURCES = $(X86_SOURCES) | ||||
| GLAPI_ASM_SOURCES = $(X86_API) | ||||
							
								
								
									
										14
									
								
								configs/hpux10
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								configs/hpux10
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| # Configuration for HPUX v10, shared libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux10 | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = -O +DAportable +z -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM | ||||
| CXXFLAGS = -O +DAportable +Z -Ae -D_HPUX_SOURCE | ||||
|  | ||||
| APP_LIB_DEPS = -$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm | ||||
							
								
								
									
										20
									
								
								configs/hpux10-gcc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								configs/hpux10-gcc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,20 @@ | ||||
| # Configuration for HPUX v10, with gcc | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux10-gcc | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
|  | ||||
| CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include  -DUSE_XSHM | ||||
| CXXFLAGS = -ansi -O3 -D_HPUX_SOURCE | ||||
| GLUT_CFLAGS = -fexceptions | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm | ||||
|  | ||||
							
								
								
									
										30
									
								
								configs/hpux10-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								configs/hpux10-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| # Configuration for HPUX v10, static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux10-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = -O +DAportable +z -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM | ||||
| CXXFLAGS = -O +DAportable +Z -Ae -D_HPUX_SOURCE | ||||
|  | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Library/program dependencies (static libs don't have dependencies) | ||||
| GL_LIB_DEPS =  | ||||
| OSMESA_LIB_DEPS =  | ||||
| GLU_LIB_DEPS =  | ||||
| GLUT_LIB_DEPS =  | ||||
| GLW_LIB_DEPS =  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++ | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm -lstdc++ | ||||
							
								
								
									
										30
									
								
								configs/hpux11-32
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								configs/hpux11-32
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| # Configuration for HPUX v11 | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux11-32 | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = +z -Ae -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS | ||||
|  | ||||
| CXXFLAGS = +z -Ae -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS | ||||
|  | ||||
| MKLIB_OPTIONS = | ||||
|  | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Library/program dependencies | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) | ||||
| GL_LIB_DEPS = -L/usr/lib/X11R6/ -L/usr/contrib/X11R6/lib/ -lXext -lXt -lXi -lX11 -lm -lpthread | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lCsup -lcl | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(GL_LIB_DEPS) | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS) | ||||
							
								
								
									
										27
									
								
								configs/hpux11-32-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								configs/hpux11-32-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | ||||
| # Configuration for HPUX v11, static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux11-32-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS | ||||
|  | ||||
| CXXFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS | ||||
|  | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Library/program dependencies | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6/ -L/usr/contrib/X11R6/lib/ -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread -lCsup -lcl | ||||
|  | ||||
							
								
								
									
										26
									
								
								configs/hpux11-32-static-nothreads
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								configs/hpux11-32-static-nothreads
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| # Configuration for HPUX v11, static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux11-32-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM | ||||
|  | ||||
| CXXFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include | ||||
|  | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Library/program dependencies | ||||
| APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm | ||||
							
								
								
									
										31
									
								
								configs/hpux11-64
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								configs/hpux11-64
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,31 @@ | ||||
| # Configuration for HPUX v11, 64-bit | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux11-64 | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = +z -Ae +DD64 -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS | ||||
|  | ||||
| CXXFLAGS = +z -Ae +DD64 -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS | ||||
|  | ||||
| MKLIB_OPTIONS = | ||||
|  | ||||
| LIB_DIR = lib64 | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Library/program dependencies | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) | ||||
| GL_LIB_DEPS = -L/usr/lib/X11R6/pa20_64 -L/usr/contrib/X11R6/lib/pa20_64 -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lCsup -lcl | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(GL_LIB_DEPS) | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS) | ||||
							
								
								
									
										27
									
								
								configs/hpux11-64-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								configs/hpux11-64-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | ||||
| # Configuration for HPUX v11, 64-bit, static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux11-64-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = -O +DA2.0W -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS | ||||
|  | ||||
| CXXFLAGS = -O +DA2.0W -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS | ||||
|  | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| LIB_DIR = lib64 | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Library/program dependencies | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6/pa20_64 -L/usr/contrib/X11R6/lib/pa20_64 -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread -lCsup -lcl | ||||
							
								
								
									
										30
									
								
								configs/hpux11-ia64
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								configs/hpux11-ia64
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| # Configuration for HPUX IA64 v11, 64-bit | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux11-ia64 | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = +z -Ae +DD64 -O +DSmckinley -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS | ||||
|  | ||||
| CXXFLAGS = +z -Ae +DD64 -O +DSmckinley -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS | ||||
|  | ||||
| MKLIB_OPTIONS = | ||||
|  | ||||
| LIB_DIR = lib64 | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.so | ||||
| GLU_LIB_NAME = libGLU.so | ||||
| GLUT_LIB_NAME = libglut.so | ||||
| GLW_LIB_NAME = libGLw.so | ||||
| OSMESA_LIB_NAME = libOSMesa.so | ||||
|  | ||||
| # Library/program dependencies | ||||
| GL_LIB_DEPS = -L/usr/lib/X11R6/ -L/usr/contrib/X11R6/lib/ -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lCsup -lcl | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(GL_LIB_DEPS) | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS) | ||||
							
								
								
									
										27
									
								
								configs/hpux11-ia64-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								configs/hpux11-ia64-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | ||||
| # Configuration for HPUX v11, 64-bit, static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux11-ia64-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = -O +DD64 -Ae -D_HPUX_SOURCE +DSmckinley -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS | ||||
|  | ||||
| CXXFLAGS = -O +DD64 -Ae -D_HPUX_SOURCE +DSmckinley -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS | ||||
|  | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| LIB_DIR = lib64 | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
| # Library/program dependencies | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lXt -lX11 -lpthread -lm -lCsup -lcl | ||||
							
								
								
									
										16
									
								
								configs/hpux9
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								configs/hpux9
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| # Configuration for HPUX v9, shared libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux9 | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| # XXX fix this | ||||
| CXX = c++ | ||||
|  | ||||
| CFLAGS = +z -O +Olibcalls +ESlit -Ae +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM | ||||
| CXXFLAGS = +z -O +Olibcalls +ESlit -Ae +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R5 -s -Wl,+s,-B,nonfatal,-B,immediate -lXext -lXmu -lXi -lX11 -lm | ||||
|  | ||||
							
								
								
									
										14
									
								
								configs/hpux9-gcc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								configs/hpux9-gcc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| # Configuration for HPUX v10, shared libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = hpux9-gcc | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = aCC | ||||
|  | ||||
| CFLAGS = -O +DAportable +z -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM | ||||
| CXXFLAGS = -O +DAportable +Z -Ae -D_HPUX_SOURCE | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm | ||||
							
								
								
									
										17
									
								
								configs/irix6-64
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								configs/irix6-64
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| # Configuration for IRIX 6.x, make n64 DSOs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = irix6-64 | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = CC | ||||
| CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM -DPTHREADS | ||||
| CXXFLAGS = -64 -O3 -ansi -woff 1174 -DPTHREADS | ||||
|  | ||||
| GLW_SOURCES = GLwDrawA.c GLwMDrawA.c | ||||
|  | ||||
| LIB_DIR = lib64 | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -64 -rpath $(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lpthread -lm | ||||
							
								
								
									
										26
									
								
								configs/irix6-64-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								configs/irix6-64-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| # Configuration for IRIX 6.x, make n64 static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = irix6-64-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = CC | ||||
| CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM -DPTHREADS | ||||
| CXXFLAGS = -64 -O3 -ansi -woff 1174 -DPTHREADS | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| GLW_SOURCES = GLwDrawA.c GLwMDrawA.c | ||||
|  | ||||
| LIB_DIR = lib64 | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -64 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm -lC | ||||
|  | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
|  | ||||
							
								
								
									
										17
									
								
								configs/irix6-n32
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								configs/irix6-n32
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| # Configuration for IRIX 6.x, make n32 DSOs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = irix6-n32 | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = CC | ||||
| CFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1521,1552 -DUSE_XSHM -DPTHREADS | ||||
| CXXFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1552 -DPTHREADS | ||||
|  | ||||
| GLW_SOURCES = GLwDrawA.c GLwMDrawA.c | ||||
|  | ||||
| LIB_DIR = lib32 | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -n32 -rpath $(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lfpe -lpthread -lm | ||||
							
								
								
									
										25
									
								
								configs/irix6-n32-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								configs/irix6-n32-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,25 @@ | ||||
| # Configuration for IRIX 6.x, make n32 static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = irix6-n32-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = CC | ||||
| CFLAGS = -n32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM -DPTHREADS | ||||
| CXXFLAGS = -n32 -mips2 -O2 -ansi -woff 3262,3666 -DPTHREADS | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| GLW_SOURCES = GLwDrawA.c GLwMDrawA.c | ||||
|  | ||||
| LIB_DIR = lib32 | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -n32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm -lC | ||||
|  | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
							
								
								
									
										18
									
								
								configs/irix6-o32
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								configs/irix6-o32
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | ||||
| # Configuration for IRIX 6.x, make o32 DSOs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = irix6-o32 | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = CC | ||||
| CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM | ||||
| CXXFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666 | ||||
|  | ||||
| GLW_SOURCES = GLwDrawA.c GLwMDrawA.c | ||||
|  | ||||
| LIB_DIR = lib32 | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -32 -rpath $(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm | ||||
|  | ||||
							
								
								
									
										25
									
								
								configs/irix6-o32-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								configs/irix6-o32-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,25 @@ | ||||
| # Configuration for IRIX 6.x, make o32 static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = irix6-o32-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = cc | ||||
| CXX = CC | ||||
| CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM | ||||
| CXXFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666 | ||||
| MKLIB_OPTIONS = -static | ||||
|  | ||||
| GLW_SOURCES = GLwDrawA.c GLwMDrawA.c | ||||
|  | ||||
| LIB_DIR = lib32 | ||||
|  | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lC | ||||
|  | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
							
								
								
									
										38
									
								
								configs/linux
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								configs/linux
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | ||||
| # Configuration for generic Linux | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
|  | ||||
| OPT_FLAGS  = -O3 -g | ||||
| PIC_FLAGS  = -fPIC | ||||
|  | ||||
| # Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.  Add -m32 | ||||
| # to build properly on 64-bit platforms. | ||||
|  | ||||
| ARCH_FLAGS ?= | ||||
|  | ||||
| DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \ | ||||
| 	-D_BSD_SOURCE -D_GNU_SOURCE \ | ||||
| 	-DPTHREADS -DUSE_XSHM -DHAVE_POSIX_MEMALIGN | ||||
|  | ||||
| X11_INCLUDES = -I/usr/X11R6/include | ||||
|  | ||||
| CFLAGS = -Wall -Wmissing-prototypes -Wdeclaration-after-statement \ | ||||
| 	-Wpointer-arith $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \ | ||||
| 	$(DEFINES) $(ASM_FLAGS) $(X11_INCLUDES) -std=c99 -ffast-math | ||||
|  | ||||
| CXXFLAGS = -Wall -Wpointer-arith $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \ | ||||
| 	$(DEFINES) $(X11_INCLUDES) | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| GLUT_CFLAGS = -fexceptions | ||||
|  | ||||
| EXTRA_LIB_PATH = -L/usr/X11R6/lib | ||||
							
								
								
									
										22
									
								
								configs/linux-alpha
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								configs/linux-alpha
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,22 @@ | ||||
| # Configuration for Linux on Alpha | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux-alpha | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
| CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE -DUSE_XSHM | ||||
| CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE | ||||
| GLUT_CFLAGS = -fexceptions | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11 | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm | ||||
|  | ||||
							
								
								
									
										31
									
								
								configs/linux-alpha-static
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								configs/linux-alpha-static
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,31 @@ | ||||
| # Configuration for Linux on Alpha, static libs | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux-alpha-static | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
| CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE -DUSE_XSHM | ||||
| CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE | ||||
| GLUT_CFLAGS = -fexceptions | ||||
| MKLIB_OPTIONS = -static | ||||
| PIC_FLAGS = | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| # Library names (actual file names) | ||||
| GL_LIB_NAME = libGL.a | ||||
| GLU_LIB_NAME = libGLU.a | ||||
| GLUT_LIB_NAME = libglut.a | ||||
| GLW_LIB_NAME = libGLw.a | ||||
| OSMESA_LIB_NAME = libOSMesa.a | ||||
|  | ||||
|  | ||||
| GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11 | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -L/usr/X11R6/lib -lX11 -lm | ||||
							
								
								
									
										67
									
								
								configs/linux-cell
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								configs/linux-cell
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,67 @@ | ||||
| # linux-cell  (non-debug build) | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux-cell | ||||
|  | ||||
|  | ||||
| # Omiting other gallium drivers: | ||||
| GALLIUM_DRIVERS_DIRS = cell softpipe trace | ||||
|  | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = ppu32-gcc | ||||
| CXX = ppu32-g++ | ||||
| HOST_CC = gcc | ||||
| APP_CC = gcc | ||||
| APP_CXX = g++ | ||||
|  | ||||
| OPT_FLAGS = -O3 | ||||
|  | ||||
| # Cell SDK location | ||||
| ## For SDK 2.1: (plus, remove -DSPU_MAIN_PARAM_LONG_LONG below) | ||||
| #SDK = /opt/ibm/cell-sdk/prototype/sysroot/usr | ||||
| ## For SDK 3.0: | ||||
| SDK = /opt/cell/sdk/usr | ||||
|  | ||||
|  | ||||
| CFLAGS = $(OPT_FLAGS) -Wall -Winline -Wmissing-prototypes \ | ||||
| 	-fPIC -m32 -std=c99 -mabi=altivec -maltivec \ | ||||
| 	-I. -I$(SDK)/include \ | ||||
| 	-DGALLIUM_CELL -DUSE_XSHM -D_BSD_SOURCE -D_SVID_SOURCE | ||||
|  | ||||
| CXXFLAGS = $(CFLAGS) | ||||
|  | ||||
| # Omitting glw here: | ||||
| SRC_DIRS = gallium mesa gallium/winsys glu glut/glx glew | ||||
|  | ||||
| # Build no traditional Mesa drivers: | ||||
| DRIVER_DIRS = | ||||
|  | ||||
|  | ||||
| MKDEP_OPTIONS = -fdepend -Y | ||||
|  | ||||
|  | ||||
| GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lm -lpthread \ | ||||
| 	-L$(SDK)/lib -m32 -Wl,-m,elf32ppc -R$(SDK)/lib -lspe2 | ||||
|  | ||||
|  | ||||
| CELL_SPU_LIB = $(TOP)/src/gallium/drivers/cell/spu/g3d_spu.a | ||||
|  | ||||
|  | ||||
| ### SPU stuff | ||||
|  | ||||
| SPU_CC = spu-gcc | ||||
|  | ||||
| SPU_CFLAGS = $(OPT_FLAGS) -W -Wall -Winline -Wmissing-prototypes -Wno-main \ | ||||
| 	-I. -I$(SDK)/spu/include -I$(TOP)/src/mesa/ $(INCLUDE_DIRS) \ | ||||
| 	-DSPU_MAIN_PARAM_LONG_LONG \ | ||||
| 	-include spu_intrinsics.h | ||||
|  | ||||
| SPU_LFLAGS = -L$(SDK)/spu/lib -Wl,-N -lmisc -lm | ||||
|  | ||||
| SPU_AR = ppu-ar | ||||
| SPU_AR_FLAGS = -qcs | ||||
|  | ||||
| SPU_EMBED = ppu32-embedspu | ||||
| SPU_EMBED_FLAGS = -m32 | ||||
							
								
								
									
										10
									
								
								configs/linux-cell-debug
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								configs/linux-cell-debug
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| # linux-cell-debug | ||||
|  | ||||
| include $(TOP)/configs/linux-cell | ||||
|  | ||||
| # just override name and OPT_FLAGS here: | ||||
|  | ||||
| CONFIG_NAME = linux-cell-debug | ||||
|  | ||||
| OPT_FLAGS = -g -DDEBUG | ||||
|  | ||||
							
								
								
									
										9
									
								
								configs/linux-debug
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								configs/linux-debug
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| # Configuration for debugging on Linux | ||||
|  | ||||
| include $(TOP)/configs/linux | ||||
|  | ||||
| CONFIG_NAME = linux-debug | ||||
|  | ||||
| OPT_FLAGS = -g | ||||
| CFLAGS += -ansi -pedantic | ||||
| DEFINES += -DDEBUG -DDEBUG_MATH | ||||
							
								
								
									
										38
									
								
								configs/linux-directfb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								configs/linux-directfb
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | ||||
| # Configuration for DirectFB | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux-directfb | ||||
|  | ||||
| # Compiler and flags | ||||
| CC  = gcc | ||||
| CXX = g++ | ||||
|  | ||||
| CFLAGS   = -Wall -O3 -ffast-math -fPIC -std=c99 -D_GNU_SOURCE -D_POSIX_SOURCE -D_SVID_SOURCE \ | ||||
|          -D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -DPTHREADS | ||||
|  | ||||
| CXXFLAGS = -Wall -O3 -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE    | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| HAVE_X86 = $(shell uname -m | grep 'i[3-6]86' >/dev/null && echo yes) | ||||
| ifeq ($(HAVE_X86), yes) | ||||
|      CFLAGS   += -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM | ||||
|      CXXFLAGS += -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM | ||||
|      MESA_ASM_SOURCES = $(X86_SOURCES) | ||||
|      GLAPI_ASM_SOURCES = $(X86_API) | ||||
| endif | ||||
|  | ||||
| # Directories | ||||
| SRC_DIRS     = gallium mesa glu glut/directfb glew | ||||
| GLU_DIRS     = sgi | ||||
| DRIVER_DIRS  = directfb | ||||
| PROGRAM_DIRS = demos directfb | ||||
|  | ||||
| # Library/program dependencies | ||||
| GL_LIB_DEPS   = -lm -lpthread | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLU_LIB) | ||||
| APP_LIB_DEPS  = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLU_LIB) -l$(GLUT_LIB) | ||||
|  | ||||
							
								
								
									
										67
									
								
								configs/linux-dri
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								configs/linux-dri
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,67 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux-dri | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
|  | ||||
| #MKDEP = /usr/X11R6/bin/makedepend | ||||
| #MKDEP = gcc -M | ||||
| #MKDEP_OPTIONS = -MF depend | ||||
|  | ||||
| OPT_FLAGS  = -O2 -g | ||||
| PIC_FLAGS  = -fPIC | ||||
|  | ||||
| # Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support. | ||||
| ARCH_FLAGS ?= | ||||
|  | ||||
| DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \ | ||||
| 	-D_BSD_SOURCE -D_GNU_SOURCE \ | ||||
| 	-DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \ | ||||
| 	-DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \ | ||||
| 	-DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN | ||||
|  | ||||
| X11_INCLUDES = -I/usr/X11R6/include | ||||
|  | ||||
| CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \ | ||||
| 	$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS) | ||||
|  | ||||
| CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) | ||||
|  | ||||
| GLUT_CFLAGS = -fexceptions | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| MESA_ASM_SOURCES =  | ||||
|  | ||||
| # Library/program dependencies | ||||
| EXTRA_LIB_PATH=-L/usr/X11R6/lib | ||||
|  | ||||
| LIBDRM_CFLAGS = $(shell pkg-config --cflags libdrm) | ||||
| LIBDRM_LIB = $(shell pkg-config --libs libdrm) | ||||
| DRI_LIB_DEPS  = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl $(LIBDRM_LIB) | ||||
| GL_LIB_DEPS   = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lXdamage -lXfixes \ | ||||
| 		-lm -lpthread -ldl $(LIBDRM_LIB) | ||||
|  | ||||
|  | ||||
| # Directories | ||||
| SRC_DIRS := glx/x11 egl $(SRC_DIRS) | ||||
| PROGRAM_DIRS := egl $(PROGRAM_DIRS) | ||||
|  | ||||
| # EGL directories | ||||
| EGL_DRIVERS_DIRS = demo glx | ||||
|  | ||||
| DRIVER_DIRS = dri | ||||
| WINDOW_SYSTEM = dri | ||||
| GALLIUM_WINSYS_DIRS = drm | ||||
| GALLIUM_WINSYS_DRM_DIRS = vmware intel | ||||
| GALLIUM_STATE_TRACKERS_DIRS = egl | ||||
|  | ||||
| DRI_DIRS = i810 i915 i965 mach64 mga r128 r200 r300 radeon \ | ||||
| 	savage sis tdfx unichrome ffb swrast | ||||
							
								
								
									
										16
									
								
								configs/linux-dri-debug
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								configs/linux-dri-debug
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for linux-dri-debug: Linux DRI hardware drivers for XFree86 & others | ||||
|  | ||||
| include $(TOP)/configs/linux-dri | ||||
|  | ||||
| CONFIG_NAME = linux-dri-debug | ||||
| OPT_FLAGS  = -O0 -g | ||||
| ARCH_FLAGS = -DDEBUG | ||||
|  | ||||
| # Helpful to reduce the amount of stuff that gets built sometimes: | ||||
| #DRI_DIRS = i915tex i915  | ||||
| #DRI_DIRS = i965 | ||||
| #DRI_DIRS = radeon r200 r300 | ||||
| #DRI_DIRS = unichrome sis | ||||
| #DRI_DIRS = i810 mga r128 tdfx | ||||
|  | ||||
							
								
								
									
										17
									
								
								configs/linux-dri-ppc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								configs/linux-dri-ppc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others | ||||
|  | ||||
| include $(TOP)/configs/linux-dri | ||||
|  | ||||
| CONFIG_NAME = linux-dri-ppc | ||||
|  | ||||
| OPT_FLAGS = -Os -mcpu=603 | ||||
| PIC_FLAGS = -fPIC | ||||
|  | ||||
| ASM_FLAGS = -DUSE_PPC_ASM -DUSE_VMX_ASM | ||||
| MESA_ASM_SOURCES = $(PPC_SOURCES) | ||||
|  | ||||
| # Build only the drivers for cards that exist on PowerPC.  At some point MGA | ||||
| # will be added, but not yet. | ||||
| DRI_DIRS = mach64 r128 r200 r300 radeon tdfx | ||||
|  | ||||
							
								
								
									
										13
									
								
								configs/linux-dri-x86
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								configs/linux-dri-x86
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others | ||||
|  | ||||
| include $(TOP)/configs/linux-dri | ||||
|  | ||||
| CONFIG_NAME = linux-dri-x86 | ||||
|  | ||||
| ARCH_FLAGS = -m32 -mmmx -msse -msse2 | ||||
|  | ||||
| ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM | ||||
| MESA_ASM_SOURCES = $(X86_SOURCES) | ||||
| GLAPI_ASM_SOURCES = $(X86_API) | ||||
|  | ||||
							
								
								
									
										24
									
								
								configs/linux-dri-x86-64
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								configs/linux-dri-x86-64
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,24 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others | ||||
|  | ||||
| include $(TOP)/configs/linux-dri | ||||
|  | ||||
| CONFIG_NAME = linux-dri-x86-64 | ||||
|  | ||||
| ARCH_FLAGS = -m64 | ||||
|  | ||||
| ASM_FLAGS = -DUSE_X86_64_ASM | ||||
| MESA_ASM_SOURCES = $(X86-64_SOURCES) | ||||
| GLAPI_ASM_SOURCES = $(X86-64_API) | ||||
|  | ||||
| LIB_DIR = lib64 | ||||
|  | ||||
| # Library/program dependencies | ||||
| EXTRA_LIB_PATH=-L/usr/X11R6/lib64 | ||||
|  | ||||
| # ffb, gamma, and sis are missing because they have not be converted to use | ||||
| # the new interface.  i810 are missing because there is no x86-64 | ||||
| # system where they could *ever* be used. | ||||
| # | ||||
| DRI_DIRS = i915 i965 mach64 mga r128 r200 r300 radeon savage tdfx unichrome | ||||
|  | ||||
							
								
								
									
										72
									
								
								configs/linux-dri-xcb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								configs/linux-dri-xcb
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,72 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux-dri-xcb | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
|  | ||||
| #MKDEP = /usr/X11R6/bin/makedepend | ||||
| #MKDEP = gcc -M | ||||
| #MKDEP_OPTIONS = -MF depend | ||||
|  | ||||
| OPT_FLAGS  = -g | ||||
| PIC_FLAGS  = -fPIC | ||||
|  | ||||
| # Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support. | ||||
| ARCH_FLAGS ?= | ||||
|  | ||||
| DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \ | ||||
| 	-D_BSD_SOURCE -D_GNU_SOURCE \ | ||||
| 	-DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \ | ||||
| 	-DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \ | ||||
|         -DHAVE_ALIAS -DUSE_XCB -DHAVE_POSIX_MEMALIGN | ||||
|  | ||||
| X11_INCLUDES = $(shell pkg-config --cflags-only-I x11) $(shell pkg-config --cflags-only-I xcb) $(shell pkg-config --cflags-only-I x11-xcb) $(shell pkg-config --cflags-only-I xcb-glx) | ||||
|  | ||||
| CFLAGS = -Wall -Wmissing-prototypes $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \ | ||||
| 	$(DEFINES) $(ASM_FLAGS) -std=c99 -ffast-math  | ||||
|  | ||||
| CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| MESA_ASM_SOURCES =  | ||||
|  | ||||
| # Library/program dependencies | ||||
| EXTRA_LIB_PATH=$(shell pkg-config --libs-only-L x11) | ||||
|  | ||||
| LIBDRM_CFLAGS = $(shell pkg-config --cflags libdrm) | ||||
| LIBDRM_LIB = $(shell pkg-config --libs libdrm) | ||||
| DRI_LIB_DEPS  = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl $(LIBDRM_LIB) | ||||
| GL_LIB_DEPS   = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lm -lpthread -ldl \ | ||||
|                 $(LIBDRM_LIB) $(shell pkg-config --libs xcb) $(shell pkg-config --libs x11-xcb) $(shell pkg-config --libs xcb-glx) | ||||
|  | ||||
|  | ||||
| # This is now 0 by default since it seems to confuse the hell out of people | ||||
| # and generate a lot of extra noise on bugzilla.  If you need to build with | ||||
| # EGL, do 'make linux-dri USING_EGL=1' | ||||
|  | ||||
| USING_EGL=0 | ||||
|  | ||||
| # Directories | ||||
| ifeq ($(USING_EGL), 1) | ||||
| SRC_DIRS = egl glx/x11 gallium mesa glu glut/glx glew glw | ||||
| PROGRAM_DIRS = egl | ||||
| else | ||||
| SRC_DIRS = glx/x11 gallium mesa glu glut/glx glew glw | ||||
| PROGRAM_DIRS = xdemos | ||||
| endif | ||||
|  | ||||
| DRIVER_DIRS = dri | ||||
| WINDOW_SYSTEM=dri | ||||
|  | ||||
| # gamma are missing because they have not been converted to use the new | ||||
| # interface. | ||||
| DRI_DIRS = i810 i915 mach64 mga r128 r200 r300 radeon \ | ||||
| 	savage sis tdfx unichrome ffb  | ||||
							
								
								
									
										65
									
								
								configs/linux-egl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								configs/linux-egl
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,65 @@ | ||||
| # -*-makefile-*- | ||||
| # Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux-dri | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
|  | ||||
| #MKDEP = /usr/X11R6/bin/makedepend | ||||
| #MKDEP = gcc -M | ||||
| #MKDEP_OPTIONS = -MF depend | ||||
|  | ||||
| OPT_FLAGS  = -O -g | ||||
| PIC_FLAGS  = -fPIC | ||||
|  | ||||
| # Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support. | ||||
| ARCH_FLAGS ?= | ||||
|  | ||||
| DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \ | ||||
| 	-D_BSD_SOURCE -D_GNU_SOURCE \ | ||||
| 	-DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \ | ||||
| 	-DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \ | ||||
| 	-DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN | ||||
|  | ||||
| X11_INCLUDES = -I/usr/X11R6/include | ||||
|  | ||||
| CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \ | ||||
| 	$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS) | ||||
|  | ||||
| CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) | ||||
|  | ||||
|  | ||||
| MESA_ASM_SOURCES =  | ||||
|  | ||||
| # Library/program dependencies | ||||
| EXTRA_LIB_PATH=-L/usr/X11R6/lib | ||||
|  | ||||
| LIBDRM_CFLAGS = $(shell pkg-config --cflags libdrm) | ||||
| LIBDRM_LIB = $(shell pkg-config --libs libdrm) | ||||
| DRI_LIB_DEPS  = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl $(LIBDRM_LIB) | ||||
| GL_LIB_DEPS   = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lXdamage -lXfixes \ | ||||
| 		-lm -lpthread -ldl \ | ||||
|                 $(LIBDRM_LIB) | ||||
|  | ||||
|  | ||||
| # This is now 0 by default since it seems to confuse the hell out of people | ||||
| # and generate a lot of extra noise on bugzilla.  If you need to build with | ||||
| # EGL, do 'make linux-dri USING_EGL=1' | ||||
|  | ||||
| USING_EGL=0 | ||||
|  | ||||
| # Directories | ||||
| SRC_DIRS = gallium mesa gallium/winsys glu egl | ||||
| PROGRAM_DIRS = egl | ||||
|  | ||||
| DRIVER_DIRS = dri | ||||
| WINDOW_SYSTEM = dri | ||||
| GALLIUM_WINSYS_DIRS = egl_drm | ||||
|  | ||||
| # gamma are missing because they have not been converted to use the new | ||||
| # interface. | ||||
| DRI_DIRS = intel  | ||||
							
								
								
									
										19
									
								
								configs/linux-fbdev
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								configs/linux-fbdev
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | ||||
| # Configuration for Linux fbdev interface | ||||
|  | ||||
| include $(TOP)/configs/linux | ||||
|  | ||||
| CONFIG_NAME = linux-fbdev | ||||
|  | ||||
| CFLAGS = -O3 -ffast-math -ansi -pedantic -fPIC -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS -DUSE_GLFBDEV_DRIVER | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| SRC_DIRS = gallium mesa glu glut/fbdev glew | ||||
| DRIVER_DIRS = fbdev osmesa | ||||
| PROGRAM_DIRS = fbdev demos redbook samples | ||||
|  | ||||
| GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread | ||||
| OSMESA_LIB_DEPS = -lm -lpthread | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lgpm -lm | ||||
|  | ||||
							
								
								
									
										23
									
								
								configs/linux-glide
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								configs/linux-glide
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | ||||
| # Configuration for generic Linux with 3Dfx Glide driver | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux-glide | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = gcc | ||||
| CXX = g++ | ||||
|  | ||||
| CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DFX -I/usr/include/glide -I/usr/local/glide/include | ||||
| CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE | ||||
| GLUT_CFLAGS = -fexceptions | ||||
|  | ||||
| # Work around aliasing bugs - developers should comment this out | ||||
| CFLAGS += -fno-strict-aliasing | ||||
| CXXFLAGS += -fno-strict-aliasing | ||||
|  | ||||
| # Library/program dependencies | ||||
| GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -L/usr/local/glide/lib -lglide3x -lm -lpthread | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11 | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/local/glide/lib -lglide3x -lm | ||||
							
								
								
									
										21
									
								
								configs/linux-ia64-icc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								configs/linux-ia64-icc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
| # Configuration for Linux with Intel C compiler | ||||
|  | ||||
| include $(TOP)/configs/default | ||||
|  | ||||
| CONFIG_NAME = linux-icc | ||||
|  | ||||
| # Compiler and flags | ||||
| CC = icc | ||||
| CXX = icpc | ||||
| CFLAGS = -O3 -ansi -KPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include | ||||
| CXXFLAGS = -O3 -ansi -KPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include | ||||
| GLUT_CFLAGS = -fexceptions | ||||
| MKLIB_OPTIONS = -arch icc-istatic | ||||
|  | ||||
| GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lpthread | ||||
| GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)  | ||||
| GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi | ||||
| GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS) | ||||
| APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) | ||||
|  | ||||
|  | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user