'make clean' does not remove all build artifacts since the switch to automake using current git master (37d699a scons: Add glsl/glcpp to the include path.) what should work, but does not: 1. git clean -fdx 2. autogen.sh --enable-32-bit ... 3. make && make install 4. make clean 5. autogen.sh .... 6. make -> fails what still does work is: 1. git clean -fdx 2. autogen.sh --enable-32-bit ... 3. make && make install 4. git clean -fdx 5. autogen.sh .... 6. make && make install Log of the second make run (64bit after 32bit build): ../Makefile.dri:110: depend: No such file or directory ../Makefile.xvmc:73: depend: No such file or directory autoreconf: Entering directory `.' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal main::scan_file() called too early to check prototype at /usr/bin/aclocal line 642. autoreconf: configure.ac: tracing autoreconf: running: libtoolize --copy main::scan_file() called too early to check prototype at /usr/bin/aclocal line 642. autoreconf: running: /usr/bin/autoconf autoreconf: configure.ac: not using Autoheader autoreconf: running: automake --add-missing --copy --no-force autoreconf: Leaving directory `.' configure: WARNING: Floating-point textures enabled. configure: WARNING: Please consult docs/patents.txt with your lawyer before building Mesa. ar: creating libglapi.a glsl_lexer.cpp: In function 'int yy_get_next_buffer(yyscan_t)': glsl_lexer.cpp:2880:3: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] ar: creating libglsl.a main/ff_fragment_shader.cpp: In function 'ir_rvalue* emit_texenv(texenv_fragment_program*, GLuint)': main/ff_fragment_shader.cpp:894:3: warning: narrowing conversion of '(1 << ((int)rgb_shift))' from 'int' to 'float' inside { } is ill-formed in C++11 [-Wnarrowing] main/ff_fragment_shader.cpp:894:3: warning: narrowing conversion of '(1 << ((int)rgb_shift))' from 'int' to 'float' inside { } is ill-formed in C++11 [-Wnarrowing] main/ff_fragment_shader.cpp:894:3: warning: narrowing conversion of '(1 << ((int)rgb_shift))' from 'int' to 'float' inside { } is ill-formed in C++11 [-Wnarrowing] main/ff_fragment_shader.cpp:894:3: warning: narrowing conversion of '(1 << ((int)alpha_shift))' from 'int' to 'float' inside { } is ill-formed in C++11 [-Wnarrowing] ar: creating libmesa.a ar: creating libmesagallium.a ./../main/ff_fragment_shader.cpp: In function 'ir_rvalue* emit_texenv(texenv_fragment_program*, GLuint)': ./../main/ff_fragment_shader.cpp:894:3: warning: narrowing conversion of '(1 << ((int)rgb_shift))' from 'int' to 'float' inside { } is ill-formed in C++11 [-Wnarrowing] ./../main/ff_fragment_shader.cpp:894:3: warning: narrowing conversion of '(1 << ((int)rgb_shift))' from 'int' to 'float' inside { } is ill-formed in C++11 [-Wnarrowing] ./../main/ff_fragment_shader.cpp:894:3: warning: narrowing conversion of '(1 << ((int)rgb_shift))' from 'int' to 'float' inside { } is ill-formed in C++11 [-Wnarrowing] ./../main/ff_fragment_shader.cpp:894:3: warning: narrowing conversion of '(1 << ((int)alpha_shift))' from 'int' to 'float' inside { } is ill-formed in C++11 [-Wnarrowing] glsl_lexer.cpp: In function 'int yy_get_next_buffer(yyscan_t)': glsl_lexer.cpp:2880:3: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] platform_x11.c: In function 'dri2_create_surface': platform_x11.c:208:27: warning: assignment makes integer from pointer without a cast [enabled by default] platform_x11.c: In function 'dri2_copy_buffers': platform_x11.c:847:4: warning: passing argument 3 of 'xcb_create_gc' makes integer from pointer without a cast [enabled by default] In file included from /usr/include/xcb/xcb.h:182:0, from egl_dri2.h:32, from platform_x11.c:40: /usr/include/xcb/xproto.h:10286:1: note: expected 'xcb_drawable_t' but argument is of type 'EGLNativePixmapType' platform_x11.c:855:5: warning: passing argument 3 of 'xcb_copy_area' makes integer from pointer without a cast [enabled by default] In file included from /usr/include/xcb/xcb.h:182:0, from egl_dri2.h:32, from platform_x11.c:40: /usr/include/xcb/xproto.h:10734:1: note: expected 'xcb_drawable_t' but argument is of type 'EGLNativePixmapType' libnurbs/interface/insurfeval.cc: In member function 'void OpenGLSurfaceEvaluator::inEvalUStrip(int, REAL, REAL*, int, REAL, REAL*)': libnurbs/interface/insurfeval.cc:1169:8: warning: variable 'leftMostV' set but not used [-Wunused-but-set-variable] libnurbs/interface/insurfeval.cc: In member function 'void OpenGLSurfaceEvaluator::inEvalVStrip(int, REAL, REAL*, int, REAL, REAL*)': libnurbs/interface/insurfeval.cc:1358:8: warning: variable 'botMostV' set but not used [-Wunused-but-set-variable] libnurbs/nurbtess/directedLine.cc: In function 'directedLine* readAllPolygons(char*)': libnurbs/nurbtess/directedLine.cc:797:7: warning: variable 'result' set but not used [-Wunused-but-set-variable] libnurbs/nurbtess/sampleCompTop.cc: In function 'void sampleCompTop(Real*, vertexArray*, Int, vertexArray*, Int, gridBoundaryChain*, gridBoundaryChain*, Int, Int, Int, Int, Int, primStream*)': libnurbs/nurbtess/sampleCompTop.cc:514:13: warning: variable 'tempTop' set but not used [-Wunused-but-set-variable] libnurbs/nurbtess/sampleCompTop.cc:515:11: warning: variable 'tempLeftStart' set but not used [-Wunused-but-set-variable] ar: creating libgallium.a evergreen_compute_internal.c: In function 'evergreen_set_rat': evergreen_compute_internal.c:306:6: warning: 'fmt.number_type' may be used uninitialized in this function [-Wmaybe-uninitialized] evergreen_compute_internal.c:305:6: warning: 'fmt.format' may be used uninitialized in this function [-Wmaybe-uninitialized] ar: creating librbug.a sp_quad_blend.c: In function 'blend_fallback': sp_quad_blend.c:767:10: warning: 'quadColor2' may be used uninitialized in this function [-Wmaybe-uninitialized] sp_quad_blend.c:952:18: note: 'quadColor2' was declared here ar: creating libsoftpipe.a ar: creating libtrace.a ar: creating libdridrm.a ar: creating libdrisw.a x11/native_ximage.c: In function 'ximage_display_copy_to_pixmap': x11/native_ximage.c:475:27: warning: 'xconf' may be used uninitialized in this function [-Wmaybe-uninitialized] drm/native_drm.c: In function 'native_create_display': drm/native_drm.c:182:21: warning: 'device' may be used uninitialized in this function [-Wmaybe-uninitialized] drm/native_drm.c:159:24: note: 'device' was declared here ar: creating libegl.a ar: creating libgbm.a ar: creating libxvmctracker.a ar: creating libradeonwinsys.a ar: creating libws_null.a ar: creating libwsw.a ar: creating libws_xlib.a ar: creating libswdri.a ../Makefile.dri:110: depend: No such file or directory /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: i386 architecture of input file `../../../../src/mesa/drivers/dri/common/utils.o' is incompatible with i386:x86-64 output /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: i386 architecture of input file `../../../../src/mesa/drivers/dri/common/dri_util.o' is incompatible with i386:x86-64 output /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: i386 architecture of input file `../../../../src/mesa/drivers/dri/common/xmlconfig.o' is incompatible with i386:x86-64 output collect2: error: ld returned 1 exit status g++: error: r600_dri.so.tmp: No such file or directory gmake[3]: *** [r600_dri.so] Error 1 gmake[2]: *** [default] Error 1 gmake[1]: *** [all-recursive] Error 1 make: *** [all-recursive] Error 1
This looks just like a problem caused by still having non-automake Makefiles.
I'm not sure if this is realy true. Looking at the "problematic" .o files there is "src/mesa/drivers/dri/common/utils.o" metioned, which is completly handled by automake IIRC. I test this from time to time and it is still broken (same error)
I can't even build with --enable-32-bit without adding -m32 to CFLAGS/CXXFLAGS manually.
Yes... well I do this too (provide -m32 with CFLAGS). But this never worked and is well known (was mentioned at least a few times on the mesa-dev mailing list), that's why I did not mention it.
You don't have to build a 32bit version to see that 'make clean' doesn't work. Just check if there are any *.o files left after running 'make clean'. They shouldn't be there. I tried looking at this, but automake is like black magic for me ;-)
(In reply to comment #5) > You don't have to build a 32bit version to see that 'make clean' doesn't work. > Just check if there are any *.o files left after running 'make clean'. They > shouldn't be there. > > I tried looking at this, but automake is like black magic for me ;-) I don't see any *.o or *.lo files after make clean. Can you give me a list?
Created attachment 65257 [details] List of .o files remaining after running 'make clean'
Should be fixed with the full transition to automake. Please reopen the bug if you can still reproduce this.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.