Feature: Rewrite of GGI comms on AMG agglomeration
[foam-extend-4.0.git] / wmake / genInclude.pl
blob55ad7c22af36d6518524abadc09efb9ac815b5fc
1 #!/usr/bin/perl
2 #------------------------------------------------------------------------------
3 # ========= |
4 # \\ / F ield | foam-extend: Open Source CFD
5 # \\ / O peration | Version: 4.0
6 # \\ / A nd | Web: http://www.foam-extend.org
7 # \\/ M anipulation | For copyright notice see file Copyright
8 #------------------------------------------------------------------------------
9 # License
10 # This file is part of foam-extend.
12 # foam-extend is free software: you can redistribute it and/or modify it
13 # under the terms of the GNU General Public License as published by the
14 # Free Software Foundation, either version 3 of the License, or (at your
15 # option) any later version.
17 # foam-extend is distributed in the hope that it will be useful, but
18 # WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 # General Public License for more details.
22 # You should have received a copy of the GNU General Public License
23 # along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
25 # Script
26 # genInclude.pl
28 # Description
29 # Generates include files into lnInclude, as an alternative to creating
30 # symbolic links (useful for Windows)
32 # Usage:
33 # genInclude.pl <PATH_TO_SOURCE_FILE> .
35 # Author:
36 # Cesare Guardino, Alstom Power Ltd., (2015)
38 #------------------------------------------------------------------------------
40 use strict;
41 use warnings;
43 use Cwd;
44 use Cwd 'abs_path';
45 use File::Basename;
47 my $cwd = cwd();
49 my $source = abs_path($ARGV[0]);
50 my $fileName = basename($source);
51 $cwd =~ s/lnInclude//;
52 $source =~ s/$cwd//;
54 my $dir = $cwd;
55 if ($dir =~ /^.*\/src\//) {
56 $dir =~ s/^.*\/src\///;
58 elsif ($dir =~ /^.*\/applications\//) {
59 $dir =~ s/^.*\/applications\///;
62 my $link = $dir . $source;
63 open (FILE, '>', $fileName) or die ("ERROR: Can't open '$fileName' [$!]");
64 print FILE "#include \"$link\"\n";
65 close (FILE);