r600g/sb: Fix Android build v2
authorChih-Wei Huang <cwhuang@android-x86.org>
Thu, 27 Jun 2013 21:31:05 +0000 (14:31 -0700)
committerVadim Girlin <vadimgirlin@gmail.com>
Thu, 11 Jul 2013 21:11:04 +0000 (01:11 +0400)
Add the sb CXX files to the Android Makefile and also stop using some
c++11 features.

v2 (Vadim Girlin): use &bc[0] instead of bc.begin()

src/gallium/drivers/r600/Android.mk
src/gallium/drivers/r600/sb/sb_bc.h
src/gallium/drivers/r600/sb/sb_ra_init.cpp
src/gallium/drivers/r600/sb/sb_valtable.cpp

index e5188bb628e2166740b07f2a12b3417c6e7a073c..4d2f69f336641e260ae1e9b14727c0183a0c808e 100644 (file)
@@ -28,11 +28,12 @@ include $(LOCAL_PATH)/Makefile.sources
 
 include $(CLEAR_VARS)
 
-LOCAL_SRC_FILES := $(C_SOURCES)
+LOCAL_SRC_FILES := $(C_SOURCES) $(CXX_SOURCES)
 
-LOCAL_C_INCLUDES :=
+LOCAL_C_INCLUDES := $(DRM_TOP)
 
 LOCAL_MODULE := libmesa_pipe_r600
 
+include external/stlport/libstlport.mk
 include $(GALLIUM_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
index 224301fc6a6ace95f7ea173cc94a521a8a9f6d30..0e951920e732763ffb26be738b22346157dc8cbb 100644 (file)
@@ -847,7 +847,7 @@ public:
        unsigned ndw() { return bc.size(); }
 
        void write_data(uint32_t* dst) {
-               memcpy(dst, bc.data(), 4 * bc.size());
+               std::copy(bc.begin(), bc.end(), dst);
        }
 
        void align(unsigned a) {
@@ -871,7 +871,7 @@ public:
        }
 
        unsigned get_pos() { return pos; }
-       uint32_t *data() { return bc.data(); }
+       uint32_t *data() { return &bc[0]; }
 
        bytecode & operator <<(uint32_t v) {
                if (pos == ndw()) {
index bfe5ab9a1bc221ce0befb4894e2e62c75509e9f9..24b24a0bde37d9aa8087c22e27b2769872a2eea5 100644 (file)
@@ -680,7 +680,7 @@ void ra_split::split_vec(vvec &vv, vvec &v1, vvec &v2, bool allow_swz) {
 
                        value *t;
                        vvec::iterator F =
-                                       allow_swz ? find(v2.begin(), v2.end(), o) : v2.end();
+                                       allow_swz ? std::find(v2.begin(), v2.end(), o) : v2.end();
 
                        if (F != v2.end()) {
                                t = *(v1.begin() + (F - v2.begin()));
index 5e6aca04928f5c550fdffac32272531e661bf1f3..00aee66f25b82288e8991899864812b632eca6d9 100644 (file)
@@ -207,7 +207,7 @@ void value_table::get_values(vvec& v) {
 
        for(vt_table::iterator I = hashtable.begin(), E = hashtable.end();
                        I != E; ++I) {
-               T = copy(I->begin(), I->end(), T);
+               T = std::copy(I->begin(), I->end(), T);
        }
 }
 
@@ -368,7 +368,7 @@ inline bool sb_bitset::set_chk(unsigned id, bool bit) {
 }
 
 void sb_bitset::clear() {
-       memset(data.data(), 0, sizeof(basetype) * data.size());
+       std::fill(data.begin(), data.end(), 0);
 }
 
 void sb_bitset::resize(unsigned size) {