summaryrefslogtreecommitdiff
path: root/gs/src/gp_unix.c
AgeCommit message (Collapse)AuthorFilesLines
2008-08-29Split the source tree into two new directories.Ralph Giles1-419/+0
PSSRC files are now in 'gs/psi'. GLSRC files are now in 'gs/base'. This is to facilitate build modularization and merging in the ghostpdl tree. NOTE: msvc32.mak is now in psi, not src. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@9048 a1074d23-0009-0410-80fe-cf8c14f379e6
2008-05-08Fix gcc warnings, unused variables and type mismatch, implicit declaration.Ray Johnston1-4/+3
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@8717 a1074d23-0009-0410-80fe-cf8c14f379e6
2007-06-22Added the fontconfig support from ESP GhostscriptTill Kamppeter1-3/+184
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@8072 a1074d23-0009-0410-80fe-cf8c14f379e6
2007-06-06Finally merged in extra functionality of ESP Ghostscript (from branch ↵Till Kamppeter1-0/+45
"gs-esp-gpl-merger") git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@8026 a1074d23-0009-0410-80fe-cf8c14f379e6
2007-06-05Update licence headers. Copyright has been transfered from artofcode LLCRalph Giles1-1/+1
to Artifex Software, Inc. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@8022 a1074d23-0009-0410-80fe-cf8c14f379e6
2007-05-14Revert the gs-esp merge down, as there are still some build issues.Ralph Giles1-45/+0
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@7971 a1074d23-0009-0410-80fe-cf8c14f379e6
2007-05-14Merged in extra functionality of ESP Ghostscript (from branch ↵Till Kamppeter1-0/+45
"gs-esp-gpl-merger") git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@7970 a1074d23-0009-0410-80fe-cf8c14f379e6
2007-05-08Back out everything after rev 7909Till Kamppeter1-45/+0
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@7919 a1074d23-0009-0410-80fe-cf8c14f379e6
2007-05-08Modularization of the X11 output devices into dynamic librariesTill Kamppeter1-0/+45
DETAILS: This patch allows to compile Ghostscript in a way that the X11 screen display output devices can be seperated into a dynamically linkable library, so that these devices can be put in a separate binary package in Linux distributions. This way the distributions can be installed with GhostScript and without the X libraries, which is important for headless print servers. This feature is only available for Unix with GCC (selected by the Makefile). Ghostscript will be compiled without built-in X11 support and with an extra X11.so file containing the X11 support. One can install Ghostscript with or without X11.so then, it will always work. It detects the presence of X11.so automatically and makes the X11 output devises available if X11.so is present (see "gs -h"). Small disadvantage: With modularized X11 support the "x11" device will not stay the default one. "bbox" will be the default then. Use "gs -sDEVICE=x11 ..." then. This patch is used since mid 2001 in ESP Ghostscript and has never caused any problems or bugs related to the modularization. EXPECTED DIFFERENCES: None (in the non-interactive automated regression tests) git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@7910 a1074d23-0009-0410-80fe-cf8c14f379e6
2006-09-13Implementing a 64 bits file access.Igor Melichev1-0/+7
DETAILS : This is a preparation for a fix for bug 688394 "clist playback of large pdf image segfaults". This is a preliminary implementation. Now it compiles for MSVC8, Linux/gcc . For other platforms/compilers it is stubbed with 32 bits file access. This patch requires to define -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE compiler options on Linux in Makefile . We could not figure out why Cygwin/gcc defines fopen64, ftello64, fseeko64, and then cannot link them. We didn't find imlementations of those functions in C libraries. EXPECTED DIFFERENCES : None. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@7040 a1074d23-0009-0410-80fe-cf8c14f379e6
2006-09-13Unwinding the revision 7038 due to wrong log message.Igor Melichev1-7/+0
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@7039 a1074d23-0009-0410-80fe-cf8c14f379e6
2006-09-13Fix : Cygwin/gcc warnings.Igor Melichev1-0/+7
DETAILS : This includes fixes for potentionally harmful warnings : Uninitialized variable : interp.c, zupath.c . Missing function prototype : zfile.h, stream.h (for sfxstdio.c), EXPECTED DIFFERENCES : None. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@7038 a1074d23-0009-0410-80fe-cf8c14f379e6
2006-03-13changed copyright headersStefan Kemper1-13/+10
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@6651 a1074d23-0009-0410-80fe-cf8c14f379e6
2004-01-15Initial commit of the persistent cache implementation. This version supports ↵Ralph Giles1-1/+1
only the *nix platform and does not include any eviction logic. Also currently the cache directory and empty 'gs_cache' index file must be created manually. DETAILS: Two new calls have been added to the gp layer: gp_cache_insert() and gp_cache_query(). These take a byte buffer as a key under which another buffer can be stored or recalled. In addition to the key, buffers are filed by 'type' which provides a separate namespace for each kind of data. These types should be one of the GP_CACHE_TYPE_* defines in gp.h. The query call takes a callback for allocating the buffer to be filled. Thus, all memory management for the key and value buffers is handled by the client and the query returns the data (if any) within a single call. A pair of postscript test operators, .pcacheinsert and .pcachequery are provided in zmisc.c, however they are disabled by default to prevent access to the cache by malicious postscript programs. They operate only with the 'test' type, so a denial-of-service attack is the only real risk; however we anticipate all access will be from C code. Compile with the DEBUG_CACHE preprocessor symbol to enable these. Improvements and implementations for other platforms are to follow. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@4576 a1074d23-0009-0410-80fe-cf8c14f379e6
2003-07-08Use 'fontname' instead of 'name' as an argument to gp_enumerate_fonts_next()Ralph Giles1-2/+2
to avoid a warning on MSVC. Thanks to Igor for pointing out the issue. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@4055 a1074d23-0009-0410-80fe-cf8c14f379e6
2003-07-04Initial check in of the native font enumeration mechanism with an ↵Ralph Giles1-0/+21
implementation for MacOS. The code is currently disabled pending resolution of bugs regarding some font files. DETAILS: This adds a trio of gp_enumerate_fonts calls which implement an interator for querying the native operating system for font files. This is essentially required to make use of the support for reading resource-based font collection files on MacOS since there is no convenient way to construct a Fontmap by hand. Thus our initial implementation focusses there and only stubs are provided on other platforms. However, it would generally be a useful feature on any system that provides such services. An iterator object is created with gp_enumerate_fonts_init() and released with gp_enumerate_fonts_free(). Between these calls, each font is returned by a successive call to gp_enumerate_fonts_next() as a pair of C strings giving the access path and reported font name. On MacOS these are implemented using the FMFontIterator API from Carbon. Unfortunately, while this returns font names and files, it does not provide details about the resource internals so we must open the file and extract the resource id corresponding to the font itself. It also is not always possible to obtain the correct postscript name from the OS call. Connection is made to postscript through the .getnativefonts operator, implemented in zfontenum.c. I handles the interation and places the results on the stack as an array of two element arrays, each representing the name and path as postscript strings. New code in gs_fonts.ps calls this and adds the entries to the fontmap after first calling .findfontname on each path to verify accessibility and in case the reported font name is unreliable. This is implemented as the .buildnativefontmap procedure, which is called by the font location logic if a requested font is not found in the Fontmap. Caveats: This can be a very expensive operation, so like the FONTPATH directory scanning it should probably only happen once in a given session, instead of every time a font isn't found. The macos implementation could also be considerably streamlined. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@4047 a1074d23-0009-0410-80fe-cf8c14f379e6
2003-04-08Initial commit of native MacOS font loading. This implements a %macresource% ↵Ralph Giles1-0/+10
iodevice for retrieving data from the 'resource' structure associated with MacOS files, either directly from the resource fork, or from a serialized data fork resource file. This is primarily used to access font data on that platform. Resource fork access is only supported on MacOS, while data fork files (e.g. .dfont format font files) can be read on any platform. This code is currently disabled. DETAILS: This change allows fonts stored in resources to be specified in the fontmap. A special indexing scheme is added to the filename to address the particular resource desired by id and 4-character type code, e.g. '%macresource%Arial#sfnt+4096' or '%macresource%/Library/Fonts/Optima.dfont#sfnt+14151'. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3786 a1074d23-0009-0410-80fe-cf8c14f379e6
2002-06-16Removes all uses of the now-deprecated Pn macros from all remaining .cL Peter Deutsch1-2/+2
files. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@2745 a1074d23-0009-0410-80fe-cf8c14f379e6
2002-05-14gs_exit() cleanup.Stefan Kemper1-0/+1
gs_exit() is renamed gs_to_exit() since it is an about to terminate cleanup function, it always returns. Both gs_to_exit() and gs_abort are client provided functions. The client can have its own special cleanup on exit, and the client can decide what it wants to do in the abort case: exit, setjump/longjump, ... gp_do_exit() is the way for the client to call a system independent exit() this allows for different exit codes on unix and vms for instance. Only the client can call this, if so desired from their gs_abort(). git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@2638 a1074d23-0009-0410-80fe-cf8c14f379e6
2002-02-21Reverts to marking files with the single Id cvs tag instead of theRalph Giles1-1/+1
RCSfile and Revision pair. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@2241 a1074d23-0009-0410-80fe-cf8c14f379e6
2002-02-21Update banner to the new format common to all releases (AFPL, GPL andRay Johnston1-13/+11
Artifex Software's commercial release). References file LICENSE. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@2234 a1074d23-0009-0410-80fe-cf8c14f379e6
2001-04-08Fix: Ghostscript should return to the caller, not exit.Russell Lang1-1/+0
Remove exit() from gp_do_exit() for all platforms except VMS. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@1411 a1074d23-0009-0410-80fe-cf8c14f379e6
2001-03-12Replace many references to exit() with returns.Russell Lang1-2/+2
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@1239 a1074d23-0009-0410-80fe-cf8c14f379e6
2000-09-19Updates the license notices to reflect the name change from AladdinL Peter Deutsch1-16/+16
Ghostscript to AFPL Ghostscript, as well as some internal references to the program name. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@729 a1074d23-0009-0410-80fe-cf8c14f379e6
2000-03-18Fix: For printer devices, a non-null definition for OutputFile was requiredL Peter Deutsch1-5/+2
even on platforms that had a default printer (as implemented by gp_open_printer for that platform). git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@94 a1074d23-0009-0410-80fe-cf8c14f379e6
2000-03-09Populate repository with gs 6.0 files.ghostscript-6.0L Peter Deutsch1-3/+15
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@2 a1074d23-0009-0410-80fe-cf8c14f379e6
2000-02-15Update to Aladdin 6.0 - Only license block formatting changed.Ray Johnston1-2/+3
git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@1089 06663e23-700e-0410-b217-a244a6096597
1999-12-12Imports Aladdin's 596.Henry Stiles1-16/+3
git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@1040 06663e23-700e-0410-b217-a244a6096597
1999-10-03This is the first gs593 integration it is *NOT* a release. NormallyHenry Stiles1-8/+5
each file is checked in with an associated log entry, in order to check in all of the code simultaneously we batch all of the file name's modified and change descriptions here (Note: Aladdin code changes are documented in gs/doc/News.htm) - pcstate.h - removes show enumeration from pcl state. - pctop.c, pxtop.c - gs_grestore_no_wraparound()'s is now gs_grestore_only(). - pxgstate.c - ENUM_RETURN_CONST_STRING_PTR() now takes a gs string argument instead of the string's data as it did previously. - plmain.c - - The library no longer initializes io devices. Adds gs_iodev_init() to main() procedure. Also, gs_c_param_list_rewrite() is renamed to gs_c_param_list_write_more(). - pcltop.mak - adds pipe.dev for operating system pipe support. - pctext.c, pglabel.c, pxfont.c, plfont.c - extensive modifications to support the text api (gstext.h) - use gs_text_enum_t instead of gs_show_enum. - removes enumeration allocation, this is now done by the text "begin" functions. - update "next_char" procs and "encode char" procs to take a glyph argument and the character argument is now passed by value (pcl nor xl make use of the glyph argument). - char_path_n_init() replaced with gs_charpath_begin(). - gs_show_n_init() replaced with gs_show_begin(). - gs_show_next() is now handled by gs_process_text(). - gs_release_text() added. - gs_xyshow_n_init() replace with gs_xyshow_begin(). Passing of x and y coordinates modified to support the new interface. Unfortunately, we need to transform the coordinates into the space of the font scaling matrix, that is the current ctm for xl when the the text is processed. This differs from postscript which appears to have the regular user->device matrix in the graphics state during processing. - (plfont.c) - gs_notify_init() is now part of the pfont initialization procedure, related TODO: cut over to gs_font_alloc() and gs_font_base_alloc(). - all gs files - removes uninitialized rcs identifiers. KNOWN PROBLEMS: occassional pxl and pcl crashes in gdev_mem_set_line_ptrs() when running in color due to null base (data) pointer. git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@985 06663e23-700e-0410-b217-a244a6096597
1998-08-22filters out the id string.Henry Stiles1-1/+1
git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@321 06663e23-700e-0410-b217-a244a6096597
1998-08-19gs 5.34 checkin.Henry Stiles1-1/+1
git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@318 06663e23-700e-0410-b217-a244a6096597
1998-08-08This commit was generated by cvs2svn to compensate for changes in r279,Henry Stiles1-15/+5
which included commits to RCS files with non-trunk default branches. git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@280 06663e23-700e-0410-b217-a244a6096597
1998-07-28This commit was generated by cvs2svn to compensate for changes in r257,Henry Stiles1-59/+71
which included commits to RCS files with non-trunk default branches. git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@258 06663e23-700e-0410-b217-a244a6096597
1998-07-26Initial revisionHenry Stiles1-0/+165
git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@246 06663e23-700e-0410-b217-a244a6096597