diff options
author | Russell Lang <gsview@ghostgum.com.au> | 2001-04-01 10:13:24 +0000 |
---|---|---|
committer | Russell Lang <gsview@ghostgum.com.au> | 2001-04-01 10:13:24 +0000 |
commit | 4a753eeedfdb0f4e2825c212157fc6fa0d91d151 (patch) | |
tree | 5810f49f8d43eef99a59f94d2aa179d961a45f76 /gs/src | |
parent | 31d72e614a8ddae7920c488d7fbe4f7b70b9ea5b (diff) |
Adds target to OS/2 makefile to build distribution zip archive.
Disables multiple image windows for OS/2 because we can't tell
when subsequent windows are closed. To allow multiple windows
we would need to rewrite gspmdrv.c.
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@1351 a1074d23-0009-0410-80fe-cf8c14f379e6
Diffstat (limited to 'gs/src')
-rw-r--r-- | gs/src/dpmain.c | 19 | ||||
-rw-r--r-- | gs/src/os2.mak | 26 |
2 files changed, 45 insertions, 0 deletions
diff --git a/gs/src/dpmain.c b/gs/src/dpmain.c index cbcc59f68..d3626dd48 100644 --- a/gs/src/dpmain.c +++ b/gs/src/dpmain.c @@ -566,6 +566,25 @@ int display_open(void *handle, void *device) fprintf(stdout, "display_open(0x%x, 0x%x)\n", handle, device); #endif + if (first_image) { + /* gsos2.exe is a console application, and displays using + * gspmdrv.exe which is a PM application. To start + * gspmdrv.exe, DosStartSession is used with SSF_RELATED_CHILD. + * A process can have only one child session marked SSF_RELATED_CHILD. + * When we call DosStopSession for the second session, it will + * close, but it will not write to the termination queue. + * When we wait for the session to end by reading the + * termination queue, we wait forever. + * For this reason, multiple image windows are disabled + * for OS/2. + * To get around this, we would need to replace the current + * method of one gspmdrv.exe session per window, to having + * a new PM application which can display multiple windows + * within a single session. + */ + return e_limitcheck; + } + img = (IMAGE *)malloc(sizeof(IMAGE)); if (img == NULL) return e_limitcheck; diff --git a/gs/src/os2.mak b/gs/src/os2.mak index ad14347f2..b23640c02 100644 --- a/gs/src/os2.mak +++ b/gs/src/os2.mak @@ -664,3 +664,29 @@ $(BINDIR)\gspmdrv.exe: $(GLOBJ)gspmdrv.o $(GLOBJ)gspmdrv.res $(GLSRC)gspmdrv.def $(COMPDIR)\$(COMP) $(CGDB) $(CO) -o $(GLOBJ)gspmdrv $(GLOBJ)gspmdrv.o $(COMPDIR)\emxbind -p -r$(GLOBJ)gspmdrv.res -d$(GLSRC)gspmdrv.def $(COMPDIR)\emxl.exe $(GLOBJ)gspmdrv $(BINDIR)\gspmdrv.exe del $(GLOBJ)gspmdrv + +# Create a ZIP archive +# This assumes that the current directory is named gs#.## relative to its +# parent, where #.## is the Ghostscript version. + +ZIP_XE=zip +ZIPPROGFILE1=gs$(GS_DOT_VERSION)\bin\gsos2.exe +ZIPPROGFILE2=gs$(GS_DOT_VERSION)\bin\gsdll2.dll +ZIPPROGFILE3=gs$(GS_DOT_VERSION)\bin\gspmdrv.exe +ZIPPROGFILE4=gs$(GS_DOT_VERSION)\doc +ZIPPROGFILE5=gs$(GS_DOT_VERSION)\examples +ZIPPROGFILE6=gs$(GS_DOT_VERSION)\lib +ZIPFONTDIR=fonts + +# Make the zip archive. +zip: + cd .. + -del gs$(GS_VERSION)os2.zip + $(ZIP_XE) -9 -r gs$(GS_VERSION)os2.zip $(ZIPFONTDIR) + $(ZIP_XE) -9 -r gs$(GS_VERSION)os2.zip $(ZIPPROGFILE1) + $(ZIP_XE) -9 -r gs$(GS_VERSION)os2.zip $(ZIPPROGFILE2) + $(ZIP_XE) -9 -r gs$(GS_VERSION)os2.zip $(ZIPPROGFILE3) + $(ZIP_XE) -9 -r gs$(GS_VERSION)os2.zip $(ZIPPROGFILE4) + $(ZIP_XE) -9 -r gs$(GS_VERSION)os2.zip $(ZIPPROGFILE5) + $(ZIP_XE) -9 -r gs$(GS_VERSION)os2.zip $(ZIPPROGFILE6) + cd gs$(GS_DOT_VERSION) |