Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2007-08

Inconsistencies in fpmake?

8 messages · 4 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Darius Blaszijk

I was doing some tests with fpmake and came across what appears to be an inconsistency.

When fpmaking a program a units/cpu-os is created but the commandline parameters for FPC are "-FE." which causes the tool and possible other units to be placed in the directory where the program is located. When calling "fpmake clean", the clean algorithm cannot find either the .ppu/.o or the .exe files as it searches the units directory and not the root dir.

I would like to patch this inconsistency, but I am not sure what the consensus is on fpmaking tools.

1) should -FU.units/cpu-os be used, so all compiled stuff is separated from the executable which will result in the root dir
2) should -FE. be used as it is now, but the units directory not be created anymore and the clean algorithm adjusted so it searches the right directory?

Darius

Peter Vreman
to Darius Blaszijk
Show quoted text 18 lines
I was doing some tests with fpmake and came across what appears to be an inconsistency. When fpmaking a program a units/cpu-os is created but the commandline parameters for FPC are "-FE." which causes the tool and possible other units to be placed in the directory where the program is located. When calling "fpmake clean", the clean algorithm cannot find either the .ppu/.o or the .exe files as it searches the units directory and not the root dir. I would like to patch this inconsistency, but I am not sure what the consensus is on fpmaking tools. 1) should -FU.units/cpu-os be used, so all compiled stuff is separated from the executable which will result in the root dir 2) should -FE. be used as it is now, but the units directory not be created anymore and the clean algorithm adjusted so it searches the right directory?

Solution 1) needs to be fixed. This is a prerequisite for good cross-compiling support. Maybe even the executables need to be placed in a bin/cpu-os directory and symlinked (or copied) to the current dir.

Unknown author
Show quoted text 24 lines
> I was doing some tests with fpmake and came across what appears to be an > inconsistency. > > When fpmaking a program a units/cpu-os is created but the commandline > parameters for FPC are "-FE." which causes the tool and possible other > units to be placed in the directory where the program is located. > When calling "fpmake clean", the clean algorithm cannot find either the > .ppu/.o or the .exe files as it searches the units directory and not the > root dir. > > I would like to patch this inconsistency, but I am not sure what the > consensus is on fpmaking tools. > > 1) should -FU.units/cpu-os be used, so all compiled stuff is separated > from the executable which will result in the root dir > 2) should -FE. be used as it is now, but the units directory not be > created anymore and the clean algorithm adjusted so it searches the > right directory? Solution 1) needs to be fixed. This is a prerequisite for good cross-compiling support. Maybe even the executables need to be placed in a bin/cpu-os directory and symlinked (or copied) to the current dir.

Sounds like a good idea. Shall I prepare a patch for it?

I'm just wondering about the symlink/copy of the executable. Shouldn't that be a task for "fmake install"?

Darius

Peter Vreman
to Unknown author
Show quoted text 29 lines
>> I was doing some tests with fpmake and came across what appears to be an >> inconsistency. >> >> When fpmaking a program a units/cpu-os is created but the commandline >> parameters for FPC are "-FE." which causes the tool and possible other >> units to be placed in the directory where the program is located. >> When calling "fpmake clean", the clean algorithm cannot find either the >> .ppu/.o or the .exe files as it searches the units directory and not the >> root dir. >> >> I would like to patch this inconsistency, but I am not sure what the >> consensus is on fpmaking tools. >> >> 1) should -FU.units/cpu-os be used, so all compiled stuff is separated >> from the executable which will result in the root dir >> 2) should -FE. be used as it is now, but the units directory not be >> created anymore and the clean algorithm adjusted so it searches the >> right directory? > > Solution 1) needs to be fixed. This is a prerequisite for good > cross-compiling support. Maybe even > the executables need to be placed in a bin/cpu-os directory and symlinked > (or copied) to the > current dir. Sounds like a good idea. Shall I prepare a patch for it? I'm just wondering about the symlink/copy of the executable. Shouldn't that be a task for "fmake install"?

Yes, that is also an option.

Note that you've reached the point of the working features in fpmake and fppkg, you can expect more rough edges or missing features. The next step in the development was to make the build/install/clean and create an archive package working. Most of this work will be in fpmake. The archive creating is part of fppkg. Patches and ideas welcome.

