Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable out-of-tree builds. autoconfigure a clock for clock_gettime. … #48

Merged
merged 1 commit into from
Jul 8, 2016

Conversation

pooryorick
Copy link

… Modify

myexec to not die on stderr output. Comment out net/ethernet.h include, which
seems to be unnecessary, and isn't available under Cygwin.

…odify

myexec to not die on stderr output.  Comment out net/ethernet.h include, which
seems to be unnecessary, and isn't available under Cygwin.
@bovine
Copy link
Member

bovine commented Apr 6, 2016

I think net/ethernet.h was necessary for the MAC Address column type? Adding a AC_CHECK_HEADER for that file might be a better option.

@resuna
Copy link
Member

resuna commented Apr 6, 2016

If you never use the "mac" type, this will never be referenced.

In cygwin, where are these defined/declared?

struct ether_addr
ether_aton
ether_ntoa

@bovine
Copy link
Member

bovine commented Jun 22, 2016

@pooryorick Can you find out where cygwin defines those structs/typedefs?

@resuna
Copy link
Member

resuna commented Jul 7, 2016

@pooryorick I'd like to get this pulled in, for the clock changes, but we can't just kill net/ethernet.h ... we could merge and then undo that part of the patch if you can't provide an alternative.

@bovine
Copy link
Member

bovine commented Jul 7, 2016

One other user reports that no default cygwin headers include anything named "ether_*"

So it may be necessary to make the MAC Address column type become unavailable on such platforms, or define a substitute datatype and our own conversion functions.

@resuna
Copy link
Member

resuna commented Jul 7, 2016

Well, I can add this to configure.in:

AC_CHECK_HEADER(net/ethernet.h,[CTABLES_CFLAGS="$CTABLES_CFLAGS
-DHAVE_NET_ETHERNET_H=1"])

And I can add this to ctable.h:

#ifdef HAVE_NET_ETHERNET_H
#include <net/ethernet.h>
#endif

That will at least avoid compilation problems if you're not using MAC
addresses.

On Thu, Jul 7, 2016 at 12:53 PM, Jeff Lawson notifications@github.com
wrote:

One other user reports that no default cygwin headers include anything
named "ether_*"

So it may be necessary to make the MAC Address column type become
unavailable on such platforms, or define a substitute datatype and our own
conversion functions.


You are receiving this because you commented.
Reply to this email directly, view it on GitHub
#48 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AAF0Oj53aeK6d_Imd-cHkJn83tIcUi1Oks5qTT0zgaJpZM4GMqWQ
.

@resuna
Copy link
Member

resuna commented Jul 8, 2016

Looks like the three symbols that need to be defined for mac types to work are ether_aton, ether_ntoa, and struct ether_addr.

@resuna resuna merged commit 406d8e9 into flightaware:master Jul 8, 2016
resuna added a commit that referenced this pull request Jul 8, 2016
@resuna
Copy link
Member

resuna commented Jul 8, 2016

According to GNUlib documentation, the ether_* functions are missing on HP-UX 11, Cygwin, mingw, MSVC 9, Interix 3.5, and BeOS.

@resuna
Copy link
Member

resuna commented Jul 11, 2016

Implemented an "ethers.c" for platforms that don't have the ether_* functions. Added mac-ip tests into default configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants