2011-08-16 03:28:25 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////
|
|
|
|
// File: platform.h
|
|
|
|
// Description: Place holder
|
|
|
|
// Author:
|
|
|
|
// Created:
|
|
|
|
//
|
|
|
|
// (C) Copyright 2006, Google Inc.
|
|
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
// you may not use this file except in compliance with the License.
|
|
|
|
// You may obtain a copy of the License at
|
|
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
// See the License for the specific language governing permissions and
|
|
|
|
// limitations under the License.
|
|
|
|
//
|
|
|
|
///////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#ifndef TESSERACT_CCUTIL_PLATFORM_H__
|
|
|
|
#define TESSERACT_CCUTIL_PLATFORM_H__
|
|
|
|
|
2013-09-23 23:26:50 +08:00
|
|
|
#include <string.h>
|
|
|
|
|
2007-03-08 04:03:40 +08:00
|
|
|
#define DLLSYM
|
2012-02-20 05:48:45 +08:00
|
|
|
#ifdef _WIN32
|
2011-08-16 03:28:25 +08:00
|
|
|
#ifdef __GNUC__
|
|
|
|
#define ultoa _ultoa
|
|
|
|
#endif /* __GNUC__ */
|
2007-03-08 04:03:40 +08:00
|
|
|
#define SIGNED
|
2015-04-16 04:37:58 +08:00
|
|
|
#if defined(_MSC_VER)
|
2015-08-13 22:23:47 +08:00
|
|
|
#if (_MSC_VER < 1900)
|
2008-02-01 08:38:13 +08:00
|
|
|
#define snprintf _snprintf
|
2015-08-13 22:23:47 +08:00
|
|
|
#endif
|
2008-08-15 06:47:14 +08:00
|
|
|
#if (_MSC_VER <= 1400)
|
2008-02-01 08:38:13 +08:00
|
|
|
#define vsnprintf _vsnprintf
|
2015-04-16 04:37:58 +08:00
|
|
|
#endif /* (_MSC_VER <= 1400) */
|
|
|
|
#endif /* defined(_MSC_VER) */
|
2007-03-08 04:03:40 +08:00
|
|
|
#else
|
|
|
|
#define __UNIX__
|
|
|
|
#include <limits.h>
|
|
|
|
#ifndef PATH_MAX
|
|
|
|
#define MAX_PATH 4096
|
|
|
|
#else
|
|
|
|
#define MAX_PATH PATH_MAX
|
|
|
|
#endif
|
|
|
|
#define SIGNED signed
|
|
|
|
#endif
|
2011-08-16 03:28:25 +08:00
|
|
|
|
2015-09-07 07:49:18 +08:00
|
|
|
#if defined(_WIN32) || defined(__CYGWIN__)
|
2014-01-18 17:00:54 +08:00
|
|
|
#ifndef M_PI
|
|
|
|
#define M_PI 3.14159265358979323846
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
2012-03-03 01:48:45 +08:00
|
|
|
#if defined(_WIN32) || defined(__CYGWIN__)
|
|
|
|
#if defined(TESS_EXPORTS)
|
|
|
|
#define TESS_API __declspec(dllexport)
|
|
|
|
#elif defined(TESS_IMPORTS)
|
|
|
|
#define TESS_API __declspec(dllimport)
|
|
|
|
#else
|
|
|
|
#define TESS_API
|
|
|
|
#endif
|
|
|
|
#define TESS_LOCAL
|
|
|
|
#else
|
2012-10-09 08:39:54 +08:00
|
|
|
#if __GNUC__ >= 4
|
2012-03-03 01:48:45 +08:00
|
|
|
#if defined(TESS_EXPORTS) || defined(TESS_IMPORTS)
|
|
|
|
#define TESS_API __attribute__ ((visibility ("default")))
|
|
|
|
#define TESS_LOCAL __attribute__ ((visibility ("hidden")))
|
|
|
|
#else
|
|
|
|
#define TESS_API
|
|
|
|
#define TESS_LOCAL
|
|
|
|
#endif
|
2012-10-09 08:39:54 +08:00
|
|
|
#else
|
2012-03-03 01:48:45 +08:00
|
|
|
#define TESS_API
|
|
|
|
#define TESS_LOCAL
|
2012-10-09 08:39:54 +08:00
|
|
|
#endif
|
2012-03-03 01:48:45 +08:00
|
|
|
#endif
|
|
|
|
|
2013-09-23 23:26:50 +08:00
|
|
|
#if defined(_WIN32) || defined(__CYGWIN__)
|
|
|
|
#define _TESS_FILE_BASENAME_ \
|
|
|
|
(strrchr(__FILE__, '\\') ? strrchr(__FILE__, '\\') + 1 : __FILE__)
|
|
|
|
#else // Unices
|
|
|
|
#define _TESS_FILE_BASENAME_ \
|
|
|
|
(strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)
|
|
|
|
#endif
|
|
|
|
|
2011-08-16 03:28:25 +08:00
|
|
|
#endif // TESSERACT_CCUTIL_PLATFORM_H__
|