# include/xapian/visibility.h

    00001 // visibility.h: Define XAPIAN_VISIBILITY macro.
    00002 //
    00003 // Copyright (C) 2007 Olly Betts
    00004 //
    00005 // This program is free software; you can redistribute it and/or modify
    00006 // it under the terms of the GNU General Public License as published by
    00007 // the Free Software Foundation; either version 2 of the License, or
    00008 // (at your option) any later version.
    00009 //
    00010 // This program is distributed in the hope that it will be useful,
    00011 // but WITHOUT ANY WARRANTY; without even the implied warranty of
    00012 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    00013 // GNU General Public License for more details.
    00014 //
    00015 // You should have received a copy of the GNU General Public License
    00016 // along with this program; if not, write to the Free Software
    00017 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
    00018
    00019 #ifndef XAPIAN_INCLUDED_VISIBILITY_H
    00020 #define XAPIAN_INCLUDED_VISIBILITY_H
    00021
    00022 #if defined __GNUC__ && (__GNUC__ >= 4) && !defined XAPIAN_DISABLE_VISIBILITY
    00023 // GCC 3.4 has visibility support, but it's a bit buggy so we require 4.0.
    00024 # define XAPIAN_VISIBILITY_DEFAULT __attribute__((visibility("default")))
    00025 #else
    00026 # define XAPIAN_VISIBILITY_DEFAULT
    00027 #endif
    00028
    00029 #endif