# 25-05-2014 - iniciando com o mesa Export includes file: external/mesa/src/gallium/winsys/sw/android/Android.mk -- out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_winsys_sw_android_intermediates/export_includes make: *** No rule to make target `out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_pipe_nvfx_intermediates/export_includes', needed by `out/target/product/x86/obj/SHARED_LIBRARIES/libGLES_mesa_intermediates/import_includes'. Stop. make: *** Waiting for unfinished jobs.... Export includes file: external/mesa/src/gallium/winsys/nouveau/drm/Android.mk -- out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_winsys_nouveau_intermediates/export_includes Done! ## Alterado o arquivo external/mesa/src/egl/main/Android.mk Removida a linha abaixo (marcada com --): # nouveau ifneq ($(filter nouveau, $(MESA_GPU_DRIVERS)),) gallium_DRIVERS += \ libmesa_winsys_nouveau \ -- libmesa_pipe_nvfx \ libmesa_pipe_nv50 \ libmesa_pipe_nvc0 \ libmesa_pipe_nouveau LOCAL_SHARED_LIBRARIES += libdrm_nouveau endif ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ make: *** No rule to make target `out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_pipe_nv50_intermediates/export_includes', needed by `out/target/product/x86/obj/SHARED_LIBRARIES/libGLES_mesa_intermediates/import_includes'. Stop. make: *** Waiting for unfinished jobs.... ## Alterado o arquivo external/mesa/src/egl/main/Android.mk # nouveau ifneq ($(filter nouveau, $(MESA_GPU_DRIVERS)),) gallium_DRIVERS += \ libmesa_winsys_nouveau \ -- libmesa_pipe_nv50 \ -- libmesa_pipe_nvc0 \ libmesa_pipe_nouveau LOCAL_SHARED_LIBRARIES += libdrm_nouveau endif ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ esa Lex: libmesa_program <= external/mesa/src/mesa/program/program_lexer.l In file included from external/mesa/include/c11/threads.h:72:0, from external/mesa/src/mapi/u_thread.h:49, from external/mesa/src/mapi/glapi/glthread.h:4, from external/mesa/src/mapi/glapi/glapi.h:47, from external/mesa/src/mesa/main/mtypes.h:42, from external/mesa/src/mesa/x86/gen_matypes.c:41: external/mesa/include/c11/threads_posix.h: In function 'cnd_timedwait': external/mesa/include/c11/threads_posix.h:140:21: error: storage size of 'abs_time' isn't known external/mesa/include/c11/threads_posix.h: In function 'mtx_init': external/mesa/include/c11/threads_posix.h:182:9: warning: implicit declaration of function 'pthread_mutexattr_settype' [-Wimplicit-function-declaration] external/mesa/include/c11/threads_posix.h: In function 'mtx_timedlock': external/mesa/include/c11/threads_posix.h:214:21: error: storage size of 'ts' isn't known external/mesa/include/c11/threads_posix.h:218:5: warning: implicit declaration of function 'pthread_mutex_timedlock' [-Wimplicit-function-declaration] external/mesa/include/c11/threads_posix.h: In function 'thrd_sleep': external/mesa/include/c11/threads_posix.h:317:21: error: storage size of 'req' isn't known external/mesa/include/c11/threads_posix.h:321:5: warning: implicit declaration of function 'nanosleep' [-Wimplicit-function-declaration] Mesa Yacc: libmesa_program <= external/mesa/src/mesa/program/program_parse.y make: *** [out/host/linux-x86/obj/EXECUTABLES/mesa_gen_matypes_intermediates/x86/gen_matypes.o] Error 1 ## Alterado o arquivo external/mesa/src/mesa/Android.mk # includa a linha abaixo: include $(LOCAL_PATH)/Android.mesa_gen_matypes.mk include $(LOCAL_PATH)/Android.libmesa_glsl_utils.mk include $(LOCAL_PATH)/Android.libmesa_dricore.mk include $(LOCAL_PATH)/Android.libmesa_st_mesa.mk +include external/stlport/libstlport.mk ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ target C++: libmesa_pipe_nouveau <= external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir.cpp In file included from external/mesa/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c:9:0: external/mesa/src/gallium/drivers/nouveau/nouveau_winsys.h:9:28: fatal error: libdrm/nouveau.h: No such file or directory compilation terminated. make: *** [out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_winsys_nouveau_intermediates/nouveau_drm_winsys.o] Error 1 make: *** Waiting for unfinished jobs.... In file included from external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir.cpp:23:0: external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir.h:29:17: fatal error: deque: No such file or directory compilation terminated. make: *** [out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_pipe_nouveau_intermediates/codegen/nv50_ir.o] Error 1 ## Alterado o arquivo external/mesa/src/gallium/drivers/nouveau/nouveau_winsys.h # Alterando o caminho do include nouveau.h #include ## Alterado o arquivo external/mesa/src/gallium/drivers/nouveau/Android.mk # incluida a linha abaixo: LOCAL_MODULE := libmesa_pipe_nouveau + include external/stlport/libstlport.mk include $(GALLIUM_COMMON_MK) include $(BUILD_STATIC_LIBRARY) ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp: In member function 'void nv50_ir::ConstantFolding::expr(nv50_ir::Instruction*, nv50_ir::ImmediateValue&, nv50_ir::ImmediateValue&)': external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp:411:35: error: 'isfinite' was not declared in this scope external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp:411:35: note: suggested alternatives: In file included from external/stlport/stlport/stl/_cstdlib.h:169:0, from external/stlport/stlport/stl/_algobase.h:46, from external/stlport/stlport/stl/_deque.h:34, from external/stlport/stlport/deque:36, from external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir.h:29, from external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp:23: external/stlport/stlport/stl/_cmath.h:546:35: note: '__captured::isfinite' external/stlport/stlport/stl/_cmath.h:546:35: note: '__captured::isfinite' external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp:413:35: error: 'isfinite' was not declared in this scope external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp:413:35: note: suggested alternatives: In file included from external/stlport/stlport/stl/_cstdlib.h:169:0, from external/stlport/stlport/stl/_algobase.h:46, from external/stlport/stlport/stl/_deque.h:34, from external/stlport/stlport/deque:36, from external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir.h:29, from external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp:23: external/stlport/stlport/stl/_cmath.h:546:35: note: '__captured::isfinite' external/stlport/stlport/stl/_cmath.h:546:35: note: '__captured::isfinite' make: *** [out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_pipe_nouveau_intermediates/codegen/nv50_ir_peephole.o] Error 1 ## Alterado o arquivo external/mesa/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp # Incluindo classe na funcao (poderia ser declarado tbem using namespace, mas acho que vai dar assim...) if (i->dnz && i->dType == TYPE_F32) { if (!std::isfinite(a->data.f32)) a->data.f32 = 0.0f; if (!std::isfinite(b->data.f32)) b->data.f32 = 0.0f; } ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ target C: libmesa_pipe_nouveau <= external/mesa/src/gallium/drivers/nouveau/nouveau_screen.c external/mesa/src/gallium/drivers/nouveau/nouveau_screen.c:17:32: fatal error: libdrm/nouveau_drm.h: No such file or directory compilation terminated. make: *** [out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_pipe_nouveau_intermediates/nouveau_screen.o] Error 1 make: *** Waiting for unfinished jobs.... ## Alterado o arquivo external/mesa/src/gallium/drivers/nouveau/nouveau_screen.c # Removido o "libdrm" do path do include para o arquivo nouveau_drm.h #include ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ external/mesa/src/gallium/drivers/nouveau/nouveau_screen.c:137:9: warning: missing initializer [-Wmissing-field-initializers] external/mesa/src/gallium/drivers/nouveau/nouveau_screen.c:137:9: warning: (near initialization for 'nvc0_data.base') [-Wmissing-field-initializers] In file included from external/mesa/src/gallium/drivers/nouveau/nouveau_buffer.c:8:0: external/mesa/src/gallium/drivers/nouveau/nouveau_context.h:5:28: fatal error: libdrm/nouveau.h: No such file or directory compilation terminated. make: *** [out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_pipe_nouveau_intermediates/nouveau_buffer.o] Error 1 make: *** Waiting for unfinished jobs.... ## Alterado o arquivo external/mesa/src/gallium/drivers/nouveau/nouveau_context.h # Acertando o path do include #include ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ target C: libmesa_pipe_nouveau <= external/mesa/src/gallium/drivers/nouveau/nouveau_vp3_video.c In file included from external/mesa/src/gallium/drivers/nouveau/nouveau_vp3_video.c:30:0: external/mesa/src/gallium/drivers/nouveau/nouveau_vp3_video.h:23:28: fatal error: libdrm/nouveau.h: No such file or directory compilation terminated. make: *** [out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_pipe_nouveau_intermediates/nouveau_vp3_video.o] Error 1 make: *** Waiting for unfinished jobs.... ## Alterado o arquivo external/mesa/src/gallium/drivers/nouveau/nouveau_vp3_video.h # Corrigindo caminho do include #include ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ target C++: libmesa_program <= external/mesa/src/mesa/program/sampler.cpp In file included from external/mesa/include/c11/threads.h:72:0, from external/mesa/src/mapi/u_thread.h:49, from external/mesa/src/mapi/glapi/glthread.h:4, from external/mesa/src/mapi/glapi/glapi.h:47, from external/mesa/src/mesa/main/mtypes.h:42, from external/mesa/src/mesa/x86/gen_matypes.c:41: external/mesa/include/c11/threads_posix.h: In function 'cnd_timedwait': external/mesa/include/c11/threads_posix.h:140:21: error: storage size of 'abs_time' isn't known external/mesa/include/c11/threads_posix.h: In function 'mtx_init': external/mesa/include/c11/threads_posix.h:182:9: warning: implicit declaration of function 'pthread_mutexattr_settype' [-Wimplicit-function-declaration] external/mesa/include/c11/threads_posix.h: In function 'mtx_timedlock': external/mesa/include/c11/threads_posix.h:214:21: error: storage size of 'ts' isn't known external/mesa/include/c11/threads_posix.h:218:5: warning: implicit declaration of function 'pthread_mutex_timedlock' [-Wimplicit-function-declaration] external/mesa/include/c11/threads_posix.h: In function 'thrd_sleep': external/mesa/include/c11/threads_posix.h:317:21: error: storage size of 'req' isn't known external/mesa/include/c11/threads_posix.h:321:5: warning: implicit declaration of function 'nanosleep' [-Wimplicit-function-declaration] make: *** [out/host/linux-x86/obj/EXECUTABLES/mesa_gen_matypes_intermediates/x86/gen_matypes.o] Error 1 ## Alterado o arquivo external/mesa/include/c11/threads_posix.h # Adicionados/Alterados includes #include #include #include #include #include #include #include #include #ifndef assert #include #endif #include #include /* for intptr_t */ ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ target C: libmesa_program <= external/mesa/src/mesa/program/prog_execute.c In file included from external/mesa/include/c11/threads.h:72:0, from external/mesa/src/mapi/u_thread.h:49, from external/mesa/src/mapi/glapi/glthread.h:4, from external/mesa/src/mapi/glapi/glapi.h:47, from external/mesa/src/mesa/main/mtypes.h:42, from external/mesa/src/mesa/x86/gen_matypes.c:41: external/mesa/include/c11/threads_posix.h: In function 'cnd_timedwait': external/mesa/include/c11/threads_posix.h:144:21: error: storage size of 'abs_time' isn't known external/mesa/include/c11/threads_posix.h: In function 'mtx_init': external/mesa/include/c11/threads_posix.h:186:9: warning: implicit declaration of function 'pthread_mutexattr_settype' [-Wimplicit-function-declaration] external/mesa/include/c11/threads_posix.h: In function 'mtx_timedlock': external/mesa/include/c11/threads_posix.h:218:21: error: storage size of 'ts' isn't known external/mesa/include/c11/threads_posix.h:222:5: warning: implicit declaration of function 'pthread_mutex_timedlock' [-Wimplicit-function-declaration] external/mesa/include/c11/threads_posix.h: In function 'thrd_sleep': external/mesa/include/c11/threads_posix.h:321:21: error: storage size of 'req' isn't known external/mesa/include/c11/threads_posix.h:325:5: warning: implicit declaration of function 'nanosleep' [-Wimplicit-function-declaration] make: *** [out/host/linux-x86/obj/EXECUTABLES/mesa_gen_matypes_intermediates/x86/gen_matypes.o] Error 1 ## Alterado o arquuivo external/mesa/src/mapi/u_thread.h # Copiado o arquivo da versão 9.2.0 do mesa ------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------ Reading input... external/mesa/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c:33: error: undefined reference to 'nv50_screen_create' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c:233: error: undefined reference to 'nv50_m2mf_rect_setup' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c:234: error: undefined reference to 'nv50_m2mf_rect_setup' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c:859: error: undefined reference to 'nv50_blit_select_mode' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c:601: error: undefined reference to 'nv50_blitter_make_fp' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_transfer.c:412: error: undefined reference to 'nv50_m2mf_rect_setup' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_miptree.c:34: error: undefined reference to 'nv50_tex_choose_tile_dims_helper' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_miptree.c:293: error: undefined reference to 'nv50_miptree_init_layout_linear' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_miptree.c:353: error: undefined reference to 'nv50_surface_from_miptree' out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_pipe_nouveau_intermediates/libmesa_pipe_nouveau.a(nvc0_miptree.o):nvc0_miptree.c:function nvc0_miptree_vtbl: error: undefined reference to 'nv50_miptree_get_handle' out/target/product/x86/obj/STATIC_LIBRARIES/libmesa_pipe_nouveau_intermediates/libmesa_pipe_nouveau.a(nvc0_miptree.o):nvc0_miptree.c:function nvc0_miptree_vtbl: error: undefined reference to 'nv50_miptree_destroy' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_resource.c:27: error: undefined reference to 'nv50_miptree_from_handle' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_resource.c:40: error: undefined reference to 'nv50_surface_from_buffer' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_resource.c:52: error: undefined reference to 'nv50_surface_destroy' external/mesa/src/gallium/drivers/nouveau/nvc0/nvc0_state.c:1186: error: undefined reference to 'nv50_sampler_state_create' collect2: error: ld returned 1 exit status make: *** [out/target/product/x86/obj/SHARED_LIBRARIES/libGLES_mesa_intermediates/LINKED/libGLES_mesa.so] Error 1 ## Alterado o arquivo external/mesa/src/gallium/drivers/nouveau/Android.mk # Corrigido erro de grafia na variavel LOCAL_SRC_FILES (NV50_C_SOURES ao inves de NV50_C_SOURCES LOCAL_SRC_FILES := $(C_SOURCES) \ $(NV30_C_SOURCES) \ $(NV50_CODEGEN_SOURCES) \ $(NV50_C_SOURCES) \ $(NVC0_CODEGEN_SOURCES) \ $(NVC0_C_SOURCES) Compilado!