Page MenuHomeFreeBSD

[new port] devel/linux-ltp: Linux Test Project (openSUSE Leap 42.3)
ClosedPublic

Authored by trasz on Apr 28 2019, 4:10 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mar 9 2024, 10:47 PM
Unknown Object (File)
Jan 19 2024, 2:01 AM
Unknown Object (File)
Dec 20 2023, 12:04 AM
Unknown Object (File)
Dec 15 2023, 4:11 AM
Unknown Object (File)
Nov 22 2023, 10:24 PM
Unknown Object (File)
Nov 22 2023, 10:24 PM
Unknown Object (File)
Nov 22 2023, 10:23 PM
Unknown Object (File)
Nov 22 2023, 10:23 PM

Details

Summary

Create port for Linux binaries of Linux Test Project, for the purpose
of testing linuxulator. Unfortunately CentOS (and most other distros)
doesn't carry packages for LTP; this one comes from openSUSE. Seems
to work just fine with Centos libraries, FWIW.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 24135
Build 22988: arc lint + arc unit

Event Timeline

ngie requested changes to this revision.EditedApr 28 2019, 5:11 PM

I don't think benchmarks is an appropriate category. LTP consists primarily of functional and crash tests.

devel/ might be better (I wish there was a tests/ category, or something of that ilk).

This revision now requires changes to proceed.Apr 28 2019, 5:11 PM

portlint -abct gives:

FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6685]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6686]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6687]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6688]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6689]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6690]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6691]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6692]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6693]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6694]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6695]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6696]: Man pages must be installed into ``man'' not ``share/man''.
WARN: Makefile: Consider defining LICENSE.
WARN: Makefile: extra item placed in the USES/USE_x section, for example, "RPMVERSION".
12 fatal errors and 2 warnings found.

Do you think it makes sense to move these manpage files?

portlint -abct gives:

FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6685]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6686]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6687]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6688]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6689]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6690]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6691]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6692]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6693]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6694]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6695]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6696]: Man pages must be installed into ``man'' not ``share/man''.
WARN: Makefile: Consider defining LICENSE.
WARN: Makefile: extra item placed in the USES/USE_x section, for example, "RPMVERSION".
12 fatal errors and 2 warnings found.

Do you think it makes sense to move these manpage files?

Not sure. Quick 'grep 'man/' */linux*/pkg-plist.amd64 | less' seems to suggest that 'share/man' is the norm for Linux packages.

In D20092#432135, @ngie wrote:

I don't think benchmarks is an appropriate category. LTP consists primarily of functional and crash tests.

devel/ might be better (I wish there was a tests/ category, or something of that ilk).

I think you're right. I'll move it to devel/, thanks!

trasz retitled this revision from [new port] benchmarks/linux-ltp: Linux Test Project (openSUSE Leap 42.3) to [new port] devel/linux-ltp: Linux Test Project (openSUSE Leap 42.3).Apr 29 2019, 4:23 PM

I'm ok with the changes, but there are some kinks that should probably be worked out before committing this.

I'm also not a ports committer, so I can't approve this for commit (sorry :/).

portlint -abct gives:

FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6685]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6686]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6687]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6688]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6689]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6690]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6691]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6692]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6693]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6694]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6695]: Man pages must be installed into ``man'' not ``share/man''.
FATAL: /usr/home/lwhsu/freebsd-ports/benchmarks/linux-ltp/pkg-plist.amd64: [6696]: Man pages must be installed into ``man'' not ``share/man''.
WARN: Makefile: Consider defining LICENSE.
WARN: Makefile: extra item placed in the USES/USE_x section, for example, "RPMVERSION".
12 fatal errors and 2 warnings found.

Do you think it makes sense to move these manpage files?

Not sure. Quick 'grep 'man/' */linux*/pkg-plist.amd64 | less' seems to suggest that 'share/man' is the norm for Linux packages.

Oh, that's right, it would be installed with the prefix /compat/linux, these are false positives.

This port generally looks good to me, I would suggest adding a LICENSE field and move RPMVERSION after USE/USE_x section.

devel/linux-ltp/Makefile
20

Please keep the same style as the other Linux ports. RPMVERSION should really be up there with PORTVERSION so it's easy to check the version. It was only moved down because portlint complains so loudly about that. To move it even further down simply because of style goes against common sense though.

In D20092#432902, @tijl wrote:

Please keep the same style as the other Linux ports. RPMVERSION should really be up there with PORTVERSION so it's easy to check the version. It was only moved down because portlint complains so loudly about that. To move it even further down simply because of style goes against common sense though.

I think this is a good point, perhaps we can also modify portlint to silence this meaningless complain.

I disagree about the meaningfullness of those complains.

