Autotools: a Practitioner's Guide to Autoconf, Automake and Libtool 01/06/2008 18:52

Total Page:16

File Type:pdf, Size:1020Kb

Autotools: a Practitioner's Guide to Autoconf, Automake and Libtool 01/06/2008 18:52 Autotools: a practitioner's guide to Autoconf, Automake and Libtool 01/06/2008 18:52 REVIEWS NEWSLETTERS ADVERTISE SPONSORS HELP FSM WRITE FOR US CONTACTS ABOUT © COLUMNS COMMUNITY POSTS ISSUES BOOKS FORUM FS NEWS Home Static Code Analysis Tool Source Code Analysis Deliver bug-free source code. Download whitepaper from Coverity. Tool Autotools: a practitioner's guide Coverity.com Covers 100% of the UK Software Developers execution path to resolve to Autoconf, Automake and Experienced software developers ASP.NET, SQL, C#, defects. Get free trial. Expertise Coverity.com Libtool www.pbcsystems.co.uk by John Calcote Process Mapping Software Free programming MS Visio Process Library solutions with web-enabled magazine keyword search There are few people who would deny that Autoconf, www.triaster.co.uk Claim a free subscription UK Scrum Training to VSJ The UK's leading Automake and Libtool have revolutionized the free software Certified Scrum Master training throughout the UK and developer title world. While there are many thousands of Autotools Europe www.vsj.co.uk advocates, some developers absolutely hate the Autotools, www.agilebear.com NI Graphical with a passion. Why? Let me try to explain with an analogy. Programming Powerful, Intuitive In the early 1990!s I was working on the final stages of my Programming w/ LabVIEW- Online Tutorials bachelor!s degree in computer science at Brigham Young & Evals. University. I took a 400-level computer graphics class, wherein www.ni.com I was introduced to C++, and the object-oriented programming Debug Trace Monitor paradigm. For the next 5 years, I had a love-hate relationship Collect diagnostics output with C++. I was a pretty good C coder by that time, and I from C#, VB.NET, VB6, thought I could easily pick up C++, as close in syntax as it was VBA, Script, COM, ... www.devtracer.com to C. How wrong I was. I fought late into the night, more often than I!d care to recall, with the C++ compiler over performance issues. Jobs at Sophos Career opportunities at The problem was that the most fundamental differences Sophos in IT, Software Development & Testing between C++ and C are not obvious to the casual observer. www.sophos.com/careers Most of these differences are buried deep within the C++ language specification, rather than on the surface, in the language syntax. The C++ compiler generates code beneath Tracking Worms,Spam and From the FSM staff... Malware ... the covers at a level never even conceived of by C compiler How to Restore Lost writers. This level of code generation provides functionality in a The Top 10 Everything Bookmarks in ... few lines of C++ code that requires dozens of lines of C code. (Dave). The good, the bad Google Adsense for RSS and the ugly. Oh, yes—you can write object-oriented software in C. But you Feeds Coming ... are required to manage all of the details yourself. In C++, Free Software news (Dave & Bridget). All about free these details are taken care of for you by the compiler. The software -- free as in advantages should be clear. freedom! Book Reviews: Illiterarty But this high-level functionality comes at a price—you have to Best voted (Bridget). Book reviews, contents learn to understand what the compiler is doing for you, so you blogs, and short stories. can write your code in a way that complements it. Not Open letter to surprisingly, often the most intuitive thing to do in this situation standards professionals, for the new C++ programmer is to inadvertently write code that developers, and works against the underlying infrastructure generated by the Hot topics - last 60 activists compiler. days Pieter Hintjens, 2008-05-13 The 2008 Google And therein lies the problem. Just as there were many Installing an all-in-one printer device in Debian Summer of Code: 21 programmers then (I won!t call them software engineers—that Projects I'm Excited Ryan Cartwright, 2008-05-05 title comes with experience, not from a college degree) About Things you miss with Andrew Min, 2008-05-13 complaining of the nightmare that was C++, so likewise there GNU/Linux The Bizarre Cathedral - are many programmers today complaining of the nightmare Ryan Cartwright, 2008-05-01 6 that is the Autotools. The differences between make and Why Microsoft should not Ryan Cartwright, 2008-05-25 http://www.freesoftwaremagazine.com/books/autotools_a_guide_to_autoconf_automake_libtool Page 1 of 9 Autotools: a practitioner's guide to Autoconf, Automake and Libtool 01/06/2008 18:52 that is the Autotools. The differences between make and Why Microsoft should not Ryan Cartwright, 2008-05-25 Automake are very similar to the differences between C and lose (and free software Digital Rights will still win) Management (DRM): is C++. The most basic single-line Makefile.am generates a Buzz authors Ryan Cartwright, 2008-04-21 it in its death throes? Makefile.in file (an Autoconf template) containing nearly 350 Marco Marongiu Drigg (the pligg Gary Richmond, 2008-05-07 lines of make script. Pieter Hintjens alternative) vs. Pligg: why drascus321 should people switch? Tony Mobily, 2008-04-13 Who should read this book dogboi Beyond Synaptic - using Richard Rothwell This book is written for the open source software package apt for better package management maintainer. I!m purposely not using the terms “free software” or All news Ryan Cartwright, 2008-04-03 “proprietary software that!s free”. The use of the term “open source” is critical in this context. You see, open source defines ! "# $%!&%": Party time with Ubuntu… Hot topics - last 21 a type of software distribution channel. One in which the days primary method of obtaining software functionality is Sridhar Dhanapalan: Open downloading a source archive, unpacking, building and CeBIT Dubious ads in Free Software Magazine installing the built products on your system. Free software may Martin Meredith: Welcome to the Family, Synergy Tony Mobily, 2008-05-25 be published in binary form. Proprietary software may be given Stephen Stalcup: Next The Bizarre Cathedral - 6 away. But open source software implies source-level Membershp meeting for the Ryan Cartwright, 2008-05-25 distribution. Americas Open letter to standards professionals, Source-level distribution relegates a particular portion of the Andres Rodriguez: Hello Planet Ubuntu!! developers, and activists responsibility of software development to the end-user that more Pieter Hintjens, 2008-05-13 has traditionally been assumed by the software developer. But The Bizarre Cathedral - 4 end-users are not developers, so most of them won!t know Ryan Cartwright, 2008-05-11 how to properly build your package. What to do, what to do… The most widely adopted approach from the earliest days of the open source movement was to make the package build process as simple as possible for the end user, such that she could perform a few well-known steps and have your package DEDICATED SERVER cleanly installed on her system. Odiogo Most packages are built using makefiles, and the make utility is as pervasive a tool as anything else that!s available. It!s very easy to type make—but that!s not the problem. The problem crops up when the package doesn!t build successfully, because of some unanticipated difference between the user!s system and the developer!s system. Thus was born the ubiquitous configure script—initially a simple shell script that configured the end-user!s environment 14 20 Essential KDE so that the make utility could successfully build a source Applications - Review package on the end-user!s system. Hand-coded configure 14 10 Reasons to Love Debian scripts helped, but they weren!t the final answer. They fixed 16 Burn Your CDs and about 65 percent of the problems resulting from system DVDs! K3b Review configuration differences—and they were a pain in the neck to 17 Novell’s Moonlight: Crippled and Defective write properly. Dozens of changes were made incrementally by Design™ over a period of years, until the script would work properly on 18 India Appeals Against most systems anyone cared about. But the entire process was OOXML, Joining Brazil, South Africa, Maybe clearly in need of an upgrade. More 17 Wiping your disk drive Do you have any idea of the number of build-breaking clean differences there are between existing systems today? Neither 20 Dear Google: Is AGPL Evil? do I, but there is a handful of developers in the world who 19 Slashdot: World’s know a large percentage of these differences. Between them Third-Largest Population Appeals and the free software community, the Autotools were born. ISO’s Decision The Autotools were designed to create configure scripts and Get this widget » makefiles that work correctly and provide significant chunks of valuable end-user functionality under most circumstances, and on most systems—even systems not initially considered (or even known about) by the package maintainer. http://www.freesoftwaremagazine.com/books/autotools_a_guide_to_autoconf_automake_libtool Page 2 of 9 Autotools: a practitioner's guide to Autoconf, Automake and Libtool 01/06/2008 18:52 So, returning to that passionate hate felt by some developers toward the Autotools: If you get your head screwed on straight about the primary purpose of the Autotools, then hate quickly turns into respect—and even appreciation. Often the root of such hate is a simple misunderstanding of the rationale behind the Autotools. The purpose of the Autotools is not to make life simpler for the package maintainer (although it really does in the long run). The purpose of the Autotools is to make life simpler for the end-user. To drive my point home, I!ll wager that you!ll never see a Linux distribution packager spouting hateful sentiment on the Autotools mailing lists.
Recommended publications
  • Program Library HOWTO David A
    Program Library HOWTO David A. Wheeler version 1.36, 15 May 2010 This HOWTO for programmers discusses how to create and use program libraries on Linux. This includes static libraries, shared libraries, and dynamically loaded libraries. Table of Contents Introduction...........................................................................................................................3 Static Libraries.......................................................................................................................3 Shared Libraries....................................................................................................................4 Dynamically Loaded (DL) Libraries...............................................................................11 Miscellaneous......................................................................................................................14 More Examples....................................................................................................................18 Other Information Sources...............................................................................................22 Copyright and License.......................................................................................................23 Introduction This HOWTO for programmers discusses how to create and use program libraries on Linux using the GNU toolset. A “program library” is simply a file containing com- piled code (and data) that is to be incorporated later into a program; program libraries allow
    [Show full text]
  • Source Code Trees in the VALLEY of THE
    PROGRAMMING GNOME Source code trees IN THE VALLEY OF THE CODETHORSTEN FISCHER So you’ve just like the one in Listing 1. Not too complex, eh? written yet another Unfortunately, creating a Makefile isn’t always the terrific GNOME best solution, as assumptions on programs program. Great! But locations, path names and others things may not be does it, like so many true in all cases, forcing the user to edit the file in other great programs, order to get it to work properly. lack something in terms of ease of installation? Even the Listing 1: A simple Makefile for a GNOME 1: CC=/usr/bin/gcc best and easiest to use programs 2: CFLAGS=`gnome-config —cflags gnome gnomeui` will cause headaches if you have to 3: LDFLAGS=`gnome-config —libs gnome gnomeui` type in lines like this, 4: OBJ=example.o one.o two.o 5: BINARIES=example With the help of gcc -c sourcee.c gnome-config —libs —cflags 6: gnome gnomeui gnomecanvaspixbuf -o sourcee.o 7: all: $(BINARIES) Automake and Autoconf, 8: you can create easily perhaps repeated for each of the files, and maybe 9: example: $(OBJ) with additional compiler flags too, only to then 10: $(CC) $(LDFLAGS) -o $@ $(OBJ) installed source code demand that everything is linked. And at the end, 11: do you then also have to copy the finished binary 12: .c.o: text trees. Read on to 13: $(CC) $(CFLAGS) -c $< manually into the destination directory? Instead, 14: find out how. wouldn’t you rather have an easy, portable and 15: clean: quick installation process? Well, you can – if you 16: rm -rf $(OBJ) $(BINARIES) know how.
    [Show full text]
  • Red Hat Enterprise Linux 6 Developer Guide
    Red Hat Enterprise Linux 6 Developer Guide An introduction to application development tools in Red Hat Enterprise Linux 6 Dave Brolley William Cohen Roland Grunberg Aldy Hernandez Karsten Hopp Jakub Jelinek Developer Guide Jeff Johnston Benjamin Kosnik Aleksander Kurtakov Chris Moller Phil Muldoon Andrew Overholt Charley Wang Kent Sebastian Red Hat Enterprise Linux 6 Developer Guide An introduction to application development tools in Red Hat Enterprise Linux 6 Edition 0 Author Dave Brolley [email protected] Author William Cohen [email protected] Author Roland Grunberg [email protected] Author Aldy Hernandez [email protected] Author Karsten Hopp [email protected] Author Jakub Jelinek [email protected] Author Jeff Johnston [email protected] Author Benjamin Kosnik [email protected] Author Aleksander Kurtakov [email protected] Author Chris Moller [email protected] Author Phil Muldoon [email protected] Author Andrew Overholt [email protected] Author Charley Wang [email protected] Author Kent Sebastian [email protected] Editor Don Domingo [email protected] Editor Jacquelynn East [email protected] Copyright © 2010 Red Hat, Inc. and others. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
    [Show full text]
  • GNU Build System
    Maemo Diablo Reference Manual for maemo 4.1 GNU Build System December 22, 2008 Contents 1 GNU Build System 2 1.1 Introduction .............................. 2 1.2 GNU Make and Makefiles ...................... 2 1.2.1 Simplest Real Example .................... 3 1.2.2 Anatomy of Makefile ..................... 6 1.2.3 Default Goal .......................... 7 1.2.4 On Names of Makefiles ................... 7 1.2.5 Questions ........................... 8 1.2.6 Adding Make Goals ..................... 8 1.2.7 Making One Target at a Time ................ 9 1.2.8 PHONY Keyword ...................... 9 1.2.9 Specifying Default Goal ................... 10 1.2.10 Other Common Phony Goals ................ 11 1.2.11 Variables in Makefiles .................... 11 1.2.12 Variable Flavors ........................ 11 1.2.13 Recursive Variables ...................... 12 1.2.14 Simple Variables ....................... 13 1.2.15 Automatic Variables ..................... 14 1.2.16 Integrating with Pkg-Config ................ 15 1.3 GNU Autotools ............................ 16 1.3.1 Brief History of Managing Portability ........... 17 1.3.2 GNU Autoconf ........................ 18 1.3.3 Substitutions ......................... 22 1.3.4 Introducing Automake .................... 24 1.3.5 Checking for Distribution Sanity .............. 29 1.3.6 Cleaning up .......................... 29 1.3.7 Integration with Pkg-Config ................ 30 1 Chapter 1 GNU Build System 1.1 Introduction The following code examples are used in this chapter: simple-make-files • autoconf-automake • 1.2 GNU Make and Makefiles The make program from the GNU project is a powerful tool to aid implementing automation in the software building process. Beside this, it can be used to automate any task that uses files and in which these files are transformed into some other form.
    [Show full text]
  • Studying the Real World Today's Topics
    Studying the real world Today's topics Free and open source software (FOSS) What is it, who uses it, history Making the most of other people's software Learning from, using, and contributing Learning about your own system Using tools to understand software without source Free and open source software Access to source code Free = freedom to use, modify, copy Some potential benefits Can build for different platforms and needs Development driven by community Different perspectives and ideas More people looking at the code for bugs/security issues Structure Volunteers, sponsored by companies Generally anyone can propose ideas and submit code Different structures in charge of what features/code gets in Free and open source software Tons of FOSS out there Nearly everything on myth Desktop applications (Firefox, Chromium, LibreOffice) Programming tools (compilers, libraries, IDEs) Servers (Apache web server, MySQL) Many companies contribute to FOSS Android core Apple Darwin Microsoft .NET A brief history of FOSS 1960s: Software distributed with hardware Source included, users could fix bugs 1970s: Start of software licensing 1974: Software is copyrightable 1975: First license for UNIX sold 1980s: Popularity of closed-source software Software valued independent of hardware Richard Stallman Started the free software movement (1983) The GNU project GNU = GNU's Not Unix An operating system with unix-like interface GNU General Public License Free software: users have access to source, can modify and redistribute Must share modifications under same
    [Show full text]
  • Beginning Portable Shell Scripting from Novice to Professional
    Beginning Portable Shell Scripting From Novice to Professional Peter Seebach 10436fmfinal 1 10/23/08 10:40:24 PM Beginning Portable Shell Scripting: From Novice to Professional Copyright © 2008 by Peter Seebach All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the copyright owner and the publisher. ISBN-13 (pbk): 978-1-4302-1043-6 ISBN-10 (pbk): 1-4302-1043-5 ISBN-13 (electronic): 978-1-4302-1044-3 ISBN-10 (electronic): 1-4302-1044-3 Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1 Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. Lead Editor: Frank Pohlmann Technical Reviewer: Gary V. Vaughan Editorial Board: Clay Andres, Steve Anglin, Ewan Buckingham, Tony Campbell, Gary Cornell, Jonathan Gennick, Michelle Lowman, Matthew Moodie, Jeffrey Pepper, Frank Pohlmann, Ben Renow-Clarke, Dominic Shakeshaft, Matt Wade, Tom Welsh Project Manager: Richard Dal Porto Copy Editor: Kim Benbow Associate Production Director: Kari Brooks-Copony Production Editor: Katie Stence Compositor: Linda Weidemann, Wolf Creek Press Proofreader: Dan Shaw Indexer: Broccoli Information Management Cover Designer: Kurt Krames Manufacturing Director: Tom Debolski Distributed to the book trade worldwide by Springer-Verlag New York, Inc., 233 Spring Street, 6th Floor, New York, NY 10013.
    [Show full text]
  • The GNOME Desktop Environment
    The GNOME desktop environment Miguel de Icaza ([email protected]) Instituto de Ciencias Nucleares, UNAM Elliot Lee ([email protected]) Federico Mena ([email protected]) Instituto de Ciencias Nucleares, UNAM Tom Tromey ([email protected]) April 27, 1998 Abstract We present an overview of the free GNU Network Object Model Environment (GNOME). GNOME is a suite of X11 GUI applications that provides joy to users and hackers alike. It has been designed for extensibility and automation by using CORBA and scripting languages throughout the code. GNOME is licensed under the terms of the GNU GPL and the GNU LGPL and has been developed on the Internet by a loosely-coupled team of programmers. 1 Motivation Free operating systems1 are excellent at providing server-class services, and so are often the ideal choice for a server machine. However, the lack of a consistent user interface and of consumer-targeted applications has prevented free operating systems from reaching the vast majority of users — the desktop users. As such, the benefits of free software have only been enjoyed by the technically savvy computer user community. Most users are still locked into proprietary solutions for their desktop environments. By using GNOME, free operating systems will have a complete, user-friendly desktop which will provide users with powerful and easy-to-use graphical applications. Many people have suggested that the cause for the lack of free user-oriented appli- cations is that these do not provide enough excitement to hackers, as opposed to system- level programming. Since most of the GNOME code had to be written by hackers, we kept them happy: the magic recipe here is to design GNOME around an adrenaline response by trying to use exciting models and ideas in the applications.
    [Show full text]
  • Why and How I Use Lilypond Daniel F
    Why and How I Use LilyPond Daniel F. Savarese Version 1.1 Copyright © 2018 Daniel F. Savarese1 even with an academic discount. I never got my money's Introduction worth out of it. At the time I couldn't explain exactly why, but I was never productive using it. In June of 2017, I received an email from someone using my classical guitar transcriptions inquiring about how I Years later, when I started playing piano, I upgraded to use LilyPond2 to typeset (or engrave) music. He was the latest version of Finale and suddenly found it easier dissatisfied with his existing WYSIWYG3 commercial to produce scores using the software. It had nothing to software and was looking for alternatives. He was im- do with new features in the product. After notating eight pressed with the appearance of my transcription of Lá- original piano compositions, I realized that my previous grima and wondered if I would share the source for it difficulties had to do with the idiosyncratic requirements and my other transcriptions. of guitar music that were not well-supported by the soft- ware. Nevertheless, note entry and the overall user inter- I sent the inquirer a lengthy response explaining that I'd face of Finale were tedious. I appreciated how accurate like to share the source for my transcriptions, but that it the MIDI playback could be with respect to dynamics, wouldn't be readily usable by anyone given the rather tempo changes, articulations, and so on. But I had little involved set of support files and programs I've built to need for MIDI output.
    [Show full text]
  • The Glib/GTK+ Development Platform
    The GLib/GTK+ Development Platform A Getting Started Guide Version 0.8 Sébastien Wilmet March 29, 2019 Contents 1 Introduction 3 1.1 License . 3 1.2 Financial Support . 3 1.3 Todo List for this Book and a Quick 2019 Update . 4 1.4 What is GLib and GTK+? . 4 1.5 The GNOME Desktop . 5 1.6 Prerequisites . 6 1.7 Why and When Using the C Language? . 7 1.7.1 Separate the Backend from the Frontend . 7 1.7.2 Other Aspects to Keep in Mind . 8 1.8 Learning Path . 9 1.9 The Development Environment . 10 1.10 Acknowledgments . 10 I GLib, the Core Library 11 2 GLib, the Core Library 12 2.1 Basics . 13 2.1.1 Type Definitions . 13 2.1.2 Frequently Used Macros . 13 2.1.3 Debugging Macros . 14 2.1.4 Memory . 16 2.1.5 String Handling . 18 2.2 Data Structures . 20 2.2.1 Lists . 20 2.2.2 Trees . 24 2.2.3 Hash Tables . 29 2.3 The Main Event Loop . 31 2.4 Other Features . 33 II Object-Oriented Programming in C 35 3 Semi-Object-Oriented Programming in C 37 3.1 Header Example . 37 3.1.1 Project Namespace . 37 3.1.2 Class Namespace . 39 3.1.3 Lowercase, Uppercase or CamelCase? . 39 3.1.4 Include Guard . 39 3.1.5 C++ Support . 39 1 3.1.6 #include . 39 3.1.7 Type Definition . 40 3.1.8 Object Constructor . 40 3.1.9 Object Destructor .
    [Show full text]
  • Using GNU Autotools to Manage a “Minimal Project”
    05AAL Ch 04 9/12/00 10:14 AM Page 21 4 Using GNU Autotools to Manage a “Minimal Project” This chapter describes how to manage a minimal project using the GNU Autotools. For this discussion, a minimal project refers to the smallest possible project that can still illustrate a sufficient number of principles related to using the tools. Studying a smaller project makes it easier to understand the more complex interactions between these tools when larger projects require advanced features. The example project used throughout this chapter is a fictitious command interpreter called ‘foonly’. ‘foonly’ is written in C, but like many interpreters, uses a lexical analyzer and a parser expressed using the lex and yacc tools. The package is developed to adhere to the GNU ‘Makefile’ standard, which is the default behavior for Automake. This project does not use many features of the GNU Autotools. The most note- worthy one is libraries; this package does not produce any libraries of its own, so Libtool does not feature them in this chapter. The more complex projects presented in Chapter 7, “A Small GNU Autotools Project” and Chapter 11, “A Large GNU Autotools Project” illustrate how Libtool participates in the build system. The essence of this chapter is to provide a high-level overview of the user-written files and how they interact. 4.1 User-Provided Input Files The smallest project requires the user to provide only two files. The GNU Autotools generate the remainder of the files needed to build the package are in Section 4.2, “Generated Output Files.”
    [Show full text]
  • The Starlink Build System SSN/78.1 —Abstract I
    SSN/78.1 Starlink Project Starlink System Note 78.1 Norman Gray, Peter W Draper, Mark B Taylor, Steven E Rankin 11 April 2005 Copyright 2004-5, Council for the Central Laboratory of the Research Councils Copyright 2007, Particle Physics and Astronomy Research Council Copyright 2007, Science and Technology Facilities Council The Starlink Build System SSN/78.1 —Abstract i Abstract This document provides an introduction to the Starlink build system. It describes how to use the Starlink versions of the GNU autotools (autoconf, automake and libtool), how to build the software set from a checkout, how to add and configure new components, and acts as a reference manual for the Starlink-specific autoconf macros and Starlink automake features. It does not describe the management of the CVS repository in detail, nor any other source maintainance patterns. It should be read in conjunction with the detailed build instructions in the README file at the top of the source tree (which takes precedence over any instructions in this document, though there should be no major disagreements), and with sun248, which additionally includes platform-specific notes. Copyright 2004-5, Council for the Central Laboratory of the Research Councils Copyright 2007, Particle Physics and Astronomy Research Council Copyright 2007, Science and Technology Facilities Council ii SSN/78.1—Contents Contents 1 Introduction 1 1.1 Quick entry-points . 2 2 Tools 3 2.1 Overview of the Autotools . 3 2.1.1 Autoconf . 5 2.1.2 Automake . 9 2.1.3 Libtool . 13 2.1.4 Autoreconf: why you don’t need to know about aclocal .
    [Show full text]
  • GNU Astronomy Utilities
    GNU Astronomy Utilities Astronomical data manipulation and analysis programs and libraries for version 0.15.58-2b10e, 23 September 2021 Mohammad Akhlaghi Gnuastro (source code, book and web page) authors (sorted by number of commits): Mohammad Akhlaghi ([email protected], 1812) Pedram Ashofteh Ardakani ([email protected], 54) Raul Infante-Sainz ([email protected], 34) Mos`eGiordano ([email protected], 29) Vladimir Markelov ([email protected], 18) Sachin Kumar Singh ([email protected], 13) Zahra Sharbaf ([email protected], 12) Nat´aliD. Anzanello ([email protected], 8) Boud Roukema ([email protected], 7) Carlos Morales-Socorro ([email protected], 3) Th´er`eseGodefroy ([email protected], 3) Joseph Putko ([email protected], 2) Samane Raji ([email protected], 2) Alexey Dokuchaev ([email protected], 1) Andreas Stieger ([email protected], 1) Fran¸coisOchsenbein ([email protected], 1) Kartik Ohri ([email protected], 1) Leindert Boogaard ([email protected], 1) Lucas MacQuarrie ([email protected], 1) Madhav Bansal ([email protected], 1) Miguel de Val-Borro ([email protected], 1) Sepideh Eskandarlou ([email protected], 1) This book documents version 0.15.58-2b10e of the GNU Astronomy Utilities (Gnuastro). Gnuastro provides various programs and libraries for astronomical data manipulation and analysis. Copyright c 2015-2021, Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
    [Show full text]