Cart
Free Shipping in the UK
Proud to be B-Corp

Porting UNIX Software Greg Lehey

Porting UNIX Software By Greg Lehey

Porting UNIX Software by Greg Lehey


£20.95
Condition - Like New
Only 1 left

Summary

Dealing with the whole life cycle of porting software on UNIX, from obtaining software to building the documentation, this text discusses the differences between versions of UNIX and the areas where porters tend to have problems.

Porting UNIX Software Summary

Porting UNIX Software by Greg Lehey

Dealing with the whole life cycle of porting software on UNIX, from obtaining software to building the documentation, this text discusses the differences between versions of UNIX and the areas where porters tend to have problems. The assumption made in this book is that you just want to get a package working on your system; you don't want to become an expert in the details of your hardware or operating system.

About Greg Lehey

Greg Lehey is an independent computer consultant specializing in UNIX. Born in Australia, he was educated in Malaysia and England before studying chemistry in Germany and chemical engineering in England. He has spent his professional career in Germany, where he worked for computer manufacturers such as Univac and Tandem, the German space research agency, nameless software houses, and a large user before deciding to work for himself. In the course of over 20 years in the industry he has performed most jobs you can think of, ranging from kernel support to product marketing, systems programming to operating, processing satellite data to programming gasoline pumps. About the only thing he hasn't done is write commercial software. He is currently engaged in the production of CD-ROMs of ported free software, and this book is one result of his experience in this area. He is available for short-term contracts and can be reached by mail at [email protected]. When he can drag himself away from his collection of UNIX workstations, he is involved in performing baroque and classical woodwind music on his collection of original instruments, exploring the German countryside with his family on their Arab horses, and exploring new cookery techniques or ancient and obscure European languages.

Table of Contents