We have a very specific documentation about how to order variables in a port's Makefile, it is available here https://www.freebsd.org/doc/en/books/porters-handbook/porting-order.html.

The idea is that every port has to follow these basic rules so that every port can be read by every one. Of course, we all had our own rules about that ordering before it existed, well, now it exists, and we should all adhere to it.

This isn't about having my own rules. It's about being practical. The further PORTVERSION and RPMVERSION are apart the more difficult it is to check the current version of the port. Now, RPMVERSION is really a leftover from before Uses/linux.mk. It is only used to set DISTVERSIONSUFFIX nowadays so perhaps it is time to eliminate it and set DISTVERSIONSUFFIX directly (right after PORTVERSION).

So, given the dispute above is more about guidelines for Linux packages and less about this port in particular, is there anything left to do before this can be committed?

ngie accepted this revision.EditedMay 3 2019, 9:20 PM
ngie added a subscriber: ngie.

This looks good to me (not a ports committer though, so just reviewing the change).

As a volunteer/co-maintainer on the LTP project, your suggestions make sense.

The only thing that I would do is install LTP to /compat/linux/opt, if at all possible. If not, we can come up with a better way to build/relocate LTP (I wrote the current build system about a decade ago for the project).

Also, while this may work with an OpenSUSE package, we should push for the Fedora project to build this package, then pull it from there.

This revision is now accepted and ready to land.May 3 2019, 9:20 PM
In D20092#433030, @tijl wrote:

This isn't about having my own rules. It's about being practical. The further PORTVERSION and RPMVERSION are apart the more difficult it is to check the current version of the port. Now, RPMVERSION is really a leftover from before Uses/linux.mk. It is only used to set DISTVERSIONSUFFIX nowadays so perhaps it is time to eliminate it and set DISTVERSIONSUFFIX directly (right after PORTVERSION).

@mat, should @trasz make that change? I hope this change is not held up too long for an issue that has no clear resolution - i.e., what's the next thing to do here?

In D20092#433030, @tijl wrote:

This isn't about having my own rules. It's about being practical. The further PORTVERSION and RPMVERSION are apart the more difficult it is to check the current version of the port. Now, RPMVERSION is really a leftover from before Uses/linux.mk. It is only used to set DISTVERSIONSUFFIX nowadays so perhaps it is time to eliminate it and set DISTVERSIONSUFFIX directly (right after PORTVERSION).

@mat, should @trasz make that change? I hope this change is not held up too long for an issue that has no clear resolution - i.e., what's the next thing to do here?

It would probably be better that the RPMVERSION -> DISTVERSIONSUFFIX change be made all at once.

In D20092#433990, @ngie wrote:

This looks good to me (not a ports committer though, so just reviewing the change).

As a volunteer/co-maintainer on the LTP project, your suggestions make sense.

The only thing that I would do is install LTP to /compat/linux/opt, if at all possible. If not, we can come up with a better way to build/relocate LTP (I wrote the current build system about a decade ago for the project).

But it does install to /compat/linux/opt - except for the documentation (where it follows Linux conventions) and two binaries - not sure what's going on with those two.

Okay. So... last chance for folks who want to be on the 'Reviewed by' list to mark it as Approved? Thanks :-)

Please don't forget the license field :)

In D20092#433990, @ngie wrote:

This looks good to me (not a ports committer though, so just reviewing the change).

As a volunteer/co-maintainer on the LTP project, your suggestions make sense.

The only thing that I would do is install LTP to /compat/linux/opt, if at all possible. If not, we can come up with a better way to build/relocate LTP (I wrote the current build system about a decade ago for the project).

But it does install to /compat/linux/opt - except for the documentation (where it follows Linux conventions) and two binaries - not sure what's going on with those two.

Which 2 binaries? Asking, because I can fix upstream potentially.

This revision now requires review to proceed.May 7 2019, 5:48 PM
In D20092#434881, @ngie wrote:
In D20092#433990, @ngie wrote:

This looks good to me (not a ports committer though, so just reviewing the change).

As a volunteer/co-maintainer on the LTP project, your suggestions make sense.

The only thing that I would do is install LTP to /compat/linux/opt, if at all possible. If not, we can come up with a better way to build/relocate LTP (I wrote the current build system about a decade ago for the project).

But it does install to /compat/linux/opt - except for the documentation (where it follows Linux conventions) and two binaries - not sure what's going on with those two.

Which 2 binaries? Asking, because I can fix upstream potentially.

Those two:

/compat/linux/usr/bin/execltp
/compat/linux/usr/bin/ffsb
This revision was not accepted when it landed; it landed in state Needs Review.May 8 2019, 6:41 PM
Closed by commit rP501036: New port: devel/linux-ltp (authored by trasz). · Explain Why
This revision was automatically updated to reflect the committed changes.