Index: src/OFSystemInfo+NetworkInterfaces.m ================================================================== --- src/OFSystemInfo+NetworkInterfaces.m +++ src/OFSystemInfo+NetworkInterfaces.m @@ -15,28 +15,12 @@ #include "config.h" #import "OFSystemInfo.h" -OFNetworkInterfaceKey OFNetworkInterfaceIndex = @"OFNetworkInterfaceIndex"; -OFNetworkInterfaceKey OFNetworkInterfaceHardwareAddress = - @"OFNetworkInterfaceHardwareAddress"; -OFNetworkInterfaceKey OFNetworkInterfaceIPv4Addresses = - @"OFNetworkInterfaceIPv4Addresses"; -#ifdef OF_HAVE_IPV6 -OFNetworkInterfaceKey OFNetworkInterfaceIPv6Addresses = - @"OFNetworkInterfaceIPv6Addresses"; -#endif -#ifdef OF_HAVE_IPX -OFNetworkInterfaceKey OFNetworkInterfaceIPXAddresses = - @"OFNetworkInterfaceIPXAddresses"; -#endif -#ifdef OF_HAVE_APPLETALK -OFNetworkInterfaceKey OFNetworkInterfaceAppleTalkAddresses = - @"OFNetworkInterfaceAppleTalkAddresses"; -#endif +#include "OFSystemInfo+NetworkInterfacesConstants.inc" #ifdef OF_WINDOWS # include "platform/Windows/OFSystemInfo+NetworkInterfaces.m" #else # include "platform/POSIX/OFSystemInfo+NetworkInterfaces.m" #endif ADDED src/OFSystemInfo+NetworkInterfacesConstants.inc Index: src/OFSystemInfo+NetworkInterfacesConstants.inc ================================================================== --- src/OFSystemInfo+NetworkInterfacesConstants.inc +++ src/OFSystemInfo+NetworkInterfacesConstants.inc @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2008-2023 Jonathan Schleifer + * + * All rights reserved. + * + * This file is part of ObjFW. It may be distributed under the terms of the + * Q Public License 1.0, which can be found in the file LICENSE.QPL included in + * the packaging of this file. + * + * Alternatively, it may be distributed under the terms of the GNU General + * Public License, either version 2 or 3, which can be found in the file + * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this + * file. + */ + +#include "config.h" + +#import "OFSystemInfo.h" + +OFNetworkInterfaceKey OFNetworkInterfaceIndex = @"OFNetworkInterfaceIndex"; +OFNetworkInterfaceKey OFNetworkInterfaceHardwareAddress = + @"OFNetworkInterfaceHardwareAddress"; +OFNetworkInterfaceKey OFNetworkInterfaceIPv4Addresses = + @"OFNetworkInterfaceIPv4Addresses"; +#ifdef OF_HAVE_IPV6 +OFNetworkInterfaceKey OFNetworkInterfaceIPv6Addresses = + @"OFNetworkInterfaceIPv6Addresses"; +#endif +#ifdef OF_HAVE_IPX +OFNetworkInterfaceKey OFNetworkInterfaceIPXAddresses = + @"OFNetworkInterfaceIPXAddresses"; +#endif +#ifdef OF_HAVE_APPLETALK +OFNetworkInterfaceKey OFNetworkInterfaceAppleTalkAddresses = + @"OFNetworkInterfaceAppleTalkAddresses"; +#endif Index: src/linklib/init.m ================================================================== --- src/linklib/init.m +++ src/linklib/init.m @@ -264,10 +264,13 @@ void *__objc_class_name_OFThreadStillRunningException; void *__objc_class_name_OFWaitForConditionFailedException; #endif #include "OFFileManagerConstants.inc" #include "OFRunLoopConstants.inc" +#ifdef OF_HAVE_SOCKETS +# include "OFSystemInfo+NetworkInterfacesConstants.inc" +#endif /* The following __objc_class_name_* are only for the tests. */ void *__objc_class_name_OFBitSetCharacterSet; void *__objc_class_name_OFConcreteMutableSet; void *__objc_class_name_OFConcreteSet; void *__objc_class_name_OFMutableUTF8String;