Welcome to the NetCologne GmbH open source mirroring service!
	This machine mirrors various open-source projects.
	20 Gbit/s uplink.
	
	If there are any issues or you want another project mirrored, please contact
	mirror-service -=AT=- netcologne DOT de ! 
  
  
  
  
  
  The architecture of ExtUtils::Builder
  
  
  
  The architecture of ExtUtils::Builder
  
Leon Timmermans
  
  2013-04-19
 
Why a EU::CB replacement?
- CB couldn't do what I wanted
 
- CB couldn't do it how I wanted it
 
 
The past
- Monoliths
 
- Platform dependent hierarchy
 
 
ExtUtils::CBuilder
- EU::CB::Base
 
- EU::CB::Platform::$^O
 
- EU::CB
 
 
Principles
- Open ended
 
- Abstraction Layers
 
- Roles
 
 
Layercake
Solves any problem…
 
Actions I
- execute
 
- to_command
 
- to_code
 
- preference
 
 
Plan
- Target
 
- Dependencies
 
- Actions
 
 
Builder pattern
Abstract creation
 
Example
- add_define
 
- add_includedir
 
- compile
 
 
Two axis
- Compiler family
 
- Object format
 
 
Autodetect
Platform specific behavior
 
Profile
Project specific behavior E.g. Perl ;-)