Preface. PART 1: The Story of a Port. Chapter 1. Introduction What Is Porting? How Long Does It Take? Why We Need to Port Where You Fit In But Can I Do It? How to Use This Book Preparations. Chapter 2. Unpacking the Goodies Getting the Sources Archives. Chapter 3. Care and Feeding of Source Trees Updating Old Archives Handling Trees on CD-ROM Tracking Changes to the Tree An Example--Updating an Existing Tree. Chapter 4. Configuring the Package Installation Paths Conveying Configuration Information What Do I Need to Change? Creating Configuration Information Multiple Makefile Targets Manual Configuration Configuration Scripts GNU Package Configuration imake program. Chapter 5. Building the Package Preparation Standard Targets Problems Running make Modifying Makefiles. Chapter 6. Running the Compiler Compiler Warnings Compiler Errors. Chapter 7. Documentation Preformatted Documentation roff and Friends Man Pages T\h'-.2m'\v'.3n'E\v'-.3n'\h'-.2n'X GNU info and texinfo The World Wide Web. Chapter 8. Testing the Results A Strategy for Testing Symbolic Debuggers Libraries and Debugging Information Tracing System Calls. Chapter 9. Installation make install Installing the Correct Files install Installing Documentation Removing Installed Software Keeping Track of Installed Software. Chapter 10. Where to Go from Here Reporting Modifications Saving the Archive Not Done After All? PART 2: UNIX Flavor Guide. Chapter 11. Hardware Dependencies Data Types Pointer Size Address Space Character Order Data Alignment. Chapter 12. Kernel Dependencies Interprocess Communication Miscellaneous System Functionality. Chapter 13. Signals Supported Signals Unreliable and Reliable Signals Signal Handlers SIGCLD and SIGCHLD Interrupted System Calls Calling Functions from Signal Handlers Current Signal Implementations Other Signal-Related Functions. Chapter 14. File Systems File System Structures Function Calls Nonblocking I/O File Locking Memory-Mapped Files. Chapter 15. Terminal Drivers Typical Terminal Code Terminology Terminal Data Structures Terminal Driver Modes ioctl termios Functions. Chapter 16. Timekeeping Problems with UNIX Time Functions Getting the Current Time Setting the Current Time Converting Time Values Suspending Process Execution. Chapter 17. Header Files ANSI C, POSIX.1, and Header Files Names and Locations Problems with Header Files. Chapter 18. Function Libraries Standard Library Functionality Block Memory Access Functions Regular Expression Routines termcap and terminfo. Chapter 19. make Terminology Additional make Features BSD make. Chapter 20. Compilers The C Language Kernighan and Ritchie UNIX C ANSI C C++ Other C Dialects Compiler Organization The C Preprocessor Choosing a Compiler. Chapter 21. Object Files and Friends Object Formats The Assembler The Linker Dumping to Object Files Process Initialization and Stack Frames Object Archive Formats PART 3: Appendixes Appendix A. Comparative Reference to UNIX Data Types Appendix B. C Compiler Options C Compiler Options gcc Dialect Options gcc Debugging Options gcc Warning Options cpp Options Appendix C. Assembler Directives and Options as Options as Directives Appendix D. Linker Options Appendix E. Where to Get Sources CD-ROM Producers Glossary Index. Tables. 2-1 Common Filename Suffixes. 7-1 Starting Preprocessors from groff. 7-2 UNIX Manual Sections. 9-1 install Options. 12-1 getrlimit and setrlimit Resources. 13-1 Signal Usage 13-2 sigaction Flags. 13-3 sigprocmask Functional Modes. 14-1 fcntl Commands. 14-2 fcntl File Status Flags. 14-3 pathconf Actions. 14-4 poll Event Codes. 14-5 poll Result Codes. 14-6 I_SETSIG Event Mask Bits. 14-7 uucp Lock File Names and Formats. 14-8 locking Operation Codes. 14-9 flock.l_type Values. 14-10 lock Functions. 15-1 RS-232 Signals. 15-2 Seventh Edition Bit Rate Codes. 15-3 Seventh Edition tty Flags. 15-4 termios c_iflag Bits. 15-5 termios c_oflag Bits. 15-6 termios c_cflag Bits. 15-7 System V termios c_lflag Bits. 15-8 BSD termios c_lflag Bits. 15-9 termio and termios Special Characters. 15-10 Defining Terminal Modes with termios. 15-11 ioctl Parameters. 15-12 Comparison of sgttyb, termio, and termios ioctls. 15-13 TIOCMSET and TIOCMGET State Bits. 15-14 TCXONC and tcflow Type Bits. 15-15 TCFLSH Type Bits. 15-16 tcsetattr Action Flags. 15-17 tcflush Action Bits. 16-1 setitimer Signals. 18-1 fnmatch Flags. 18-2 regcomp Error Codes. 18-3 cflags Bits for regcomp. 18-4 eflags Bits for regexec. 18-5 Conventions for Terminal Names. 19-1 make Local Variables. 19-2 bsd.prog.mk Targets. 19-3 Variables Defined in bsd.prog.mk. 19-4 Variables used by bsd.prog.mk. 19-5 Variables Defined or Used in bsd.lib.mk. 19-6 Variables Defined or Used by bsd.man.mk. 19-7 Variables Defined in bsd.doc.mk. 20-1 ANSI C Trigraphs. 20-2 C Compiler Intermediate Files. 21-1 Kinds of Segments. 21-2 a.out Symbol Types. A-1 System Type Definitions. E-1 Software Sources.

Additional information

GOR013621151
9781565921269
1565921267
Porting UNIX Software by Greg Lehey
Used - Like New
Hardback
O'Reilly Media
1995-05-09
534
N/A
Book picture is for illustrative purposes only, actual binding, cover or edition may vary.
The book has been read, but looks new. The book cover has no visible wear, and the dust jacket is included if applicable. No missing or damaged pages, no tears, possible very minimal creasing, no underlining or highlighting of text, and no writing in the margins

Customer Reviews - Porting UNIX Software