Added utils dll import/export scheme for MSVC.

* Added SCL_UTILS_EXPORT flag.
* Added SCL_UTILS_DLL_EXPORTS flag for exppp CMakeLists.txt
This commit is contained in:
davyw
2011-12-07 18:57:50 -05:00
committed by Mark Pictor
parent 69acdf329d
commit 457d51e303
9 changed files with 40 additions and 27 deletions
+4
View File
@@ -29,6 +29,10 @@ include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
)
if (MSVC)
add_definitions( -DSCL_UTILS_DLL_EXPORTS )
endif(MSVC)
SCL_ADDLIB(steputils "${LIBSTEPUTILS_SRCS}" "")
IF(MINGW)
+12 -11
View File
@@ -13,6 +13,7 @@
* and is not subject to copyright.
*/
#include <scl_export.h>
#include <ctype.h>
#include <stdio.h>
@@ -29,19 +30,19 @@
#define StrCmpIns(a,b) strcasecmp(a,b)
#endif
char ToLower (const char c);
char ToUpper (const char c);
char * StrToLower (const char *, char *);
const char * StrToLower (const char * word, std::string &s);
const char * StrToUpper (const char * word, std::string &s);
const char * StrToConstant (const char * word, std::string &s);
const char * PrettyTmpName (const char * oldname);
char * PrettyNewName (const char * oldname);
char * EntityClassName ( char * oldname);
SCL_UTILS_EXPORT char ToLower (const char c);
SCL_UTILS_EXPORT char ToUpper (const char c);
SCL_UTILS_EXPORT char * StrToLower (const char *, char *);
SCL_UTILS_EXPORT const char * StrToLower (const char * word, std::string &s);
SCL_UTILS_EXPORT const char * StrToUpper (const char * word, std::string &s);
SCL_UTILS_EXPORT const char * StrToConstant (const char * word, std::string &s);
SCL_UTILS_EXPORT const char * PrettyTmpName (const char * oldname);
SCL_UTILS_EXPORT char * PrettyNewName (const char * oldname);
SCL_UTILS_EXPORT char * EntityClassName ( char * oldname);
std::string ToExpressStr (istream &in, ErrorDescriptor *err);
SCL_UTILS_EXPORT std::string ToExpressStr (istream &in, ErrorDescriptor *err);
extern Severity CheckRemainingInput
extern SCL_UTILS_EXPORT Severity CheckRemainingInput
(istream &in, ErrorDescriptor *err,
const char *typeName, // used in error message
const char *tokenList); // e.g. ",)"
+2 -1
View File
@@ -34,6 +34,7 @@
///////////////////////////////////////////////////////////////////////////////
#include <scl_cf.h>
#include <scl_export.h>
#include <stdlib.h>
#include <string.h>
@@ -46,7 +47,7 @@
/*****************************************************************************/
class DirObj {
class SCL_UTILS_EXPORT DirObj {
public:
DirObj(const char* dirName);
virtual ~DirObj();
+2 -2
View File
@@ -13,7 +13,7 @@
* and is not subject to copyright.
*/
#include <scl_export.h>
#include <string>
#include <iostream>
using namespace std;
@@ -56,7 +56,7 @@ enum DebugLevel {
** Status:
******************************************************************/
class ErrorDescriptor {
class SCL_UTILS_EXPORT ErrorDescriptor {
protected:
Severity _severity;
+2 -1
View File
@@ -15,6 +15,7 @@
/* $Id: gennode.h,v 3.0.1.3 1997/11/05 22:33:47 sauderd DP3.1 $ */
#include <scl_export.h>
#ifdef __O3DB__
#include <OpenOODB.h>
#endif
@@ -29,7 +30,7 @@ class DisplayNodeList;
// If you delete this object it first removes itself from any list it is in.
//////////////////////////////////////////////////////////////////////////////
class GenericNode
class SCL_UTILS_EXPORT GenericNode
{
friend class GenNodeList;
friend class MgrNodeList;
+2 -1
View File
@@ -21,6 +21,7 @@
* Copyright (c) 1990 Stanford University
*/
#include <scl_export.h>
#ifdef __O3DB__
#include <OpenOODB.h>
#endif
@@ -41,7 +42,7 @@
// DeleteEntries().
//////////////////////////////////////////////////////////////////////////////
class GenNodeArray
class SCL_UTILS_EXPORT GenNodeArray
{
public:
+2 -1
View File
@@ -15,6 +15,7 @@
/* $Id: gennodelist.h,v 3.0.1.2 1997/11/05 22:33:48 sauderd DP3.1 $ */
#include <scl_export.h>
#ifdef __O3DB__
#include <OpenOODB.h>
#endif
@@ -29,7 +30,7 @@
// as its head, you need to call DeleteEntries().
//////////////////////////////////////////////////////////////////////////////
class GenNodeList {
class SCL_UTILS_EXPORT GenNodeList {
public:
GenNodeList(GenericNode *headNode);
virtual ~GenNodeList() { delete head; }
+3 -1
View File
@@ -1,9 +1,11 @@
#ifndef SCL_CHAR_STR_LIST_H
#define SCL_CHAR_STR_LIST_H
#include <scl_export.h>
typedef char * scl_char_str_ptr;
class scl_char_str__list {
class SCL_UTILS_EXPORT scl_char_str__list {
public:
scl_char_str__list(int = 16);
~scl_char_str__list();
+11 -9
View File
@@ -91,6 +91,8 @@
*
*/
#include <scl_export.h>
typedef enum { HASH_FIND, HASH_INSERT, HASH_DELETE } Action;
struct Element {
@@ -130,15 +132,15 @@ typedef struct {
extern "C" {
#endif
struct Hash_Table *HASHcreate(unsigned);
void HASHinitialize(void);
void *HASHfind(struct Hash_Table *, char *);
void HASHinsert(struct Hash_Table *, char *,void *);
void HASHdestroy(struct Hash_Table *);
struct Element *HASHsearch(struct Hash_Table *,const struct Element *, Action);
void HASHlistinit(struct Hash_Table *,HashEntry *);
void HASHlistinit_by_type(struct Hash_Table *,HashEntry *,char);
struct Element *HASHlist(HashEntry *);
SCL_UTILS_EXPORT struct Hash_Table *HASHcreate(unsigned);
SCL_UTILS_EXPORT void HASHinitialize(void);
SCL_UTILS_EXPORT void *HASHfind(struct Hash_Table *, char *);
SCL_UTILS_EXPORT void HASHinsert(struct Hash_Table *, char *,void *);
SCL_UTILS_EXPORT void HASHdestroy(struct Hash_Table *);
SCL_UTILS_EXPORT struct Element *HASHsearch(struct Hash_Table *,const struct Element *, Action);
SCL_UTILS_EXPORT void HASHlistinit(struct Hash_Table *,HashEntry *);
SCL_UTILS_EXPORT void HASHlistinit_by_type(struct Hash_Table *,HashEntry *,char);
SCL_UTILS_EXPORT struct Element *HASHlist(HashEntry *);
#ifdef __cplusplus
}