Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#2339 closed defect (fixed)

Recent Homebrew can't find python3.x-config

Reported by: jinmei Owned by: jinmei
Priority: medium Milestone: Sprint-20121023
Component: build system Version:
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity: N/A
Sub-Project: DNS Feature Depending on Ticket:
Estimated Difficulty: 3 Add Hours to Ticket: 0
Total Hours: 1 Internal?: no

Description

Recent versions of Homebrew (a package system for OS X) creates a
link from "python3" to specific "python3.x", but not from
"python3-config" to specific "python3.x-config". The current BIND
10's configure script first finds "python3", and subsequently searches
for "python3-config", which fails.

Maybe it's a bug of Homebrew, but at least we can work this around by
changing the search order of the main Python executable (see attached
diff).

If this doesn't do harm for other OSes or other OS X package systems
I propose applying this patch.

Subtickets

Attachments (1)

configure.ac.diff (593 bytes) - added by jinmei 7 years ago.

Download all attachments as: .zip

Change History (11)

Changed 7 years ago by jinmei

comment:1 Changed 7 years ago by jelte

  • Milestone changed from Next-Sprint-Proposed to Sprint-20121023

comment:2 Changed 7 years ago by jinmei

I've created a branch and committed the proposed diff, mainly only
for running it on other buildbots first. In the mean time I'll own
this ticket (but actually won't do anything other than wait for
the buildbot results).

comment:3 Changed 7 years ago by jinmei

  • Owner changed from UnAssigned to jinmei
  • Status changed from new to assigned

comment:4 Changed 7 years ago by jinmei

According to buildbot results the proposed change doesn't seem to
cause unexpected regression.

So, please review trac2339. It's a simple (essentially) one-line fix.

Proposed changelog:

487.?	[build]		jinmei
	On configure, changed the search order for Python executable.
	It first ties more specific file names such as "python3.2" before
	more generic "python3".  This will prevent configure failure on
	Mac OS X that installs Python3 via recent versions of Homebrew.
	(Trac #2339, git TBD)

comment:5 Changed 7 years ago by jinmei

  • Owner changed from jinmei to UnAssigned
  • Status changed from assigned to reviewing

comment:6 Changed 7 years ago by jelte

  • Owner changed from UnAssigned to jelte

comment:7 follow-up: Changed 7 years ago by jelte

  • Owner changed from jelte to jinmei

I just tried it on 4 of my systems, and saw no failure either.

I do wonder one thing; if it happens for 'python3-config', is there also a chance that the link from 'python-config' to the correct 'pythonX.X-config' is missing on some systems? (in which case we should put the entire list in specific-to-general order, and move 'python' to the end)

Anyway, this can be merged as is, it is already better than the current order. (if we change it though, we should probably have another test run first)

comment:8 in reply to: ↑ 7 Changed 7 years ago by jinmei

Thanks for the review.

Replying to jelte:

I just tried it on 4 of my systems, and saw no failure either.

I do wonder one thing; if it happens for 'python3-config', is there also a chance that the link from 'python-config' to the correct 'pythonX.X-config' is missing on some systems? (in which case we should put the entire list in specific-to-general order, and move 'python' to the end)

As a possibility, probably. But I'd like to keep the change minimum
for now. If we see more such issues I guess we'll need more magic
under the hood beyond just tweaking the search order (e.g., trying to
find a working combination of the main executable and xxx-config).

Anyway, this can be merged as is, it is already better than the current order. (if we change it though, we should probably have another test run first)

Okay, thanks. Merge done, closing.

comment:9 Changed 7 years ago by jinmei

  • Resolution set to fixed
  • Status changed from reviewing to closed

comment:10 Changed 7 years ago by jinmei

  • Total Hours changed from 0 to 1
Note: See TracTickets for help on using tickets.