Michael Van Canneyt
to Unknown author: Sounds like a good idea. Shall I prepare a patch for it? I'm just wondering about the…
Show quoted text 29 lines
>> I was doing some tests with fpmake and came across what appears to be an >> inconsistency. >> >> When fpmaking a program a units/cpu-os is created but the commandline >> parameters for FPC are "-FE." which causes the tool and possible other >> units to be placed in the directory where the program is located. >> When calling "fpmake clean", the clean algorithm cannot find either the >> .ppu/.o or the .exe files as it searches the units directory and not the >> root dir. >> >> I would like to patch this inconsistency, but I am not sure what the >> consensus is on fpmaking tools. >> >> 1) should -FU.units/cpu-os be used, so all compiled stuff is separated >> from the executable which will result in the root dir >> 2) should -FE. be used as it is now, but the units directory not be >> created anymore and the clean algorithm adjusted so it searches the >> right directory? > > Solution 1) needs to be fixed. This is a prerequisite for good > cross-compiling support. Maybe even > the executables need to be placed in a bin/cpu-os directory and symlinked > (or copied) to the > current dir. Sounds like a good idea. Shall I prepare a patch for it? I'm just wondering about the symlink/copy of the executable. Shouldn't that be a task for "fmake install"?

I also think so; I don't think the copy/symlink is necessary; The binary should simply be outputted in the bin/os-cpu directory.

fpmake can write a message like 'Writing binary to bin/os-cpu directory' so the user knows where to look.

Michael.

Unknown author
to Michael Van Canneyt
Show quoted text 43 lines
On Mon, 13 Aug 2007, wrote: > >> I was doing some tests with fpmake and came across what appears to be > an > >> inconsistency. > >> > >> When fpmaking a program a units/cpu-os is created but the commandline > >> parameters for FPC are "-FE." which causes the tool and possible > other > >> units to be placed in the directory where the program is located. > >> When calling "fpmake clean", the clean algorithm cannot find either > the > >> .ppu/.o or the .exe files as it searches the units directory and not > the > >> root dir. > >> > >> I would like to patch this inconsistency, but I am not sure what the > >> consensus is on fpmaking tools. > >> > >> 1) should -FU.units/cpu-os be used, so all compiled stuff is > separated > >> from the executable which will result in the root dir > >> 2) should -FE. be used as it is now, but the units directory not be > >> created anymore and the clean algorithm adjusted so it searches the > >> right directory? > > > > Solution 1) needs to be fixed. This is a prerequisite for good > > cross-compiling support. Maybe even > > the executables need to be placed in a bin/cpu-os directory and > symlinked > > (or copied) to the > > current dir. > > Sounds like a good idea. Shall I prepare a patch for it? > > I'm just wondering about the symlink/copy of the executable. Shouldn't > that be a task for "fmake install"? I also think so; I don't think the copy/symlink is necessary; The binary should simply be outputted in the bin/os-cpu directory.

What compiler switches are preferred? -FE / -FU or -FU / -o? Don't know if it differs that much. AFAIK Lazarus uses the latter.

fpmake can write a message like 'Writing binary to bin/os-cpu directory' so the user knows where to look.

Ofcourse.

Darius

Darius Blaszijk
to Michael Van Canneyt: I also think so; I don't think the copy/symlink is necessary; The binary should simply be…
Michael Van Canneyt wrote 36 lines
On Mon, 13 Aug 2007, wrote: >>> I was doing some tests with fpmake and came across what appears to be an >>> inconsistency. >>> >>> When fpmaking a program a units/cpu-os is created but the commandline >>> parameters for FPC are "-FE." which causes the tool and possible other >>> units to be placed in the directory where the program is located. >>> When calling "fpmake clean", the clean algorithm cannot find either the >>> .ppu/.o or the .exe files as it searches the units directory and not the >>> root dir. >>> >>> I would like to patch this inconsistency, but I am not sure what the >>> consensus is on fpmaking tools. >>> >>> 1) should -FU.units/cpu-os be used, so all compiled stuff is separated >>> from the executable which will result in the root dir >>> 2) should -FE. be used as it is now, but the units directory not be >>> created anymore and the clean algorithm adjusted so it searches the >>> right directory? >> Solution 1) needs to be fixed. This is a prerequisite for good >> cross-compiling support. Maybe even >> the executables need to be placed in a bin/cpu-os directory and symlinked >> (or copied) to the >> current dir. > Sounds like a good idea. Shall I prepare a patch for it? > > I'm just wondering about the symlink/copy of the executable. Shouldn't > that be a task for "fmake install"? I also think so; I don't think the copy/symlink is necessary; The binary should simply be outputted in the bin/os-cpu directory. fpmake can write a message like 'Writing binary to bin/os-cpu directory' so the user knows where to look.

Here's a patch that implements all of the above mentioned. ;)

Darius

Peter Vreman
to Darius Blaszijk
Show quoted text 6 lines
> I also think so; I don't think the copy/symlink is necessary; The binary should > simply be outputted in the bin/os-cpu directory. > > fpmake can write a message like 'Writing binary to bin/os-cpu directory' so > the user knows where to look. Here's a patch that implements all of the above mentioned. ;)

Thanks, patch applied.

Peter