fiftyone-ipintelligence-onpremise 4.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- fiftyone_ipintelligence_onpremise-4.5.0/MANIFEST.in +4 -0
- fiftyone_ipintelligence_onpremise-4.5.0/PKG-INFO +62 -0
- fiftyone_ipintelligence_onpremise-4.5.0/pyproject.toml +3 -0
- fiftyone_ipintelligence_onpremise-4.5.0/setup.cfg +4 -0
- fiftyone_ipintelligence_onpremise-4.5.0/setup.py +265 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/IpIntelligenceEngineModule.py +1947 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/__init__.py +0 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/constants.py +31 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Collection.hpp +133 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Collection.i +35 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/CollectionConfig.cpp +69 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/CollectionConfig.hpp +142 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/CollectionConfig.i +38 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ComponentMetaData.cpp +62 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ComponentMetaData.hpp +115 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ComponentMetaData.i +35 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ConfigBase.cpp +98 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ConfigBase.hpp +199 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ConfigBase.i +43 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/CsTypes.i +33 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Date.cpp +43 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Date.hpp +103 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Date.i +30 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EngineBase.cpp +207 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EngineBase.hpp +342 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EngineBase.i +61 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EntityMetaData.hpp +108 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EntityMetaDataBuilder.hpp +120 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EvidenceBase.cpp +91 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EvidenceBase.hpp +143 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EvidenceBase.i +32 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Exceptions.cpp +104 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Exceptions.hpp +183 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Exceptions.i +59 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/FiftyoneDegrees.hpp +34 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/IpAddress.cpp +85 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/IpAddress.hpp +127 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/IpAddress.i +42 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/JavaTypes.i +150 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/MapStringStringIterator.i +59 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/MetaData.cpp +66 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/MetaData.hpp +246 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/MetaData.i +81 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ProfileMetaData.cpp +52 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ProfileMetaData.hpp +98 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ProfileMetaData.i +33 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/PropertyMetaData.cpp +163 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/PropertyMetaData.hpp +271 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/PropertyMetaData.i +46 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/RequiredPropertiesConfig.cpp +161 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/RequiredPropertiesConfig.hpp +173 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/RequiredPropertiesConfig.i +36 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ResultsBase.cpp +408 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ResultsBase.hpp +560 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ResultsBase.i +64 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Types.i +29 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Value.hpp +213 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Value.i +38 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ValueMetaData.cpp +125 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ValueMetaData.hpp +208 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ValueMetaData.i +59 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/array.h +84 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/bool.c +31 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/bool.h +52 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/cache.c +444 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/cache.h +282 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collection.c +1190 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collection.h +737 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collectionKey.h +85 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collectionKeyTypes.c +67 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collectionKeyTypes.h +174 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/common.h +67 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/component.c +190 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/component.h +204 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/config.h +127 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/constants.h +48 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/data.c +48 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/data.h +135 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/dataset.c +392 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/dataset.h +459 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/date.h +73 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/evidence.c +451 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/evidence.h +334 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/exceptions.h +235 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/exceptionsc.c +93 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/fiftyone.h +520 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/file.c +1151 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/file.h +523 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/fileOffset.h +78 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/float.c +133 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/float.h +219 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/headers.c +626 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/headers.h +260 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/indices.c +344 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/indices.h +184 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ip.c +357 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ip.h +112 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ip.i +29 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ipiSymbols.h +286 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/json.c +193 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/json.h +132 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/list.c +73 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/list.h +175 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/memory.c +327 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/memory.h +219 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/overrides.c +491 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/overrides.h +307 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/pair.h +42 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/pool.c +148 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/pool.h +272 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/process.c +43 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/process.h +39 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/profile.c +727 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/profile.h +448 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/properties.c +555 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/properties.h +377 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/property.c +276 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/property.h +263 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/propertyValueType.c +48 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/propertyValueType.h +101 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/resource.c +417 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/resource.h +267 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/results.c +31 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/results.h +120 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/snprintf.h +37 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/status.c +177 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/status.h +176 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/storedBinaryValue.c +213 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/storedBinaryValue.h +194 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/string.c +138 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/string.h +186 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/stringBuilder.c +367 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/stringBuilder.h +188 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/string_pp.cpp +118 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/string_pp.hpp +49 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/textfile.c +117 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/textfile.h +86 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/threading.c +146 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/threading.h +459 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/tree.c +391 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/tree.h +180 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/value.c +302 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/value.h +294 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/weightedItem.c +100 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/weightedItem.h +154 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/wkbtot.c +650 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/wkbtot.h +93 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/wkbtot_pp.cpp +105 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/wkbtot_pp.hpp +50 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/yamlfile.c +337 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/yamlfile.h +127 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ComponentMetaDataBuilderIpi.cpp +43 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ComponentMetaDataBuilderIpi.hpp +60 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ComponentMetaDataCollectionIpi.cpp +70 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ComponentMetaDataCollectionIpi.hpp +86 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ConfigIpi.cpp +169 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ConfigIpi.hpp +279 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ConfigIpi.i +53 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EngineIpi.cpp +435 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EngineIpi.hpp +336 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EngineIpi.i +75 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EvidenceIpi.cpp +34 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EvidenceIpi.hpp +84 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EvidenceIpi.i +32 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/FiftyoneDegrees.hpp +35 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/MetaDataIpi.cpp +151 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/MetaDataIpi.hpp +116 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ProfileMetaDataBuilderIpi.cpp +41 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ProfileMetaDataBuilderIpi.hpp +62 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ProfileMetaDataCollectionIpi.cpp +87 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ProfileMetaDataCollectionIpi.hpp +89 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataBuilderIpi.cpp +237 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataBuilderIpi.hpp +127 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionForComponentIpi.cpp +91 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionForComponentIpi.hpp +93 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionForPropertyIpi.cpp +87 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionForPropertyIpi.hpp +79 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionIpi.cpp +86 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionIpi.hpp +86 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ResultsIpi.cpp +905 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ResultsIpi.hpp +497 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ResultsIpi.i +127 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataBuilderIpi.cpp +124 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataBuilderIpi.hpp +63 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionBaseIpi.cpp +81 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionBaseIpi.hpp +81 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionForProfileIpi.cpp +160 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionForProfileIpi.hpp +105 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionForPropertyIpi.cpp +103 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionForPropertyIpi.hpp +94 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionIpi.cpp +57 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionIpi.hpp +75 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/WeightedValue.hpp +117 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/WeightedValue.i +58 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/constantsIpi.h +49 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/fiftyone.h +94 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/graph/graph.c +1449 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/graph/graph.h +314 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi.c +3868 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi.h +1079 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi.i +43 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi_weighted_results.c +889 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi_weighted_results.h +150 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/ipi_python_wrap.cxx +49613 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/ipintelligence_datafile.py +114 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/ipintelligence_onpremise.py +396 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/ipintelligence_onpremise_pipelinebuilder.py +129 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/swig_data.py +252 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/PKG-INFO +62 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/SOURCES.txt +213 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/dependency_links.txt +1 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/requires.txt +2 -0
- fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/top_level.txt +2 -0
- fiftyone_ipintelligence_onpremise-4.5.0/tests/test_ipintelligence.py +265 -0
- fiftyone_ipintelligence_onpremise-4.5.0/version.txt +1 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: fiftyone_ipintelligence_onpremise
|
|
3
|
+
Version: 4.5.0
|
|
4
|
+
Summary: This project contains the 51Degrees IP Intelligence OnPremise engine that can be used with the 51Degrees Pipeline API. The Pipeline is a generic web request intelligence and data processing solution with the ability to add a range of 51Degrees and/or custom plug ins (Engines)
|
|
5
|
+
Author: 51Degrees Engineering
|
|
6
|
+
Author-email: engineering@51degrees.com
|
|
7
|
+
License: EUPL-1.2
|
|
8
|
+
Requires-Python: >=3.10
|
|
9
|
+
Description-Content-Type: text/markdown
|
|
10
|
+
|
|
11
|
+
# 51Degrees IP Intelligence Engines - OnPremise
|
|
12
|
+
|
|
13
|
+
 **Python IP Intelligence**
