Opened 7 years ago

Closed 7 years ago

#54305 closed submission (fixed)

dmidecode v3.1 submission

Reported by: chicagotripp (Altoine Barker) Owned by: mf2k (Frank Schima)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: dmidecode

Description

There is a project on github that is a native MacOSX port of dmidecode. I created a portfile of Ryan Armstrong's work and I want to submit it to be included in the ports tree. I have his permission.

Attachments (9)

Portfile (1.6 KB) - added by chicagotripp (Altoine Barker) 7 years ago.
dmidecode-osx Portfile
Portfile.2 (1.5 KB) - added by chicagotripp (Altoine Barker) 7 years ago.
Portfile_corrected
Portfile.3 (1.3 KB) - added by chicagotripp (Altoine Barker) 7 years ago.
Portfile with only spaces
Portfile.4 (1.3 KB) - added by chicagotripp (Altoine Barker) 7 years ago.
Portfile with the line "This is an OS X native port of dmidecode" removed from long_description.
Portfile.5 (1.3 KB) - added by chicagotripp (Altoine Barker) 7 years ago.
Portfile with name added to make the port dmidecode instead of dmidecode-osx
Portfile.6 (1.3 KB) - added by chicagotripp (Altoine Barker) 7 years ago.
dmidecode Portfile upgraded to the current version 3.1
Portfile.7 (1.4 KB) - added by chicagotripp (Altoine Barker) 7 years ago.
Removed i386 arch, included openmaintainer, and universal_variant set to no.
main.log (13.0 KB) - added by mf2k (Frank Schima) 7 years ago.
Portfile.8 (1.4 KB) - added by mf2k (Frank Schima) 7 years ago.
This is my slightly adjusted Portfile. I removed the redundant universal_variant no line and added your GitHub handle.

Download all attachments as: .zip

Change History (29)

Changed 7 years ago by chicagotripp (Altoine Barker)

Attachment: Portfile added

dmidecode-osx Portfile

comment:1 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Thanks, but you're not using the github portgroup correctly. Please read the comments at the top of the portgroup file.

Are you sure this software does not work on PowerPC processors? If you're not sure, you should not exclude them.

comment:2 Changed 7 years ago by chicagotripp (Altoine Barker)

Thank you, Ryan.

I have made changes to my portfile to reflect the comments in the github PortGroup. Thank you for that resource. I don't know how I missed it while doing my google magic. Sadly, I am certain that this code only works on Intel processors. It is designed for BIOS systems. PowerPC systems use Open Firmware which is not the same but similar in function. I hope I understood the resource and made all the necessary corrections.

Changed 7 years ago by chicagotripp (Altoine Barker)

Attachment: Portfile.2 added

Portfile_corrected

comment:3 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Remove the line github.tarball_from releases. This GitHub project has not published any releases, only tags.

Remove the lines distfiles v${version}.zip, master_sites https://github.com/cavaliercoder/dmidecode-osx/archive and use_zip yes to let the github portgroup's defaults be used. The checksums of the distfile will change, so update the checksums lines.

Remove This is an OS X native port of dmidecode from the description and long description; it's understood that software in MacPorts works on macOS.

Change the maintainers openmaintainer line. Either add your obfuscated email address if you want to be the maintainer, or use nomaintainer if you do not. openmaintainer by itself is invalid.

Because you use use_configure no, you're responsible for ensuring the right compiler and -arch flags get used. See UsingTheRightCompiler.

Use only spaces, not tabs.

comment:4 in reply to:  3 Changed 7 years ago by mf2k (Frank Schima)

Replying to ryandesign:

Remove This is an OS X native port of dmidecode from the description and long description; it's understood that software in MacPorts works on macOS.

Also, I think the port should be simply called dmidecode.

comment:5 Changed 7 years ago by chicagotripp (Altoine Barker)

Thank you for all of your clarity. Here is the reasoning behind why I had choose to name the Portfile dmidecode-osx and why I had the master site listed. First, the actual dmidecode project supports Unix based systems but it doesn't support Mac OSX. There is a fork of dmidecode called dmidecode-osx that supports Mac OSX natively, as well. The problem is I have submitted a request to be added to their list so that I can submit the modifications that allow Mac OSX natively but the maintainers have not responded yet. I have intentions of creating the dmidecode Portfile and making the dmidecode-osx obsolete once it is added to the master branch of dmidecode. I had wanted the changes that would make the dmidecode have native support to be official and then create the port, but you have a point that only Mac users will be using this program so there is no need to have that distinction. Except wouldn't the work directory have the name dmidecode-osx and not the name of the portfile as dmidecode?

Changed 7 years ago by chicagotripp (Altoine Barker)

Attachment: Portfile.3 added

Portfile with only spaces

Changed 7 years ago by chicagotripp (Altoine Barker)

Attachment: Portfile.4 added

Portfile with the line "This is an OS X native port of dmidecode" removed from long_description.

Changed 7 years ago by chicagotripp (Altoine Barker)

Attachment: Portfile.5 added

Portfile with name added to make the port dmidecode instead of dmidecode-osx

comment:6 Changed 7 years ago by chicagotripp (Altoine Barker)

I have conversed with both project maintainers. The group has upgraded their port to match the current project and have made all the necessary corrections. That means the dmidecode-osx project has been upgraded to the current 3.1 version and I am including the upgraded port with the name of the port being dmidecode.

