Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

#                                                                    -*-perl-*-

$description = "This script tests to make sure that Make looks for
default makefiles in the correct order (GNUmakefile,makefile,Makefile)";

# Create a makefile called "GNUmakefile"
$makefile = "GNUmakefile";

open(MAKEFILE,"> $makefile");
print MAKEFILE "FIRST: ; \@echo It chose GNUmakefile\n";
close(MAKEFILE);

# DOS/WIN32 platforms preserve case, but Makefile is the same file as makefile.
# Just test what we can here (avoid Makefile versus makefile test).

if ($port_type eq 'UNIX') {
  # Create another makefile called "makefile"
  open(MAKEFILE,"> makefile");
  print MAKEFILE "SECOND: ; \@echo It chose makefile\n";
  close(MAKEFILE);
}

# Create another makefile called "Makefile"
open(MAKEFILE,"> Makefile");
print MAKEFILE "THIRD: ; \@echo It chose Makefile\n";
close(MAKEFILE);


&run_make_with_options("","",&get_logfile);
&compare_output("It chose GNUmakefile\n",&get_logfile(1));
unlink $makefile;

if ($port_type eq 'UNIX') {
  &run_make_with_options("","",&get_logfile);
  &compare_output("It chose makefile\n",&get_logfile(1));
  unlink "makefile";
}

&run_make_with_options("","",&get_logfile);
&compare_output("It chose Makefile\n",&get_logfile(1));
unlink "Makefile";