delorie.com/djgpp/faq/command-line/long.html | search |
I have a Makefile of Unix origin which contains some _very_ long command lines. Will it work with djgpp?
Yes and yes. DJGPP supports several methods of passing command-line arguments which allow to work around the DOS 127-character limit. These are:
This method is suitable only for invoking djgpp programs from other djgpp programs. You don't have to do anything special to use this method, it is all done automagically for you by the spawnXX() and execXX() family of library functions on the parent program side, and by go32 on the child side.
This method is suitable for invoking djgpp programs from GNUish ports of GNU software, like real-mode make program found on SimTel mirrors, some ports of Unix shells (like ms_sh), etc. You can also use it in your real-mode programs by creating the above environment variables.
Note that djgpp programs can only use this method, but they don't generate GNUish-style environment variables, so you cannot use this method to pass long command lines between djgpp and non-djgpp programs, unless your program explicitly creates these variables before calling execXX() or spawnXX().
Note that this method makes @ special when it is the first (or the only) character of a command-line argument, which should be escape-protected if you want to use it verbatim.
webmaster | delorie software privacy |
Copyright © 1995 | Updated Feb 1995 |