* scl_memmgr supports both c and c++ memory management.
malloc, calloc, realloc and free for c.
new, delete operators for c++.
(in c++ files scl_memmgr.h should be included last because a macro
is used to replace new and delete with scl versions. If not included
last, this would break build.)
Removed macros and typedefs from type.h
Removed unused function from type.c that used those macros, and
replaced the macros where used in fedex_plus/. For example:
sed -i -e 's/Class_Integer_Type/integer_/g;' *
The typedefs were not in use anywhere.
These macros were defined in object.h as being "for backwards compatibility".
The only code that used them was in #if 0...#endif blocks. Additionally,
OBJfree is mentioned in express/Changes, dated 1992, as being unnecessary. It
seems safe to remove all of this code - it is very very old.
* Since the unicode support (TCHAR, _T, ...) did not build with borland
makefiles target I removed unicode support temporarily since most scl
code does not support unicode yet.
* Added BORLAND target to several CMakeLists.txt.
(MSVC and BORLAND require similar behaviour for imports/exports)
* Added __BORLAND__ ifdefs where needed.
* Since EXPRESSgetopt_options[] is locally defined for each usage (fedex.c and fedex_main.c)
it should not be exported from express lib.
* This also removes 3 warnings in MSVC.
* Added SCL_EXPRESS_EXPORT flag for yydebug,yydbg_upper_limit,yydbg_lower_limit and yydbg_verbose
* Added xgetopt.cc for check-express/MSVC.
* Added inithook for check-express/MSVC?
* Used set_target_properties COMPILE_DEFINITIONS in stead of add_definitions
for SCL_EXPRESS_EXPORTS/SCL_EXPRESS_IMPORTS.
* Selected correct PROTO define for __MSVC__.
* Renamed static function min to minimum to prevent conflict in MSVC.
* Added condition __MSVC__ when __attribute( ( unused ) ) was used.
* Added {} in classes.c to prevent local variable definitions which
are not allowed in MSVC for c files.
* Added xgetopt.cc/xgetopt.h for getopt functionality.
* Added SCL_EXPRESS_DLL_IMPORTS/SCL_EXPPP_DLL_IMPORTS to CMakeLists.txt.
* Added SCL_EXPPP_EXPORT flag for all global variables in headers.
* Added SCL_EXPPP_EXPORT flag for all function prototypes in headers.
* Added SCL_EXPRESS_DLL_IMPORTS flag for exppp CMakeLists.txt
* Added SCL_EXPPP_DLL_EXPORTS flag for exppp CMakeLists.txt
Signed-off-by: davyw <davy.wouters@gmail.com>
* Added scl_export.h with conditional flags for import/export.
* Added SCL_EXPRESS_EXPORT flag for all global variables in headers.
* Added SCL_EXPRESS_EXPORT flag for all function prototypes in headers.
* Added SCL_EXPRESS_DLL_EXPORTS flag for express CMakeLists.txt
* Renamed __in to __i in LISTdo_links macro because __in is a reserved macro for MSVC.
* Renamed isascii to __isascii for MSVC.
* Added __MSVC__ to compiler flags and use it.
* Made unistd.h include conditional by cmake HAVE_UNISTD_H flag.
* Made dirent.h include conditional by cmake HAVE_DIRENT_H flag.
* Made sys/params.h include conditional by cmake HAVE_SYS_PARAMS_H flag.
* Made stdbool.h include conditinal by cmake HAVE_STDBOOL_H flag.
* Added scl_stdbool.h as an alternative for stdbool.h.
* Added xgetopt.cc/xgetopt.h to be included when HAVE_GETOPT flag false.
* Print this info from `p21read -v` and in a comment in generated source, not just from `fedex_plus -v`
* Use a function `const char* scl_version()`, instead of using the macro `SCL_COMMIT_ID`
* Fail gracefully if the `.git` directory does not exist (thanks CY!)
* Fixes issue #89
* remove all uses of SCLP23 and SCLP23_NAME macros, and don't include sclprefixes.h anywhere:
for i in `grep -rl SCLP23 *`; do echo $i; sed -i 's/SCLP23_NAME( *\([A-Za-z][a-zA-Z0-9_]*\) *)/SDAI_\1/g;' $i; done
for i in `grep -rl SCLP23 *`; do echo $i; sed -i 's/SCLP23( *\([A-Za-z][a-zA-Z0-9_]*\) *)/SDAI_\1/g;' $i; done
for i in `grep -nr sclprefixes.h *`; do sed -i 's/#include <sclprefixes.h>//g;' $i; done
* delete sclprefixes.h
* remove HAVE_CONFIG_H in all *.c, *.cc, *.h, and */CMakeLists.txt - with cmake, we'll always have scl_cf.h