1*d7b374a6SHerbert Dürr /************************************************************** 2*d7b374a6SHerbert Dürr * 3*d7b374a6SHerbert Dürr * Licensed to the Apache Software Foundation (ASF) under one 4*d7b374a6SHerbert Dürr * or more contributor license agreements. See the NOTICE file 5*d7b374a6SHerbert Dürr * distributed with this work for additional information 6*d7b374a6SHerbert Dürr * regarding copyright ownership. The ASF licenses this file 7*d7b374a6SHerbert Dürr * to you under the Apache License, Version 2.0 (the 8*d7b374a6SHerbert Dürr * "License"); you may not use this file except in compliance 9*d7b374a6SHerbert Dürr * with the License. You may obtain a copy of the License at 10*d7b374a6SHerbert Dürr * 11*d7b374a6SHerbert Dürr * http://www.apache.org/licenses/LICENSE-2.0 12*d7b374a6SHerbert Dürr * 13*d7b374a6SHerbert Dürr * Unless required by applicable law or agreed to in writing, 14*d7b374a6SHerbert Dürr * software distributed under the License is distributed on an 15*d7b374a6SHerbert Dürr * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*d7b374a6SHerbert Dürr * KIND, either express or implied. See the License for the 17*d7b374a6SHerbert Dürr * specific language governing permissions and limitations 18*d7b374a6SHerbert Dürr * under the License. 19*d7b374a6SHerbert Dürr * 20*d7b374a6SHerbert Dürr *************************************************************/ 21*d7b374a6SHerbert Dürr 22*d7b374a6SHerbert Dürr 23*d7b374a6SHerbert Dürr //1. Force inclusion of a std:: using header to ensure the stlport define 24*d7b374a6SHerbert Dürr //of std as "stlport" 25*d7b374a6SHerbert Dürr #include <algorithm> 26*d7b374a6SHerbert Dürr #if defined(ADAPT_EXT_STL) 27*d7b374a6SHerbert Dürr //2. Force inclusion of stlport headers to get their stlport:: definitions 28*d7b374a6SHerbert Dürr # include <ostream> 29*d7b374a6SHerbert Dürr # include <istream> 30*d7b374a6SHerbert Dürr # include <fstream> 31*d7b374a6SHerbert Dürr # include <iostream> 32*d7b374a6SHerbert Dürr # include <sstream> 33*d7b374a6SHerbert Dürr # include <vector> 34*d7b374a6SHerbert Dürr # include <deque> 35*d7b374a6SHerbert Dürr # include <set> 36*d7b374a6SHerbert Dürr # include <list> 37*d7b374a6SHerbert Dürr # include <map> 38*d7b374a6SHerbert Dürr //3. Now force inclusion of native headers to get their std:: definitions 39*d7b374a6SHerbert Dürr # if defined(std) 40*d7b374a6SHerbert Dürr # define std_was_redefined_as_stlport std 41*d7b374a6SHerbert Dürr # undef std 42*d7b374a6SHerbert Dürr # define _STLP_OUTERMOST_HEADER_ID 0xdeadbeaf 43*d7b374a6SHerbert Dürr # if defined(_GNUC__) 44*d7b374a6SHerbert Dürr # pragma GCC visibility push(default) 45*d7b374a6SHerbert Dürr # endif 46*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(exception_defines.h) 47*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(limits) 48*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(memory) 49*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(exception) 50*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(iosfwd) 51*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(algorithm) 52*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(string) 53*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(streambuf) 54*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(ios) 55*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(locale) 56*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(stdexcept) 57*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(ostream) 58*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(istream) 59*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(iostream) 60*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(sstream) 61*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(vector) 62*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(deque) 63*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(set) 64*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(list) 65*d7b374a6SHerbert Dürr # include _STLP_NATIVE_HEADER(map) 66*d7b374a6SHerbert Dürr # if defined(_GNUC__) 67*d7b374a6SHerbert Dürr # pragma GCC visibility pop 68*d7b374a6SHerbert Dürr # endif 69*d7b374a6SHerbert Dürr # endif 70*d7b374a6SHerbert Dürr #endif 71*d7b374a6SHerbert Dürr //ext_std resolves to the std that external c++ libs, e.g. Graphite were built 72*d7b374a6SHerbert Dürr //against regardless of whether that is stlport or system stl 73*d7b374a6SHerbert Dürr namespace ext_std = std; 74