SlideShare a Scribd company logo
Definitions
Flow for Automake and Autocof
Input files
Features
Automake
An Autotool
Priyanka Kapoor
June 7, 2013
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Make
Configure Script
Autoconf
Automake
Make
Make utility determines which piece of source code need to be
recompiled and it issues command to recompile only those pieces.
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Make
Configure Script
Autoconf
Automake
Dependencies Between Files
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Make
Configure Script
Autoconf
Automake
Source Code of Files in a Project
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Make
Configure Script
Autoconf
Automake
Makefile for the Project
Syntax
target: prerequisite-list
TAB construction-commands
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Make
Configure Script
Autoconf
Automake
Configure Script
A configure script can be used to aid cross-platform compiling. A
suitable configure script should interpret a Makefile.in file and then
create a platform-specific Makefile file.
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Make
Configure Script
Autoconf
Automake
Autoconf
Autoconf is used to make configure scripts automatically and that
too with GNU coding standards.
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Make
Configure Script
Autoconf
Automake
INs And OUTs Of Autoconf
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Make
Configure Script
Autoconf
Automake
Automake
Automake is a programming tool that produces portable makefiles
for use by the make program, used in compiling software.
It is made by the Free Software Foundation as one of the GNU
programs, and is part of the GNU build system.
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Make
Configure Script
Autoconf
Automake
INs And OUTs Of Automake
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Flow for Automake and Autoconf
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
configure.ac
Makefile.am
Automake Input
Input Files
So to use automake, there are two input files. They are:
1 configure.ac
2 Makefile.ac
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
configure.ac
Makefile.am
Demo Of config.ac File
Every configure.ac should have lines like the following:
AC_INIT([hello], [0.1], [bug-report@hello.example.com],
[hello], [http://hello.example.com/])
AC_PREREQ([2.59])
AM_INIT_AUTOMAKE([1.10 no-define])
AC_CONFIG_HEADERS([config.h])
AC_PROG_CXX
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
configure.ac
Makefile.am
Explanation of config.ac File
1 AC INIT macro initializes autoconf with information about
your project, including the project name, version number,
bug-reporting address, tarball name and the project homepage.
2 AC PREREQ(VERSION) macro is optional.
3 AM INIT AUTOMAKE macro takes two arguments: the
name of the package, and a version number.
4 AM CONFIG HEADER macro names the header file which
will hold the preprocessor macro definitions at run time.
5 AC PROG CXX checks for a C++ compiler. If your project
uses C, you can check for a C compiler with AC PROG CC.
6 AC OUTPUT macro takes a list of file names which the
configure process should produce
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
configure.ac
Makefile.am
Demo of Makefile.am File
AUTOMAKE_OPTIONS = foreign
CFLAGS=-Wall -I/usr/local/include -DVERSION="$(VERSION)"
-DPROG=""$(PACKAGE)""
LDFLAGS=-L/usr/local/lib -lX11 -lXtst -lxosd
bin_PROGRAMS = getkey
getkey_SOURCES = getkey.c circ_list.c
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Features of Automake
Automake generates a makefile that allows the user to:
1 Compile the program.
2 The makefiles produced follow the GNU Coding Standards.
3 Clean (i.e. remove the files resulting from the compilation).
4 Create a source distribution archive (commonly called a
tarball).
5 Install the program in standard directories.
6 Uninstall the program from where it was installed.
Guru Nanak Dev Engineering College priyankacool10.wordpress.com
Definitions
Flow for Automake and Autocof
Input files
Features
Thank You
Guru Nanak Dev Engineering College priyankacool10.wordpress.com

More Related Content

What's hot

Angular 5
Angular 5Angular 5
Angular server side rendering - Strategies & Technics
Angular server side rendering - Strategies & Technics Angular server side rendering - Strategies & Technics
Angular server side rendering - Strategies & Technics
Eliran Eliassy
 
Angular 2 for Java Developers
Angular 2 for Java DevelopersAngular 2 for Java Developers
Angular 2 for Java Developers
Yakov Fain
 
Eclipse 2011 Hot Topics
Eclipse 2011 Hot TopicsEclipse 2011 Hot Topics
Eclipse 2011 Hot Topics
Lars Vogel
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
Naveen Pete
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
Knoldus Inc.
 
Angular Best Practices - Perfomatix
Angular Best Practices - PerfomatixAngular Best Practices - Perfomatix
Angular Best Practices - Perfomatix
Perfomatix Solutions
 
هیبرید کارا، از رویا تا واقعیت!
هیبرید کارا، از رویا تا واقعیت!هیبرید کارا، از رویا تا واقعیت!
هیبرید کارا، از رویا تا واقعیت!
Web Standards School
 
Angular 2 - a New Hope
Angular 2 - a New HopeAngular 2 - a New Hope
Angular 2 - a New Hope
Sami Suo-Heikki
 
Angular - Improve Runtime performance 2019
Angular - Improve Runtime performance 2019Angular - Improve Runtime performance 2019
Angular - Improve Runtime performance 2019
Eliran Eliassy
 
Angular 4 and TypeScript
Angular 4 and TypeScriptAngular 4 and TypeScript
Angular 4 and TypeScript
Ahmed El-Kady
 
Angular 4 for Java Developers
Angular 4 for Java DevelopersAngular 4 for Java Developers
Angular 4 for Java Developers
Yakov Fain
 
Angular 2
Angular 2Angular 2
Angular 2
Pramod Raghav
 
vJUG - The JavaFX Ecosystem
vJUG - The JavaFX EcosystemvJUG - The JavaFX Ecosystem
vJUG - The JavaFX Ecosystem
Andres Almiray
 
React: JSX and Top Level API
React: JSX and Top Level APIReact: JSX and Top Level API
React: JSX and Top Level API
Fabio Biondi
 
Angular App Presentation
Angular App PresentationAngular App Presentation
Angular App Presentation
Elizabeth Long
 
Oro Workflows
Oro WorkflowsOro Workflows
Oro Workflows
Yevhen Shyshkin
 
DevRock #01 What's new ASP.net 5
DevRock #01 What's new ASP.net 5DevRock #01 What's new ASP.net 5
DevRock #01 What's new ASP.net 5
Chaowlert Chaisrichalermpol
 
Introduction To Angular 4 - J2I
Introduction To Angular 4 - J2IIntroduction To Angular 4 - J2I
Introduction To Angular 4 - J2I
Nader Debbabi
 
Remote Config REST API and Versioning
Remote Config REST API and VersioningRemote Config REST API and Versioning
Remote Config REST API and Versioning
Jumpei Matsuda
 

What's hot (20)

Angular 5
Angular 5Angular 5
Angular 5
 
Angular server side rendering - Strategies & Technics
Angular server side rendering - Strategies & Technics Angular server side rendering - Strategies & Technics
Angular server side rendering - Strategies & Technics
 
Angular 2 for Java Developers
Angular 2 for Java DevelopersAngular 2 for Java Developers
Angular 2 for Java Developers
 
Eclipse 2011 Hot Topics
Eclipse 2011 Hot TopicsEclipse 2011 Hot Topics
Eclipse 2011 Hot Topics
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
 
Angular Best Practices - Perfomatix
Angular Best Practices - PerfomatixAngular Best Practices - Perfomatix
Angular Best Practices - Perfomatix
 
هیبرید کارا، از رویا تا واقعیت!
هیبرید کارا، از رویا تا واقعیت!هیبرید کارا، از رویا تا واقعیت!
هیبرید کارا، از رویا تا واقعیت!
 
Angular 2 - a New Hope
Angular 2 - a New HopeAngular 2 - a New Hope
Angular 2 - a New Hope
 
Angular - Improve Runtime performance 2019
Angular - Improve Runtime performance 2019Angular - Improve Runtime performance 2019
Angular - Improve Runtime performance 2019
 
Angular 4 and TypeScript
Angular 4 and TypeScriptAngular 4 and TypeScript
Angular 4 and TypeScript
 
Angular 4 for Java Developers
Angular 4 for Java DevelopersAngular 4 for Java Developers
Angular 4 for Java Developers
 
Angular 2
Angular 2Angular 2
Angular 2
 
vJUG - The JavaFX Ecosystem
vJUG - The JavaFX EcosystemvJUG - The JavaFX Ecosystem
vJUG - The JavaFX Ecosystem
 
React: JSX and Top Level API
React: JSX and Top Level APIReact: JSX and Top Level API
React: JSX and Top Level API
 
Angular App Presentation
Angular App PresentationAngular App Presentation
Angular App Presentation
 
Oro Workflows
Oro WorkflowsOro Workflows
Oro Workflows
 
DevRock #01 What's new ASP.net 5
DevRock #01 What's new ASP.net 5DevRock #01 What's new ASP.net 5
DevRock #01 What's new ASP.net 5
 
Introduction To Angular 4 - J2I
Introduction To Angular 4 - J2IIntroduction To Angular 4 - J2I
Introduction To Angular 4 - J2I
 
Remote Config REST API and Versioning
Remote Config REST API and VersioningRemote Config REST API and Versioning
Remote Config REST API and Versioning
 

Similar to Automake

Cruise control
Cruise controlCruise control
Cruise control
Rajesh Kumar
 
Power Apps Component Framework - Dynamics Power! 365 Paris 2019
Power Apps Component Framework - Dynamics Power! 365 Paris 2019  Power Apps Component Framework - Dynamics Power! 365 Paris 2019
Power Apps Component Framework - Dynamics Power! 365 Paris 2019
Allan De Castro
 
Spring batch for large enterprises operations
Spring batch for large enterprises operations Spring batch for large enterprises operations
Spring batch for large enterprises operations
Ignasi González
 
Using HttpWatch Plug-in with Selenium Automation in Java
Using HttpWatch Plug-in with Selenium Automation in JavaUsing HttpWatch Plug-in with Selenium Automation in Java
Using HttpWatch Plug-in with Selenium Automation in Java
Sandeep Tol
 
Spring Performance Gains
Spring Performance GainsSpring Performance Gains
Spring Performance Gains
VMware Tanzu
 
Overview of MVC Framework - by software outsourcing company india
Overview of MVC Framework - by software outsourcing company indiaOverview of MVC Framework - by software outsourcing company india
Overview of MVC Framework - by software outsourcing company india
Jignesh Aakoliya
 
TestUpload
TestUploadTestUpload
TestUpload
ZarksaDS
 
Why Airflow? & What's new in Airflow 2.3?
Why Airflow? & What's new in Airflow 2.3?Why Airflow? & What's new in Airflow 2.3?
Why Airflow? & What's new in Airflow 2.3?
Kaxil Naik
 
Getting start Java EE Action-Based MVC with Thymeleaf
Getting start Java EE Action-Based MVC with ThymeleafGetting start Java EE Action-Based MVC with Thymeleaf
Getting start Java EE Action-Based MVC with Thymeleaf
Masatoshi Tada
 
SQLAlchemy Primer
SQLAlchemy PrimerSQLAlchemy Primer
SQLAlchemy Primer
泰 増田
 
Asp dot net long
Asp dot net longAsp dot net long
Asp dot net long
Amelina Ahmeti
 
Presentation
PresentationPresentation
Presentation
anjana1023
 
COMPRO- WEB ALBUM & MOTION ANALYZER
COMPRO- WEB ALBUM  & MOTION ANALYZERCOMPRO- WEB ALBUM  & MOTION ANALYZER
COMPRO- WEB ALBUM & MOTION ANALYZER
Ashish Tanwer
 
Maciej Treder "Server-side rendering with Angular—be faster and more SEO, CDN...
Maciej Treder "Server-side rendering with Angular—be faster and more SEO, CDN...Maciej Treder "Server-side rendering with Angular—be faster and more SEO, CDN...
Maciej Treder "Server-side rendering with Angular—be faster and more SEO, CDN...
Fwdays
 
Selenium Automation in Java Using HttpWatch Plug-in
 Selenium Automation in Java Using HttpWatch Plug-in  Selenium Automation in Java Using HttpWatch Plug-in
Selenium Automation in Java Using HttpWatch Plug-in
Sandeep Tol
 
Setting Apple's UI Automation Free with Appium
Setting Apple's UI Automation Free with AppiumSetting Apple's UI Automation Free with Appium
Setting Apple's UI Automation Free with Appium
mobiletestsummit
 
ASP.NET Core 1 for MVC- and WebAPI-Devs
ASP.NET Core 1 for MVC- and WebAPI-DevsASP.NET Core 1 for MVC- and WebAPI-Devs
ASP.NET Core 1 for MVC- and WebAPI-Devs
Manfred Steyer
 
Getting Started With The TFS API
Getting Started With The TFS APIGetting Started With The TFS API
Getting Started With The TFS API
wbarthol
 
ASP.NET 4.0 Demo
ASP.NET 4.0 DemoASP.NET 4.0 Demo
ASP.NET 4.0 Demo
Abhishek Sur
 
Funambol Automated Tests for SyncML Clients
Funambol Automated Tests for SyncML ClientsFunambol Automated Tests for SyncML Clients
Funambol Automated Tests for SyncML Clients
Funambol
 

Similar to Automake (20)

Cruise control
Cruise controlCruise control
Cruise control
 
Power Apps Component Framework - Dynamics Power! 365 Paris 2019
Power Apps Component Framework - Dynamics Power! 365 Paris 2019  Power Apps Component Framework - Dynamics Power! 365 Paris 2019
Power Apps Component Framework - Dynamics Power! 365 Paris 2019
 
Spring batch for large enterprises operations
Spring batch for large enterprises operations Spring batch for large enterprises operations
Spring batch for large enterprises operations
 
Using HttpWatch Plug-in with Selenium Automation in Java
Using HttpWatch Plug-in with Selenium Automation in JavaUsing HttpWatch Plug-in with Selenium Automation in Java
Using HttpWatch Plug-in with Selenium Automation in Java
 
Spring Performance Gains
Spring Performance GainsSpring Performance Gains
Spring Performance Gains
 
Overview of MVC Framework - by software outsourcing company india
Overview of MVC Framework - by software outsourcing company indiaOverview of MVC Framework - by software outsourcing company india
Overview of MVC Framework - by software outsourcing company india
 
TestUpload
TestUploadTestUpload
TestUpload
 
Why Airflow? & What's new in Airflow 2.3?
Why Airflow? & What's new in Airflow 2.3?Why Airflow? & What's new in Airflow 2.3?
Why Airflow? & What's new in Airflow 2.3?
 
Getting start Java EE Action-Based MVC with Thymeleaf
Getting start Java EE Action-Based MVC with ThymeleafGetting start Java EE Action-Based MVC with Thymeleaf
Getting start Java EE Action-Based MVC with Thymeleaf
 
SQLAlchemy Primer
SQLAlchemy PrimerSQLAlchemy Primer
SQLAlchemy Primer
 
Asp dot net long
Asp dot net longAsp dot net long
Asp dot net long
 
Presentation
PresentationPresentation
Presentation
 
COMPRO- WEB ALBUM & MOTION ANALYZER
COMPRO- WEB ALBUM  & MOTION ANALYZERCOMPRO- WEB ALBUM  & MOTION ANALYZER
COMPRO- WEB ALBUM & MOTION ANALYZER
 
Maciej Treder "Server-side rendering with Angular—be faster and more SEO, CDN...
Maciej Treder "Server-side rendering with Angular—be faster and more SEO, CDN...Maciej Treder "Server-side rendering with Angular—be faster and more SEO, CDN...
Maciej Treder "Server-side rendering with Angular—be faster and more SEO, CDN...
 
Selenium Automation in Java Using HttpWatch Plug-in
 Selenium Automation in Java Using HttpWatch Plug-in  Selenium Automation in Java Using HttpWatch Plug-in
Selenium Automation in Java Using HttpWatch Plug-in
 
Setting Apple's UI Automation Free with Appium
Setting Apple's UI Automation Free with AppiumSetting Apple's UI Automation Free with Appium
Setting Apple's UI Automation Free with Appium
 
ASP.NET Core 1 for MVC- and WebAPI-Devs
ASP.NET Core 1 for MVC- and WebAPI-DevsASP.NET Core 1 for MVC- and WebAPI-Devs
ASP.NET Core 1 for MVC- and WebAPI-Devs
 
Getting Started With The TFS API
Getting Started With The TFS APIGetting Started With The TFS API
Getting Started With The TFS API
 
ASP.NET 4.0 Demo
ASP.NET 4.0 DemoASP.NET 4.0 Demo
ASP.NET 4.0 Demo
 
Funambol Automated Tests for SyncML Clients
Funambol Automated Tests for SyncML ClientsFunambol Automated Tests for SyncML Clients
Funambol Automated Tests for SyncML Clients
 

Automake

  • 1. Definitions Flow for Automake and Autocof Input files Features Automake An Autotool Priyanka Kapoor June 7, 2013 Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 2. Definitions Flow for Automake and Autocof Input files Features Make Configure Script Autoconf Automake Make Make utility determines which piece of source code need to be recompiled and it issues command to recompile only those pieces. Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 3. Definitions Flow for Automake and Autocof Input files Features Make Configure Script Autoconf Automake Dependencies Between Files Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 4. Definitions Flow for Automake and Autocof Input files Features Make Configure Script Autoconf Automake Source Code of Files in a Project Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 5. Definitions Flow for Automake and Autocof Input files Features Make Configure Script Autoconf Automake Makefile for the Project Syntax target: prerequisite-list TAB construction-commands Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 6. Definitions Flow for Automake and Autocof Input files Features Make Configure Script Autoconf Automake Configure Script A configure script can be used to aid cross-platform compiling. A suitable configure script should interpret a Makefile.in file and then create a platform-specific Makefile file. Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 7. Definitions Flow for Automake and Autocof Input files Features Make Configure Script Autoconf Automake Autoconf Autoconf is used to make configure scripts automatically and that too with GNU coding standards. Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 8. Definitions Flow for Automake and Autocof Input files Features Make Configure Script Autoconf Automake INs And OUTs Of Autoconf Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 9. Definitions Flow for Automake and Autocof Input files Features Make Configure Script Autoconf Automake Automake Automake is a programming tool that produces portable makefiles for use by the make program, used in compiling software. It is made by the Free Software Foundation as one of the GNU programs, and is part of the GNU build system. Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 10. Definitions Flow for Automake and Autocof Input files Features Make Configure Script Autoconf Automake INs And OUTs Of Automake Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 11. Definitions Flow for Automake and Autocof Input files Features Flow for Automake and Autoconf Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 12. Definitions Flow for Automake and Autocof Input files Features configure.ac Makefile.am Automake Input Input Files So to use automake, there are two input files. They are: 1 configure.ac 2 Makefile.ac Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 13. Definitions Flow for Automake and Autocof Input files Features configure.ac Makefile.am Demo Of config.ac File Every configure.ac should have lines like the following: AC_INIT([hello], [0.1], [bug-report@hello.example.com], [hello], [http://hello.example.com/]) AC_PREREQ([2.59]) AM_INIT_AUTOMAKE([1.10 no-define]) AC_CONFIG_HEADERS([config.h]) AC_PROG_CXX AC_CONFIG_FILES([Makefile]) AC_OUTPUT Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 14. Definitions Flow for Automake and Autocof Input files Features configure.ac Makefile.am Explanation of config.ac File 1 AC INIT macro initializes autoconf with information about your project, including the project name, version number, bug-reporting address, tarball name and the project homepage. 2 AC PREREQ(VERSION) macro is optional. 3 AM INIT AUTOMAKE macro takes two arguments: the name of the package, and a version number. 4 AM CONFIG HEADER macro names the header file which will hold the preprocessor macro definitions at run time. 5 AC PROG CXX checks for a C++ compiler. If your project uses C, you can check for a C compiler with AC PROG CC. 6 AC OUTPUT macro takes a list of file names which the configure process should produce Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 15. Definitions Flow for Automake and Autocof Input files Features configure.ac Makefile.am Demo of Makefile.am File AUTOMAKE_OPTIONS = foreign CFLAGS=-Wall -I/usr/local/include -DVERSION="$(VERSION)" -DPROG=""$(PACKAGE)"" LDFLAGS=-L/usr/local/lib -lX11 -lXtst -lxosd bin_PROGRAMS = getkey getkey_SOURCES = getkey.c circ_list.c Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 16. Definitions Flow for Automake and Autocof Input files Features Features of Automake Automake generates a makefile that allows the user to: 1 Compile the program. 2 The makefiles produced follow the GNU Coding Standards. 3 Clean (i.e. remove the files resulting from the compilation). 4 Create a source distribution archive (commonly called a tarball). 5 Install the program in standard directories. 6 Uninstall the program from where it was installed. Guru Nanak Dev Engineering College priyankacool10.wordpress.com
  • 17. Definitions Flow for Automake and Autocof Input files Features Thank You Guru Nanak Dev Engineering College priyankacool10.wordpress.com