Added conan
This commit is contained in:
parent
e86fcb8827
commit
f421d30f30
41
.travis.yml
Normal file
41
.travis.yml
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
|
||||||
|
env:
|
||||||
|
global:
|
||||||
|
- CONAN_REFERENCE: "MofileReader/0.1.2"
|
||||||
|
- CONAN_USERNAME: "anotherfoxguy"
|
||||||
|
- CONAN_LOGIN_USERNAME: "anotherfoxguy"
|
||||||
|
- CONAN_CHANNEL: "MofileReader"
|
||||||
|
- CONAN_UPLOAD: "https://api.bintray.com/conan/anotherfoxguy/ror-dependencies"
|
||||||
|
|
||||||
|
linux: &linux
|
||||||
|
os: linux
|
||||||
|
sudo: required
|
||||||
|
language: python
|
||||||
|
python: "3.6"
|
||||||
|
services:
|
||||||
|
- docker
|
||||||
|
osx: &osx
|
||||||
|
os: osx
|
||||||
|
language: generic
|
||||||
|
matrix:
|
||||||
|
include:
|
||||||
|
|
||||||
|
- <<: *linux
|
||||||
|
env: CONAN_GCC_VERSIONS=4.9 CONAN_DOCKER_IMAGE=lasote/conangcc49
|
||||||
|
|
||||||
|
- <<: *linux
|
||||||
|
env: CONAN_GCC_VERSIONS=5 CONAN_DOCKER_IMAGE=lasote/conangcc5
|
||||||
|
|
||||||
|
- <<: *linux
|
||||||
|
env: CONAN_GCC_VERSIONS=6 CONAN_DOCKER_IMAGE=lasote/conangcc6
|
||||||
|
|
||||||
|
- <<: *linux
|
||||||
|
env: CONAN_GCC_VERSIONS=7 CONAN_DOCKER_IMAGE=lasote/conangcc7
|
||||||
|
|
||||||
|
install:
|
||||||
|
- chmod +x .travis/install.sh
|
||||||
|
- ./.travis/install.sh
|
||||||
|
|
||||||
|
script:
|
||||||
|
- chmod +x .travis/run.sh
|
||||||
|
- ./.travis/run.sh
|
25
.travis/install.sh
Normal file
25
.travis/install.sh
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
set -x
|
||||||
|
|
||||||
|
if [[ "$(uname -s)" == 'Darwin' ]]; then
|
||||||
|
brew update || brew update
|
||||||
|
brew outdated pyenv || brew upgrade pyenv
|
||||||
|
brew install pyenv-virtualenv
|
||||||
|
brew install cmake || true
|
||||||
|
|
||||||
|
if which pyenv > /dev/null; then
|
||||||
|
eval "$(pyenv init -)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
pyenv install 2.7.10
|
||||||
|
pyenv virtualenv 2.7.10 conan
|
||||||
|
pyenv rehash
|
||||||
|
pyenv activate conan
|
||||||
|
fi
|
||||||
|
|
||||||
|
pip install conan --upgrade
|
||||||
|
pip install conan_package_tools
|
||||||
|
|
||||||
|
conan user
|
13
.travis/run.sh
Normal file
13
.travis/run.sh
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
set -x
|
||||||
|
|
||||||
|
if [[ "$(uname -s)" == 'Darwin' ]]; then
|
||||||
|
if which pyenv > /dev/null; then
|
||||||
|
eval "$(pyenv init -)"
|
||||||
|
fi
|
||||||
|
pyenv activate conan
|
||||||
|
fi
|
||||||
|
|
||||||
|
python build.py
|
54
CMakeLists.txt
Normal file
54
CMakeLists.txt
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
#-------------------------------------------------------
|
||||||
|
# moFileReader Main Build Script
|
||||||
|
#
|
||||||
|
# Defined Variables:
|
||||||
|
# - COMPILE_DLL
|
||||||
|
# - ON : Compiles the code as a shared Library
|
||||||
|
# - OFF : Compiles the code as a static Library
|
||||||
|
# - BUILD_DEBUG
|
||||||
|
# - ON : Compiles Debug-Information into the output
|
||||||
|
# - OFF : Optimizes the compilation with O2.
|
||||||
|
#
|
||||||
|
# Run cmake with -DVARNAME=ON/OFF to benefit from those
|
||||||
|
# possible settings.
|
||||||
|
#-------------------------------------------------------
|
||||||
|
cmake_minimum_required(VERSION 2.6)
|
||||||
|
project(moFileReader)
|
||||||
|
|
||||||
|
# Set Output Directories.
|
||||||
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ../bin)
|
||||||
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ../lib)
|
||||||
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ../lib)
|
||||||
|
|
||||||
|
|
||||||
|
# The main include directory
|
||||||
|
include_directories(BEFORE ../include)
|
||||||
|
|
||||||
|
# executable build directory
|
||||||
|
add_subdirectory(bin)
|
||||||
|
|
||||||
|
# Let the user choose between static lib and dll
|
||||||
|
# To use it, call cmake -DCOMPILE_DLL=ON
|
||||||
|
option(COMPILE_DLL "Set this to ON if you want to compile the library as an DLL. When this is OFF, a static library is created (default)." OFF)
|
||||||
|
|
||||||
|
# Dependency
|
||||||
|
link_directories(../lib)
|
||||||
|
|
||||||
|
if ( NOT COMPILE_DLL )
|
||||||
|
|
||||||
|
# Static build
|
||||||
|
add_library(moFileReader.static STATIC ../src/moFileReader.cpp ../src/mo.cpp)
|
||||||
|
|
||||||
|
else ( COMPILE_DLL )
|
||||||
|
|
||||||
|
# DLL
|
||||||
|
add_definitions(-D_USRDLL -DMOFILE_EXPORTS)
|
||||||
|
add_library(moFileReader SHARED ../src/moFileReader.cpp ../src/mo.cpp)
|
||||||
|
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
24
appveyor.yml
Normal file
24
appveyor.yml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
build: false
|
||||||
|
image: Visual Studio 2017
|
||||||
|
|
||||||
|
environment:
|
||||||
|
PYTHON: "C:\\Python27"
|
||||||
|
PYTHON_VERSION: "2.7.8"
|
||||||
|
PYTHON_ARCH: "32"
|
||||||
|
|
||||||
|
CONAN_REFERENCE: "MofileReader/0.1.2"
|
||||||
|
CONAN_USERNAME: "anotherfoxguy"
|
||||||
|
CONAN_LOGIN_USERNAME: "anotherfoxguy"
|
||||||
|
CONAN_CHANNEL: "MofileReader"
|
||||||
|
CONAN_UPLOAD: "https://api.bintray.com/conan/anotherfoxguy/ror-dependencies"
|
||||||
|
CONAN_VISUAL_VERSIONS: 15
|
||||||
|
|
||||||
|
|
||||||
|
install:
|
||||||
|
- set PATH=%PATH%;%PYTHON%/Scripts/
|
||||||
|
- pip.exe install conan --upgrade
|
||||||
|
- pip.exe install conan_package_tools
|
||||||
|
- conan user # It creates the conan data directory
|
||||||
|
|
||||||
|
test_script:
|
||||||
|
- python build.py
|
7
build.py
Normal file
7
build.py
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
from conan.packager import ConanMultiPackager
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
builder = ConanMultiPackager()
|
||||||
|
builder.add_common_builds()
|
||||||
|
builder.run()
|
32
conanfile.py
Normal file
32
conanfile.py
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
from conans import ConanFile, CMake, tools
|
||||||
|
import os
|
||||||
|
|
||||||
|
class MofilereaderConan(ConanFile):
|
||||||
|
name = "MofileReader"
|
||||||
|
version = "0.1.2"
|
||||||
|
license = "MIT"
|
||||||
|
url = "https://github.com/AnotherFoxGuy/conan-MofileReader/"
|
||||||
|
description = "This API lets you read .mo-Files and use their content just as you would do with GNUs gettext."
|
||||||
|
settings = "os", "compiler", "build_type", "arch"
|
||||||
|
#options = {"shared": [True, False]}
|
||||||
|
#default_options = "shared=False"
|
||||||
|
generators = "cmake"
|
||||||
|
|
||||||
|
def source(self):
|
||||||
|
self.run("git clone https://bitbucket.org/scorcher24/mofilereader.git .")
|
||||||
|
|
||||||
|
def build(self):
|
||||||
|
cmake = CMake(self)
|
||||||
|
cmake.configure(source_folder="build")
|
||||||
|
cmake.build()
|
||||||
|
|
||||||
|
def package(self):
|
||||||
|
self.copy("*.h", dst="include", src="include")
|
||||||
|
self.copy("*.lib", dst="lib", src=os.path.join("..", "lib"), keep_path=False)
|
||||||
|
self.copy("*.dll", dst="bin", keep_path=False)
|
||||||
|
self.copy("*.so", dst="lib", keep_path=False)
|
||||||
|
self.copy("*.dylib", dst="lib", keep_path=False)
|
||||||
|
self.copy("*.a", dst="lib", keep_path=False)
|
||||||
|
|
||||||
|
def package_info(self):
|
||||||
|
self.cpp_info.libs = ["MofileReader"]
|
Loading…
x
Reference in New Issue
Block a user