]> andersk Git - splint.git/blobdiff - os2/Makefile.os2
Changes for the OS/2 port: cpplib.c (fixed cstring_replaceAll()
[splint.git] / os2 / Makefile.os2
diff --git a/os2/Makefile.os2 b/os2/Makefile.os2
new file mode 100644 (file)
index 0000000..9cd2710
--- /dev/null
@@ -0,0 +1,285 @@
+##################################################\r
+###\r
+### Makefile for OS/2 version of LCLint\r
+###\r
+### designed for use with gmake (GNU make)\r
+###\r
+### based on David Evans' original makefile for Unix systems automatically\r
+###  generated by configure on a Linux system.\r
+###\r
+### configuration is set here and written to file config.inc included by\r
+###  other makefiles\r
+###\r
+### supported compilers are:\r
+###  emx/gcc\r
+###  IBM VisualAge C++ 3.0\r
+###\r
+### other system requirements:\r
+###  HPFS filesystem (long filenames).\r
+###\r
+### *NOTE*, before running "make" edit this file to fit your local settings!\r
+### ========================================================================\r
+###\r
+### Commands:\r
+###\r
+### make all\r
+###    builds a release version of lclint from scratch using optimizations\r
+###\r
+### This makefile uses gmake, the gnu version of make.\r
+###\r
+### Run gmake to build LCLint.\r
+###     gmake install to install.\r
+###\r
+\r
+###\r
+### lclint version and date:\r
+###\r
+\r
+LCL_VERSION=3.0.0.16\r
+LCL_DATE=25 Sep 2001\r
+\r
+# this gets written into the binary, add your name, your compiler settings\r
+#  etc. if you like.\r
+TODAY=Monday 25 Sep 19:40 MEST 2001\r
+ME=herbert\r
+MACHINE=i586\r
+COMPILE_MSG=\# define LCL_COMPILE \"Compiled using $(CC)\\n on OS/2 $(TODAY) $(MACHINE) by $(ME),\\n OS/2 specific subversion is 4\"\r
+\r
+### Directory containing system include files:\r
+\r
+SYSTEM_LIBDIR   = "\\\\usr\\\\include"\r
+\r
+### default preprocessor command:\r
+\r
+CPPCMD = "cpp "\r
+\r
+###\r
+### Select installation directories:\r
+###\r
+### The LIBDIR and IMPORTSDIR are compiled into the binary to \r
+### select the default LARCH_PATH and LCLIMPORTDIR, which can \r
+### also be overridden by environment variables.\r
+###\r
+### It may be a good idea to edit these variables not only in this\r
+### makefile but also in the header file src/Headers/local_constants.h\r
+### \r
+\r
+### directory for lclint libraries\r
+LIBDIR     = \\\\usr\\\\lib\\\\lclint\\\\lib\r
+\r
+### directory for lclint standard imports\r
+IMPORTSDIR = \\\\usr\\\\lib\\\\lclint\\\\imports\r
+\r
+### these are automatically set:\r
+\r
+SYSTEM_IMPORTSDIR = "$(IMPORTSDIR)"\r
+SYSTEM_LARCHPATH  = ".;$(LIBDIR)"\r
+\r
+### directory for lclint binary\r
+INSTALLDIR = \\usr\\bin\r
+\r
+### this should be the complete path for the directory where this\r
+### Makefile is, with no trailing / or spaces.\r
+\r
+BASEDIR = e:\\usr\\src\\lclint-$(LCL_VERSION)\r
+\r
+###\r
+### Then, run:\r
+###\r
+###    make\r
+###\r
+### I recommend doing this in an emacs shell (or buffered terminal) so\r
+### you can scroll through the output.\r
+###\r
+### This should (hopefully) work on most systems without further changes.\r
+###\r
+### If you do not have gcc, set CC = cc (or some other compiler)\r
+### later in this file. \r
+###\r
+### It should:\r
+###     o build lclint\r
+###     o put lclint in BASEDIR/bin/lclint\r
+###\r
+### If you have installed the test suite, then do:\r
+###\r
+###    make test\r
+###\r
+### to verify lclint.\r
+###\r
+\r
+###\r
+### If you wish to install lclint in some other directory, set these \r
+### variables, and do \r
+###\r
+###    make install\r
+###\r
+\r
+### installation command (I use emx GNUish utilities)\r
+CP = cp\r
+MV = mv\r
+CAT = type\r
+RM = rm\r
+INSTALL = cp\r
+INSTALLFLAGS =           \r
+ECHO = "echo.exe"\r
+\r
+###\r
+### end of installation variables\r
+###\r
+\r
+###\r
+### compiler --- gcc is recommended, but lclint has been compiled\r
+###              without changes using cc on several platforms.\r
+###\r
+\r
+# name of configuration:\r
+COMPILER=gcc-emx\r
+#COMPILER=gcc-os2\r
+#COMPILER=icc-os2\r
+\r
+# compile commands:\r
+ifeq ($(COMPILER), gcc-emx)\r
+ CC = gcc -g\r
+ CPPFLAGS=-I.\Headers -DSTDC_HEADERS=1 -DOS2\r
+ CFLAGS=-Wall \r
+ OFLAG=-o \r
+ LINKFLAGS = -lfl\r
+ O=.o\r
+ E=.exe\r
+else\r
+ ifeq ($(COMPILER), gcc-os2)\r
+  CC = gcc -Zsys -Zomf -O3\r
+  CPPFLAGS=-I.\Headers -DSTDC_HEADERS=1 -DOS2\r
+  CFLAGS=-Wall \r
+  OFLAG=-o \r
+  LINKFLAGS = lclint.def -lfl\r
+  O=.obj\r
+  E=.exe\r
+ else\r
+  ifeq ($(COMPILER), icc-os2)\r
+   # Shame! Normally no warnings should be turned off, but IBM's are\r
+   # so stupid they warn me about each llassert(). Let's check our\r
+   # code using lclint then develop it on gcc and then move to IBMC...\r
+   CC = icc -q -W2 -Dunlink=unlink -O+ -G5 -Gf+ -Gi+ -Gs+ \r
+   #CSet 2.01 needs this:\r
+   #-D__STDC__\r
+   CPPFLAGS=-I.\Headers -DSTDC_HEADERS=1 -DOS2 \r
+   CFLAGS=\r
+   OFLAG=-fe\r
+   LINKFLAGS = -B/noe setargv.obj fl.lib lclint.def\r
+   O=.obj\r
+   E=.exe\r
+  endif\r
+ endif\r
+endif\r
+\r
+###\r
+### do you have bison and/or flex?\r
+### (Note: yacc will probably not work; lex might work but is not recommended.)\r
+###\r
+\r
+BISON     = bison\r
+FLEX      = flex\r
+YFLAGS    = -v -t -d\r
+LFLAGS    =\r
+\r
+###\r
+### is the test suite available? (must be full path here)\r
+###\r
+\r
+TESTDIR   = $(BASEDIR)/test\r
+\r
+### \r
+### if this Makefile is used with one of the\r
+### standard installation packages, no changes should be \r
+### necessary below this line.\r
+###\r
+\r
+.PHONY: install dobinaries dolibraries doimports test \r
+\r
+###\r
+### set this to a different directory\r
+### to install binaries elsewhere\r
+###\r
+\r
+RELEASEDIR      = $(BASEDIR)/bin\r
+\r
+all: \r
+       @$(ECHO)\r
+       @$(ECHO) "Creating configuration file. Syntax error message can be ignored..."\r
+       @$(ECHO)\r
+       $(MAKE) -f Makefile.os2 --warn-undefined-variables configinc  \r
+       @$(ECHO)\r
+       @$(ECHO) "Creating local constants header file. Syntax error messages can be ignored..."\r
+       @$(ECHO)\r
+       $(MAKE) ARGV=$(ARGV) -f Makefile.os2 --directory=$(BASEDIR)\\src --warn-undefined-variables localconstants \r
+       @$(ECHO)\r
+       @$(ECHO) "Now building lclint executable file..."\r
+       @$(ECHO)\r
+       $(MAKE) -f Makefile.os2 --directory=$(BASEDIR)\\src --warn-undefined-variables\r
+       @$(ECHO)\r
+       @$(ECHO) "Now moving lclint executable file to bin directory..."\r
+       @$(ECHO)\r
+       $(MV) $(BASEDIR)\src\lclint$E $(RELEASEDIR)\lclint$E\r
+\r
+configinc:\r
+       $(ECHO) "CC=$(CC)" >config.inc\r
+       $(ECHO) "CFLAGS=$(CFLAGS)" >>config.inc\r
+       $(ECHO) "CPPFLAGS=$(CPPFLAGS)" >>config.inc\r
+       $(ECHO) "BISON=$(BISON)" >>config.inc\r
+       $(ECHO) "FLEX=$(FLEX)" >>config.inc\r
+       $(ECHO) "YFLAGS=$(YFLAGS)" >>config.inc\r
+       $(ECHO) "LFLAGS=$(LFLAGS)" >>config.inc\r
+       $(ECHO) "SYSTEM_LIBDIR=\"$(SYSTEM_LIBDIR)\"" >>config.inc\r
+       $(ECHO) "DEFAULT_LCLIMPORTDIR=\"$(SYSTEM_IMPORTSDIR)\"" >>config.inc\r
+       $(ECHO) "DEFAULT_LARCHPATH=\"$(SYSTEM_LARCHPATH)\"" >>config.inc\r
+       $(ECHO) "DEFAULT_CPPCMD=\"$(CPPCMD)\"" >>config.inc\r
+       $(ECHO) "LINKFLAGS=$(LINKFLAGS)" >>config.inc\r
+       $(ECHO) "O=$O" >>config.inc\r
+       $(ECHO) "E=$E" >>config.inc\r
+       $(ECHO) "OFLAG=$(OFLAG)lclint$E" >>config.inc\r
+       $(ECHO) "CAT=$(CAT)" >>config.inc\r
+       $(ECHO) "MV=$(MV)" >>config.inc\r
+       $(ECHO) "CP=$(CP)" >>config.inc\r
+       $(ECHO) "ECHO=\"$(ECHO)\"" >>config.inc\r
+       $(CP) $(BASEDIR)\src\Headers\herald.h $(BASEDIR)\src\Headers\herald.last\r
+       $(ECHO) "/* herald.h - created automatically from herald.os2 and Makefile.os2 */" >$(BASEDIR)\src\Headers\herald.h\r
+       $(ECHO) "/*@constant observer char *LCL_VERSION;@*/" >>$(BASEDIR)\src\Headers\herald.h\r
+       $(ECHO) "# define LCL_VERSION \"LCLint $(LCL_VERSION) --- $(LCL_DATE)\"" >>$(BASEDIR)\src\Headers\herald.h\r
+       $(ECHO) "/*@constant observer char *LCL_PARSE_VERSION;@*/" >>$(BASEDIR)\src\Headers\herald.h\r
+       $(ECHO) "# define LCL_PARSE_VERSION \"LCLint $(LCL_VERSION)\"" >>$(BASEDIR)\src\Headers\herald.h\r
+       $(ECHO) "/*@constant observer char *LCL_COMPILE;@*/" >>$(BASEDIR)\src\Headers\herald.h\r
+       $(ECHO) "$(COMPILE_MSG)" >>$(BASEDIR)\src\Headers\herald.h\r
+\r
+###\r
+### locations of standard LCLint files\r
+###\r
+### this should NOT have to be edited if you use the standard\r
+###    installation package\r
+\r
+LCLINTBINDIR = $(BASEDIR)/bin\r
+\r
+LCLINTLIB = $(BASEDIR)/lib\r
+LCLINTIMPORTS = $(BASEDIR)/imports\r
+\r
+###\r
+### uses recursive make calls directly, so installation\r
+### will continue even if there are errors!\r
+###\r
+\r
+install: \r
+       $(MAKE) dobinaries   -f Makefile.os2\r
+       $(MAKE) dolibraries  -f Makefile.os2\r
+       $(MAKE) doimports    -f Makefile.os2\r
+\r
+dobinaries:\r
+       $(INSTALL) $(INSTALLFLAGS) $(LCLINTBINDIR)\lclint$E $(INSTALLDIR)\r
+\r
+dolibraries:\r
+       -mkdir$E $(LIBDIR)\r
+       $(CP) $(LCLINTLIB)\\* $(LIBDIR)\r
+\r
+doimports:\r
+       -mkdir$E $(IMPORTSDIR)\r
+       $(CP) $(LCLINTIMPORTS)\\* $(IMPORTSDIR)\r
+\r
This page took 0.068772 seconds and 4 git commands to generate.