summaryrefslogtreecommitdiff
path: root/source4/build/smb_build/main.pm
blob: 324b8adc6163f345d90c6341a7b2c7ab3f08c706 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
###########################################################
### SMB Build System					###
### - the main program					###
###							###
###  Copyright (C) Stefan (metze) Metzmacher 2004	###
###  Released under the GNU GPL				###
###########################################################

use makefile;
use smb_build_h;
use input;
use config_mk;
use output;
use direct;
use dot;
use strict;

sub smb_build_main($)
{
	my $INPUT = shift;
	my %SMB_BUILD_CTX = (
		INPUT => $INPUT
	);

	my @mkfiles = split /\n/, `find -name "*.mk"`; 

	for my $mkfile (@mkfiles) {
		config_mk::import_file($SMB_BUILD_CTX{INPUT}, $mkfile);
	}

	%{$SMB_BUILD_CTX{DEPEND}} = input::check(\%SMB_BUILD_CTX);
	
	%{$SMB_BUILD_CTX{OUTPUT}} = output::create_output($SMB_BUILD_CTX{DEPEND});

	makefile::create_makefile_in($SMB_BUILD_CTX{OUTPUT});

	smb_build_h::create_smb_build_h($SMB_BUILD_CTX{OUTPUT});

	open DOTTY, ">samba4-deps.dot";
	print DOTTY dot::generate($SMB_BUILD_CTX{DEPEND});
	close DOTTY;
}
1;