Changed 7 years ago by chicagotripp (Altoine Barker)

Attachment: Portfile.6 added

dmidecode Portfile upgraded to the current version 3.1

comment:7 Changed 7 years ago by mf2k (Frank Schima)

Questions:

  • Does this port build universal correctly?
  • Can openmaintainer be added?

comment:8 Changed 7 years ago by mf2k (Frank Schima)

Port: dmidecode added; dmidecode-osx removed
Summary: dmidecode-osx v3.0 submissiondmidecode v3.0 submission

comment:9 in reply to:  7 Changed 7 years ago by chicagotripp (Altoine Barker)

Replying to mf2k:

Questions:

  • Does this port build universal correctly?
  • Can openmaintainer be added?

Yes, openmaintainer can be added.

Truthfully, I do not know how to test for the port having a universal build as this program is designed to communicate with the System Management BIOS/Desktop Management Interface (SMBIOS/DMI) for Intel-based processors only.

PowerPC processors use OpenFirmware which is incompatible with this program. I am only aware of OpenFirmware being accessible from a reboot and inputting the key sequence Command + Option + "O" (Letter "o" as in "no") + "F" and holding until you hear the boot chime twice.

Other than that I apologize as I am unable to verify that this program will compile successfully on a PowerPC as it certainly will not run if it is able to be installed on a PowerPC-based system.

Last edited 7 years ago by chicagotripp (Altoine Barker) (previous) (diff)

comment:10 Changed 7 years ago by mf2k (Frank Schima)

So it sounds like the i386 of the supported_archs line should be removed? Also, you can just add the line:

universal_variant     no

comment:11 in reply to:  8 Changed 7 years ago by chicagotripp (Altoine Barker)

Replying to mf2k:

May we move the version up to 3.1 based off the latest Portfile submission?

Changed 7 years ago by chicagotripp (Altoine Barker)

Attachment: Portfile.7 added

Removed i386 arch, included openmaintainer, and universal_variant set to no.

comment:12 Changed 7 years ago by mf2k (Frank Schima)

Summary: dmidecode v3.0 submissiondmidecode v3.1 submission

comment:13 Changed 7 years ago by mf2k (Frank Schima)

It does not build for me. main.log attached.

Changed 7 years ago by mf2k (Frank Schima)

Attachment: main.log added

Changed 7 years ago by mf2k (Frank Schima)

Attachment: Portfile.8 added

This is my slightly adjusted Portfile. I removed the redundant universal_variant no line and added your GitHub handle.

comment:14 in reply to:  13 ; Changed 7 years ago by chicagotripp (Altoine Barker)

Replying to mf2k:

It does not build for me. main.log attached.

Is this main.log from the Portfile.6 or the Portfile.7? I'm looking through the error log now.

comment:15 in reply to:  14 Changed 7 years ago by chicagotripp (Altoine Barker)

Replying to chicagotripp:

Replying to mf2k:

It does not build for me. main.log attached.

Is this main.log from the Portfile.6 or the Portfile.7? I'm looking through the error log now.

I just saw your Portfile.8 submission and I had a successful build and install. I'm trying to understand from the main.log where things may have gone wrong. I'm looking at what tools I'm using like my Xcode version is 8.3.3. What version do you have? Only difference between your setup and mine that I see from your Main.log file is that I am using the Apple Xcode 8.3.3 by default. May this be the issue for the failure?

comment:16 Changed 7 years ago by mf2k (Frank Schima)

I was using your latest Portfile.7 and my Portfile.8. My changes would not affect the building of it.

I am on Sierra 10.12.5 with Xcode 8.3.3. I'm guessing there is a missing dependency in the Portfile.

comment:17 Changed 7 years ago by mf2k (Frank Schima)

From the main.log, it appears that Macports gcc6 is involved for some reason. But that is not a declared dependency.

:info:build In file included from /usr/include/Availability.h:190:0,
:info:build                  from /opt/local/lib/gcc6/gcc/x86_64-apple-darwin16/6.3.0/include-fixed/math.h:46,
:info:build                  from /System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:24,
:info:build                  from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:19,
:info:build                  from /System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20,
:info:build                  from dmidecode.c:62:

comment:18 in reply to:  17 Changed 7 years ago by chicagotripp (Altoine Barker)

Replying to mf2k:

From the main.log, it appears that Macports gcc6 is involved for some reason. But that is not a declared dependency.

:info:build In file included from /usr/include/Availability.h:190:0,
:info:build                  from /opt/local/lib/gcc6/gcc/x86_64-apple-darwin16/6.3.0/include-fixed/math.h:46,
:info:build                  from /System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:24,
:info:build                  from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:19,
:info:build                  from /System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20,
:info:build                  from dmidecode.c:62:

Just what I had seen. I was wondering if adding this line to the Portfile might help:

configure.compiler  gcc

or

configure.compiler  clang

I don't know if that will work with the use_configure set as:

use_configure       no

or would it work if use_configure is set as:

use_configure       yes

comment:19 Changed 7 years ago by mf2k (Frank Schima)

The Makefile is very simple and just assumes gcc in the path. That is not good. See UsingTheRightCompiler.

CC      = gcc

We want to use Xcode (clang) to compile. It should be patched to use ${configure.cc}.

comment:20 Changed 7 years ago by mf2k (Frank Schima)

Owner: set to mf2k
Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.