{
    global:
        extern "C++" {
            Ogre::Ani*;
            Ogre::A[rux]*;
            Ogre::Billboard[^P]*;
            Ogre::BillboardParticleRenderer::[^C]*;
            Ogre::BillboardParticleRendererFactory*;
            Ogre::Border[^P]*;
            Ogre::BorderPanelOverlayElement::[^C]*;
            Ogre::BorderPanelOverlayElementFactory::*;
            Ogre::Bon*;
            Ogre::Ca*;
            Ogre::Codec::[^C]*;
            Ogre::Co[lp]*;
            Ogre::Conf*;
            Ogre::ControllerManager::*;
            Ogre::Cu*;
            Ogre::D[ay]*;
            Ogre::Def*;
            Ogre::E[^x]*;
            Ogre::Exception::*;
            Ogre::ExternalTextureSource::[^C]*;
            Ogre::ExternalTextureSourceManager::*;
            Ogre::FileSt*;
            Ogre::FileH*;
            Ogre::FileSystemArchive::*;
            Ogre::Fo*;
            Ogre::Fr*;
            Ogre::Fl*;
            Ogre::G*;
            Ogre::GpuProgramParameters::[^C]*;
            Ogre::GpuProgram::*;
            Ogre::GpuProgramPtr::*;
            Ogre::GpuProgramManager::*;
            Ogre::GpuProgramUsage::*;
            Ogre::Hardware[IOPV]*;
            Ogre::HardwareBuffer::*;
            Ogre::HardwareBufferLicensee::*;
            Ogre::HardwareBufferManager::[^V]*;
            Ogre::Hi*;
            Ogre::Image::*;
            Ogre::ImageCodec::[^I]*;
            Ogre::ImageCodec::Image[^D]*;
            Ogre::ILImage*;
            Ogre::In*;
            Ogre::K*;
            Ogre::L*;
            Ogre::Man*;
            Ogre::Mat*;
            Ogre::Mem*;
            Ogre::Mesh::*;
            Ogre::MeshPtr::*;
            Ogre::MeshManager::*;
            Ogre::MeshSerializer::*;
            Ogre::Mou*;
            Ogre::Mov*;
            Ogre::N*;
            Ogre::O*;
            Ogre::PanelOverlayElementFactory*;
            Ogre::PanelOverlayElement::[^C]*;
            Ogre::Para*;
            Ogre::Particle::*;
            Ogre::Particle[AEVI]*;
            Ogre::ParticleSystem::[^C]*;
            Ogre::ParticleSystem[MR]*;
            Ogre::Pa[st]*;
            Ogre::P[lioy]*;
            Ogre::Prof*;
            Ogre::ProgressiveMesh::[^P]*;
            Ogre::ProgressiveMesh::P[a-z]*;
            Ogre::Q*;
            Ogre::Ray*;
            Ogre::Rec*;
            Ogre::Reg*;
            Ogre::Rendera*;
            Ogre::RenderQueue::*;
            Ogre::RenderQueueListener::*;
            Ogre::RenderTarget::*;
            Ogre::RenderS*;
            Ogre::RenderTargetListener::*;
            Ogre::RenderTe*;
            Ogre::RenderW*;
            Ogre::Res*;
            Ogre::Ro*;
            Ogre::Sc*;
            Ogre::Se*;
            Ogre::Shad*;
            Ogre::Si*;
            Ogre::Sk*;
            Ogre::Sp*;
            Ogre::StaticGeometry::[^O]*;
            Ogre::Str*;
            Ogre::Su*;
            Ogre::Ta*;
            Ogre::Te[cm]*;
            Ogre::TexC*; 
            Ogre::TextAreaOverlayElement::[^C]*;
            Ogre::TextAreaOverlayElementFactory*;
            Ogre::Texture*;
            Ogre::Ti*;
            Ogre::U*;
            Ogre::Vector[234]*;
            Ogre::Ver*;
            Ogre::Vi*;
            Ogre::W*;
            Ogre::ZipArchive::*;
            Ogre::[fo]*
        };

        _ZNS*;
        _ZN9__gnu_cxx*;
        _ZZN9__gnu_cxx*;

        # export vtables & typeinfo
        _ZT[ISV]N4Ogre[0-9][AB]*;
        _ZT[ISV]N4Ogre5CodecE;
        _ZT[ISV]N4Ogre6C*;
        _ZT[ISV]N4Ogre[0-9][E-R]*;
        _ZT[ISV]N4Ogre8SkeletonE;
        _ZT[ISV]N4Ogre9SceneNodeE;
        _ZT[ISV]N4Ogre9SubEntityE;
        _ZT[ISV]N4Ogre5TimerE;
        _ZT[ISV]N4Ogre7TextureE;
        _ZT[ISV]N4Ogre[0-9][0-9][ADGHOR]*;
        _ZT[ISV]N4Ogre12BillboardSetE;
        _ZT[ISV]N4Ogre25BillboardParticleRendererE;
        _ZT[ISV]N4Ogre32BillboardParticleRendererFactoryE;
        _ZT[ISV]N4Ogre25BorderPanelOverlayElementE;
        _ZT[ISV]N4Ogre32BorderPanelOverlayElementFactoryE;
        _ZT[ISV]N4Ogre16BorderRenderableE;
        _ZT[ISV]N4Ogre10ConfigFileE;
        _ZT[ISV]N4Ogre12ConfigDialogE;
        _ZT[ISV]N4Ogre1[0-9]E*;
        _ZT[ISV]N4Ogre21ExternalTextureSourceE;
        _ZT[ISV]N4Ogre11FontManagerE;
        _ZT[ISV]N4Ogre13FrameListenerE;
        _ZT[ISV]N4Ogre17FileSystemArchiveE;
        _ZT[ISV]N4Ogre20FileHandleDataStreamE;
        _ZT[ISV]N4Ogre20FileStreamDataStreamE;
        _ZT[ISV]N4Ogre24FrameTimeControllerValueE;
        _ZT[ISV]N4Ogre32FloatGpuParameterControllerValueE;
        _ZT[ISV]N4Ogre10ImageCodecE;
        _ZT[ISV]N4Ogre11InputReaderE;
        _ZT[ISV]N4Ogre22IntersectionSceneQueryE;
        _ZT[ISV]N4Ogre30IntersectionSceneQueryListenerE;
        _ZT[ISV]N4Ogre11LogListenerE;
        _ZT[ISV]N4Ogre[0-9][0-9]M[ao]*;
        _ZT[ISV]N4Ogre[0-9][0-9]MeshM*;
        _ZT[ISV]N4Ogre12ParamCommandE;
        _ZT[ISV]N4Ogre12PatchMeshPtrE;
        _ZT[ISV]N4Ogre14ParticleSystemE;
        _ZT[ISV]N4Ogre14PositionTargetE;
        _ZT[ISV]N4Ogre15ParticleEmitterE;
        _ZT[ISV]N4Ogre15ProgressiveMeshE;
        _ZT[ISV]N4Ogre16ParticleAffectorE;
        _ZT[ISV]N4Ogre19PanelOverlayElementE;
        _ZT[ISV]N4Ogre21ParticleSystemManagerE;
        _ZT[ISV]N4Ogre22ParticleEmitterFactoryE;
        _ZT[ISV]N4Ogre22ParticleSystemRendererE;
        _ZT[ISV]N4Ogre23ParticleAffectorFactoryE;
        _ZT[ISV]N4Ogre26PanelOverlayElementFactoryE;
        _ZT[ISV]N4Ogre29ParticleSystemRendererFactoryE;
        _ZT[ISV]N4Ogre32PlaneBoundedVolumeListSceneQueryE;
        _ZT[ISV]N4Ogre[0-9][0-9]S[cehikp]*;
        _ZT[ISV]N4Ogre14StaticGeometryE;
        _ZT[ISV]N4Ogre15StringInterfaceE;
        _ZT[ISV]N4Ogre[0-9][0-9]Texture*;
        _ZT[ISV]N4Ogre21TempBlendedBufferInfoE;
        _ZT[ISV]N4Ogre22TextAreaOverlayElementE;
        _ZT[ISV]N4Ogre29TextAreaOverlayElementFactoryE;
        _ZT[ISV]N4Ogre31TexCoordModifierControllerValueE;
        _ZT[ISV]N4Ogre[0-9][0-9][U-W]*;
        _ZT[ISV]N4Ogre10ZipArchiveE;

        # export thunks
        _ZThn*;
    local: *;
};
