Page MenuHomeFreeBSD

OpenSSL: Refactor Mk/bsd.openssl.mk to Mk/Uses/openssl.mk
AbandonedPublic

Authored by mat on Mar 20 2016, 8:32 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Oct 31, 1:41 AM
Unknown Object (File)
Wed, Oct 29, 4:01 PM
Unknown Object (File)
Tue, Oct 28, 2:58 AM
Unknown Object (File)
Wed, Oct 22, 1:07 PM
Unknown Object (File)
Wed, Oct 22, 1:07 PM
Unknown Object (File)
Wed, Oct 22, 1:07 PM
Unknown Object (File)
Wed, Oct 22, 1:07 PM
Unknown Object (File)
Wed, Oct 22, 12:18 AM
Subscribers

Details

Reviewers
brnrd
koobs
feld
Group Reviewers
portmgr
Summary
  • Rewrite of Mk/bsd.openssl.mk to Mk/Uses/openssl.mk
  • Move USE_OPENSSL_RPATH to a USES=openssl:rpath
  • Allow specifying base and port via Uses args
  • Merge ports' args with make.conf WITH_OPENSSL_* args
  • Allow specifying libressl as Uses arg (e.g. obhttpd)
  • Move OPENSSL_PORT=dir/port to WITH_OPENSSL_PORT=dir/port
  • Retain current make.conf options (and backwards compat)
Test Plan
  • Tested with modified www/obhttpd (requires libressl)
  • Tested with net/socat for the USE_OPENSSL and USES=openssl QA check

Reviewed_by: feld (mentor), koobs (mentor)
Approved by: (mentor), (portmgr)
Differential_Revision: D5688

Diff Detail

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

Event Timeline

brnrd retitled this revision from to OpenSSL: Refactor Mk/bsd.openssl.mk to Mk/Uses/openssl.mk.
brnrd updated this object.
brnrd edited the test plan for this revision. (Show Details)
brnrd added reviewers: feld, koobs.
brnrd edited edge metadata.

Separate the Uses stuff from the QA stuff

This is still missing the delete on Mk/bsd.openssl.mk.
Don't want to go foot-shooting just yet

brnrd edited edge metadata.

Remove WITH_OPENSSL_PORT=dir/port additions, that's not how WITH_* knobs work

Could you post a complete patch ? One that removes bsd.openssl.mk, patches bsd.port.mk to add compat shims for ports that sill use USE_OPENSSL, and bsd.sanity.mk to tell people to move to USES=openssl.

brnrd edited edge metadata.

Include all dependent files

  • Restore all variables to work as the existing variables
  • Remove libressl argument
  • Add bsd.sanity.mk changes
  • Replace bsd.openssl.mk with only compat shims
In D5688#121501, @mat wrote:

Could you post a complete patch ? One that removes bsd.openssl.mk, patches bsd.port.mk to add compat shims for ports that sill use USE_OPENSSL, and bsd.sanity.mk to tell people to move to USES=openssl.

I could not find any compat shims in Mk/bsd.port.mk and found e.g. the SQLite features in both Mk/bsd.database.mk and Mk/Uses/sqlite.mk.
Mk/bsd.port.mk shows that the USES variables are processed right after the USE_ includes are done.
So I went ahead and added the compat-shims to Mk/bsd.openssl.mk so they will be processed by the Mk/Uses/openssl.mk script. One unhandled case in here, both WITH_OPENSSL_PORT and WITH_OPENSSL_BASE being set, just like in the current Mk/bsd.openssl.mk

The initial commit contained both Mk/bsd.sanity.mk and Mk/Scripts/qa.sh as well, but I separated these into D5689 for less clutter. Now that I have Mk/bsd.sanity.mk included here again, it's probably best to also include qa.sh and abandon the separate review?

brnrd edited edge metadata.

Add qa.sh changes as well

Like I already said, the bsd.openssl.mk file needs to be removed. And you need to patch bsd.port.mk where it is included to change and add a USES=openssl instead.

the new Mk/bsd.openssl.mk will break existing setups.
the shared lib version for libressl is not set when the ports is already installed.
This should not be committed.

mat abandoned this revision.
mat added a reviewer: brnrd.

Reworking this in D5865