|
|
14
|
+
|
|
15
|
+
[Developer Documentation](https://51degrees.com/ip-intelligence-python/index.html?utm_source=github&utm_medium=readme&utm_campaign=51degrees-python&utm_content=fiftyone_ipintelligence_onpremise-readme.md&utm_term=51degrees-ip-intelligence-engines-onpremise "developer documentation")
|
|
16
|
+
|
|
17
|
+
## Introduction
|
|
18
|
+
|
|
19
|
+
This package resolves IP addresses to location, network and registration
|
|
20
|
+
information using a local `.ipi` data file and the
|
|
21
|
+
[51Degrees Pipeline API](https://51degrees.com/documentation/index.html?utm_source=github&utm_medium=readme&utm_campaign=51degrees-python&utm_content=fiftyone_ipintelligence_onpremise-readme.md&utm_term=introduction).
|
|
22
|
+
|
|
23
|
+
The native [ip-intelligence-cxx](https://github.com/51Degrees/ip-intelligence-cxx)
|
|
24
|
+
library is included as a git submodule and wrapped with SWIG.
|
|
25
|
+
|
|
26
|
+
## Building
|
|
27
|
+
|
|
28
|
+
The SWIG generated wrapper (`ipi_python_wrap.cxx` and
|
|
29
|
+
`IpIntelligenceEngineModule.py`) is committed to the repository so SWIG is
|
|
30
|
+
only needed when regenerating it (run `PreBuild.bat` / `PreBuild.sh`).
|
|
31
|
+
|
|
32
|
+
A C++17 compiler is required to build the native extension:
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
git submodule update --init --recursive
|
|
36
|
+
python setup.py build_clib build_ext
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Data files
|
|
40
|
+
|
|
41
|
+
The on-premise engine requires a `.ipi` data file. A Lite data file can be
|
|
42
|
+
downloaded from
|
|
43
|
+
[51Degrees](https://51ddatafiles.blob.core.windows.net/enterpriseipi/51Degrees-LiteIpiV41.ipi.gz),
|
|
44
|
+
see also the [ip-intelligence-data](https://github.com/51Degrees/ip-intelligence-data)
|
|
45
|
+
repository which is included as a nested submodule and contains evidence
|
|
46
|
+
files for testing.
|
|
47
|
+
|
|
48
|
+
## Usage
|
|
49
|
+
|
|
50
|
+
```python
|
|
51
|
+
from fiftyone_ipintelligence_onpremise.ipintelligence_onpremise_pipelinebuilder import IpIntelligenceOnPremisePipelineBuilder
|
|
52
|
+
|
|
53
|
+
pipeline = IpIntelligenceOnPremisePipelineBuilder(
|
|
54
|
+
data_file_path="51Degrees-LiteIpiV41.ipi",
|
|
55
|
+
licence_keys="",
|
|
56
|
+
usage_sharing=False).build()
|
|
57
|
+
|
|
58
|
+
flowdata = pipeline.create_flowdata()
|
|
59
|
+
flowdata.evidence.add("query.client-ip", "185.28.167.78")
|
|
60
|
+
flowdata.process()
|
|
61
|
+
print(flowdata.ip.registeredname.value())
|
|
62
|
+
```
|
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
# *********************************************************************
|
|
2
|
+
# This Original Work is copyright of 51 Degrees Mobile Experts Limited.
|
|
3
|
+
# Copyright 2026 51 Degrees Mobile Experts Limited, Davidson House,
|
|
4
|
+
# Forbury Square, Reading, Berkshire, United Kingdom RG1 3EU.
|
|
5
|
+
#
|
|
6
|
+
# This Original Work is licensed under the European Union Public Licence
|
|
7
|
+
# (EUPL) v.1.2 and is subject to its terms as set out below.
|
|
8
|
+
#
|
|
9
|
+
# If a copy of the EUPL was not distributed with this file, You can obtain
|
|
10
|
+
# one at https://opensource.org/licenses/EUPL-1.2.
|
|
11
|
+
#
|
|
12
|
+
# The 'Compatible Licences' set out in the Appendix to the EUPL (as may be
|
|
13
|
+
# amended by the European Commission) shall be deemed incompatible for
|
|
14
|
+
# the purposes of the Work and the provisions of the compatibility
|
|
15
|
+
# clause in Article 5 of the EUPL shall not apply.
|
|
16
|
+
#
|
|
17
|
+
# If using the Work as, or as part of, a network application, by
|
|
18
|
+
# including the attribution notice(s) required under Article 5 of the EUPL
|
|
19
|
+
# in the end user terms of the application under an appropriate heading,
|
|
20
|
+
# such notice(s) shall fulfill the requirements of that article.
|
|
21
|
+
# *********************************************************************
|
|
22
|
+
|
|
23
|
+
"""
|
|
24
|
+
setup.py file for SWIG
|
|
25
|
+
"""
|
|
26
|
+
import sys
|
|
27
|
+
import platform
|
|
28
|
+
from setuptools import setup, Extension
|
|
29
|
+
from setuptools.command import develop
|
|
30
|
+
from distutils import sysconfig
|
|
31
|
+
from Cython.Distutils import build_ext
|
|
32
|
+
from glob import glob
|
|
33
|
+
import os
|
|
34
|
+
import io
|
|
35
|
+
import shutil
|
|
36
|
+
|
|
37
|
+
# Read a text file and return the content as a string.
|
|
38
|
+
def read(file_name):
|
|
39
|
+
|
|
40
|
+
"""Read a text file and return the content as a string."""
|
|
41
|
+
try:
|
|
42
|
+
with io.open(
|
|
43
|
+
os.path.join(os.path.dirname(__file__), file_name), encoding="utf-8"
|
|
44
|
+
) as f:
|
|
45
|
+
return f.read().strip()
|
|
46
|
+
except:
|
|
47
|
+
return "0.0.0"
|
|
48
|
+
|
|
49
|
+
def get_version():
|
|
50
|
+
|
|
51
|
+
version = None
|
|
52
|
+
|
|
53
|
+
# Try to get the correct version from platform.
|
|
54
|
+
is_64bits = sys.maxsize > 2**32
|
|
55
|
+
if is_64bits:
|
|
56
|
+
if 'Windows' in platform.system():
|
|
57
|
+
version = "win_64_"
|
|
58
|
+
if 'Linux' in platform.system():
|
|
59
|
+
version = "linux_64_"
|
|
60
|
+
if 'Darwin' in platform.system():
|
|
61
|
+
version = "darwin_64_"
|
|
62
|
+
else:
|
|
63
|
+
if 'Windows' in platform.system():
|
|
64
|
+
version = "win_32_"
|
|
65
|
+
if 'Linux' in platform.system():
|
|
66
|
+
version = "linux_32_"
|
|
67
|
+
if 'Darwin' in platform.system():
|
|
68
|
+
# No 32 bit python on Mac
|
|
69
|
+
version = None
|
|
70
|
+
raise Exception("Sorry, No 32 bit Python on Mac")
|
|
71
|
+
|
|
72
|
+
python_version = str(sys.version_info[0])
|
|
73
|
+
return version + python_version
|
|
74
|
+
|
|
75
|
+
class NoSuffixBuilder(build_ext):
|
|
76
|
+
def get_ext_filename(self, ext_name):
|
|
77
|
+
filename = super().get_ext_filename(ext_name)
|
|
78
|
+
suffix = sysconfig.get_config_var('EXT_SUFFIX')
|
|
79
|
+
if suffix is None:
|
|
80
|
+
suffix = sysconfig.get_config_var('SO')
|
|
81
|
+
|
|
82
|
+
print("**" + filename + "**\r\n")
|
|
83
|
+
print("**" + suffix + "**\r\n")
|
|
84
|
+
|
|
85
|
+
# Get the version from the suffix.
|
|
86
|
+
version = get_version()
|
|
87
|
+
|
|
88
|
+
ext = os.path.splitext(filename)[1]
|
|
89
|
+
|
|
90
|
+
if self.inplace:
|
|
91
|
+
return "./" + filename.replace(suffix, "") + ext
|
|
92
|
+
else:
|
|
93
|
+
return filename.replace(suffix, "") + ext
|
|
94
|
+
|
|
95
|
+
# IP intelligence data files are large so 64 bit file offsets must be
|
|
96
|
+
# used when reading them. All the native libraries (wrapper, C++ and C)
|
|
97
|
+
# must be compiled with the same setting.
|
|
98
|
+
#
|
|
99
|
+
# FIFTYONE_DEGREES_REDUCED_FILE must also be defined to match the cxx
|
|
100
|
+
# CMake build (option ReducedFile, ON by default). It changes on-disk
|
|
101
|
+
# struct layouts (see common-cxx profile.h / value.h) for the reduced
|
|
102
|
+
# data file format used by 4.5 and later data files. The .NET and Java
|
|
103
|
+
# bindings build the cxx via CMake and so inherit this define; the Python
|
|
104
|
+
# build must set it explicitly or it reads the data file with the wrong
|
|
105
|
+
# struct layout (empty results and crashes). All three native libraries
|
|
106
|
+
# (wrapper, C++ and C) must be compiled with the same setting.
|
|
107
|
+
|
|
108
|
+
def stage_native_source():
|
|
109
|
+
|
|
110
|
+
"""Copy the native source this engine is built from into the package.
|
|
111
|
+
|
|
112
|
+
The source is kept once, in the cxx submodule at the root of
|
|
113
|
+
51degrees-python (51degrees-cxx), and a package can only build and ship
|
|
114
|
+
files inside its own folder, so the parts it needs are copied here and the
|
|
115
|
+
source distribution carries them. Building from a source distribution has
|
|
116
|
+
the copy already and no cxx folder above it, so nothing is copied then."""
|
|
117
|
+
|
|
118
|
+
here = os.path.dirname(os.path.abspath(__file__))
|
|
119
|
+
source = os.path.join(here, "..", "..", "cxx", "src")
|
|
120
|
+
dest = os.path.join(here, "src", "fiftyone_ipintelligence_onpremise", "cxx", "src")
|
|
121
|
+
if os.path.isdir(source) == False:
|
|
122
|
+
if os.path.isdir(dest) == False:
|
|
123
|
+
raise RuntimeError(
|
|
124
|
+
"No native source: check out the cxx submodule at the root "
|
|
125
|
+
"of 51degrees-python (git submodule update --init cxx).")
|
|
126
|
+
return
|
|
127
|
+
# IP Intelligence needs common and its own folder only. Each package compiles
|
|
128
|
+
# its own copy of common, because IP Intelligence builds it with settings
|
|
129
|
+
# that change structure sizes.
|
|
130
|
+
for folder in ('common', 'ipi'):
|
|
131
|
+
target = os.path.join(dest, folder)
|
|
132
|
+
shutil.rmtree(target, ignore_errors=True)
|
|
133
|
+
shutil.copytree(os.path.join(source, folder), target)
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
stage_native_source()
|
|
137
|
+
|
|
138
|
+
define_macros = [
|
|
139
|
+
('FIFTYONE_DEGREES_LARGE_DATA_FILE_SUPPORT', '1'),
|
|
140
|
+
('FIFTYONE_DEGREES_REDUCED_FILE', '1')]
|
|
141
|
+
extra_compile_args = [
|
|
142
|
+
'-DFIFTYONE_DEGREES_LARGE_DATA_FILE_SUPPORT=1',
|
|
143
|
+
'-DFIFTYONE_DEGREES_REDUCED_FILE=1']
|
|
144
|
+
extra_link_args = []
|
|
145
|
+
# Extra compilation flags for C library
|
|
146
|
+
cflags = [
|
|
147
|
+
'-DFIFTYONE_DEGREES_LARGE_DATA_FILE_SUPPORT=1',
|
|
148
|
+
'-DFIFTYONE_DEGREES_REDUCED_FILE=1']
|
|
149
|
+
|
|
150
|
+
if sys.platform != "win32":
|
|
151
|
+
extra_compile_args.extend([
|
|
152
|
+
'-fPIC',
|
|
153
|
+
'-std=gnu++17',
|
|
154
|
+
'-Wall',
|
|
155
|
+
'-D_FILE_OFFSET_BITS=64',
|
|
156
|
+
# '-Werror'
|
|
157
|
+
])
|
|
158
|
+
cflags.extend([
|
|
159
|
+
'-std=gnu11',
|
|
160
|
+
'-Wall',
|
|
161
|
+
'-D_FILE_OFFSET_BITS=64',
|
|
162
|
+
# '-Werror',
|
|
163
|
+
'-Wno-strict-prototypes',
|
|
164
|
+
'-Wno-unused-variable',
|
|
165
|
+
'-Wno-missing-braces',
|
|
166
|
+
'-Wno-strict-aliasing'
|
|
167
|
+
])
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
if sys.platform == "win32":
|
|
171
|
+
extra_compile_args.extend([
|
|
172
|
+
'/std:c++17',
|
|
173
|
+
'/D_CRT_SECURE_NO_WARNINGS',
|
|
174
|
+
'/D_UNICODE',
|
|
175
|
+
'/DUNICODE',
|
|
176
|
+
'/W4',
|
|
177
|
+
# '/WX',
|
|
178
|
+
'/wd4127',
|
|
179
|
+
'/wd4456',
|
|
180
|
+
'/wd4701',
|
|
181
|
+
'/wd4703',
|
|
182
|
+
'/wd4706'
|
|
183
|
+
])
|
|
184
|
+
cflags.extend([
|
|
185
|
+
'/D_CRT_SECURE_NO_WARNINGS',
|
|
186
|
+
'/D_UNICODE',
|
|
187
|
+
'/DUNICODE',
|
|
188
|
+
'/W4',
|
|
189
|
+
# '/WX'
|
|
190
|
+
])
|
|
191
|
+
extra_link_args.extend([
|
|
192
|
+
'/WX'
|
|
193
|
+
])
|
|
194
|
+
|
|
195
|
+
if sys.platform == "linux":
|
|
196
|
+
extra_link_args.extend([
|
|
197
|
+
'-latomic'
|
|
198
|
+
])
|
|
199
|
+
|
|
200
|
+
if sys.platform == 'darwin':
|
|
201
|
+
# This is flaged in CPython
|
|
202
|
+
extra_compile_args.extend([
|
|
203
|
+
'-DGCC_ENABLE_CPP_EXCEPTIONS=YES'
|
|
204
|
+
])
|
|
205
|
+
if sys.version_info[0] == 3 and sys.version_info[1] == 8:
|
|
206
|
+
extra_compile_args.extend([
|
|
207
|
+
'-Wno-deprecated-declarations'
|
|
208
|
+
])
|
|
209
|
+
cflags.extend([
|
|
210
|
+
'-Wno-atomic-alignment'
|
|
211
|
+
])
|
|
212
|
+
|
|
213
|
+
IpIntelligenceEngineModule = Extension('_IpIntelligenceEngineModule',
|
|
214
|
+
sources=[
|
|
215
|
+
# Python Wrapper
|
|
216
|
+
# "fiftyone_ipintelligence_onpremise/ipi_python.i"
|
|
217
|
+
"src/fiftyone_ipintelligence_onpremise/ipi_python_wrap.cxx"
|
|
218
|
+
],
|
|
219
|
+
define_macros=define_macros,
|
|
220
|
+
extra_compile_args=extra_compile_args,
|
|
221
|
+
extra_link_args=extra_link_args,
|
|
222
|
+
language='c++',
|
|
223
|
+
)
|
|
224
|
+
|
|
225
|
+
cpplib = ('cpplib', {
|
|
226
|
+
'sources': [
|
|
227
|
+
# Common C++
|
|
228
|
+
*glob("src/fiftyone_ipintelligence_onpremise/cxx/src/common/*.cpp"),
|
|
229
|
+
# IP Intelligence C++
|
|
230
|
+
*glob("src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/*.cpp"),
|
|
231
|
+
],
|
|
232
|
+
'cflags': extra_compile_args
|
|
233
|
+
})
|
|
234
|
+
|
|
235
|
+
clib = ('clib', {
|
|
236
|
+
'sources': [
|
|
237
|
+
# Common C
|
|
238
|
+
*glob("src/fiftyone_ipintelligence_onpremise/cxx/src/common/*.c"),
|
|
239
|
+
# IP Intelligence C
|
|
240
|
+
*glob("src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/*.c"),
|
|
241
|
+
# IP Graph C
|
|
242
|
+
*glob("src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/graph/*.c"),
|
|
243
|
+
],
|
|
244
|
+
'cflags': cflags
|
|
245
|
+
})
|
|
246
|
+
|
|
247
|
+
setup(
|
|
248
|
+
cmdclass={"build_ext": NoSuffixBuilder},
|
|
249
|
+
name="fiftyone_ipintelligence_onpremise",
|
|
250
|
+
version=read("version.txt"),
|
|
251
|
+
author="51Degrees Engineering",
|
|
252
|
+
author_email="engineering@51degrees.com",
|
|
253
|
+
description = """This project contains the 51Degrees IP Intelligence OnPremise engine that can be used with the 51Degrees Pipeline API. The Pipeline is a generic web request intelligence and data processing solution with the ability to add a range of 51Degrees and/or custom plug ins (Engines)""",
|
|
254
|
+
long_description=read("readme.md"),
|
|
255
|
+
long_description_content_type="text/markdown",
|
|
256
|
+
python_requires=">=3.10",
|
|
257
|
+
license="EUPL-1.2",
|
|
258
|
+
libraries=[cpplib, clib],
|
|
259
|
+
ext_package="fiftyone_ipintelligence_onpremise",
|
|
260
|
+
ext_modules=[IpIntelligenceEngineModule],
|
|
261
|
+
py_modules=["fiftyone_ipintelligence_onpremise"],
|
|
262
|
+
packages=["fiftyone_ipintelligence_onpremise"],
|
|
263
|
+
package_dir={"": "src"},
|
|
264
|
+
install_requires=["fiftyone_ipintelligence_shared", "fiftyone_pipeline_engines_fiftyone"],
|
|
265
|
+
)
|