From 9fae0bed3761b7afc8494f23d83729065643eef6 Mon Sep 17 00:00:00 2001 From: Robin Mills Date: Sun, 21 Oct 2018 18:18:20 +0100 Subject: [PATCH] Removing obsolete contributions --- TODO-CMAKE | 167 ---- contrib/CLion/ReadMe.txt | 14 - contrib/CLion/idea/encodings.xml | 6 - contrib/CLion/idea/exiv2.iml | 590 -------------- contrib/CLion/idea/misc.xml | 17 - contrib/CLion/idea/modules.xml | 8 - contrib/CLion/idea/vcs.xml | 6 - contrib/CLion/idea/workspace.xml | 599 -------------- contrib/buildForMac | 58 -- contrib/buildRevisions/buildRevisions.sh | 45 -- contrib/buildserver/ReadMe.txt | 187 +---- contrib/buildserver/buildserver.library | 55 -- contrib/buildserver/dailyBuild.sh | 38 - contrib/buildserver/dailyCMake.sh | 264 ------- contrib/buildserver/dailyCMakeAll.sh | 5 - contrib/buildserver/dailyReadMe.txt | 156 ---- contrib/buildserver/dailyTest.sh | 186 ----- contrib/buildserver/dailyTestAll.sh | 5 - contrib/buildserver/jenkins_build.bat | 199 ----- contrib/buildserver/jenkins_build.sh | 221 ------ contrib/cmake/macosx/generate | 21 - contrib/cmake/mingw/ReadMe.txt | 1 - contrib/cmake/mingw/includes.rsp | 8 - contrib/makeUniversal | 30 - contrib/xcode/ReadMe.txt | 24 - contrib/xcode/exiv2.xcodeproj/project.pbxproj | 737 ------------------ 26 files changed, 2 insertions(+), 3645 deletions(-) delete mode 100644 TODO-CMAKE delete mode 100644 contrib/CLion/ReadMe.txt delete mode 100644 contrib/CLion/idea/encodings.xml delete mode 100644 contrib/CLion/idea/exiv2.iml delete mode 100644 contrib/CLion/idea/misc.xml delete mode 100644 contrib/CLion/idea/modules.xml delete mode 100644 contrib/CLion/idea/vcs.xml delete mode 100644 contrib/CLion/idea/workspace.xml delete mode 100755 contrib/buildForMac delete mode 100755 contrib/buildRevisions/buildRevisions.sh delete mode 100644 contrib/buildserver/buildserver.library delete mode 100755 contrib/buildserver/dailyBuild.sh delete mode 100755 contrib/buildserver/dailyCMake.sh delete mode 100755 contrib/buildserver/dailyCMakeAll.sh delete mode 100644 contrib/buildserver/dailyReadMe.txt delete mode 100755 contrib/buildserver/dailyTest.sh delete mode 100755 contrib/buildserver/dailyTestAll.sh delete mode 100644 contrib/buildserver/jenkins_build.bat delete mode 100755 contrib/buildserver/jenkins_build.sh delete mode 100755 contrib/cmake/macosx/generate delete mode 100755 contrib/cmake/mingw/ReadMe.txt delete mode 100755 contrib/cmake/mingw/includes.rsp delete mode 100755 contrib/makeUniversal delete mode 100644 contrib/xcode/ReadMe.txt delete mode 100644 contrib/xcode/exiv2.xcodeproj/project.pbxproj diff --git a/TODO-CMAKE b/TODO-CMAKE deleted file mode 100644 index bcb2011b..00000000 --- a/TODO-CMAKE +++ /dev/null @@ -1,167 +0,0 @@ - @@@@@@@@@@@@@b ;mm /##Gilles###\ - j@@@#Robin", Brad /@@@Thomas@@@@Q - @@@# \ ## @@@b |@@@b - @@@# .;;;;, ,;;;, ,;;;; ,;;;p .;;; 7@@ ]Alan - @@@# j@@@@, ]@@#/ '@@@# j@@@# ]@@^ ;@@@" - @@@Andreas@C "@@@p @@@" @@@b j@@@p @@b @@@#/ - @@@#^7"7%#\ ^@@@@@#~ Benb 1@@@ {@# s@@@# - @@@# Niels @@@b @@@Q ]@# ;@@@#/ - @@@# ,@@##@@m @@@b @@@p @@C #@@#C - @@@# ,/ s@@# @@@@ @@@b Volker @Tuan@ - ]@@@Abhinav@@\ /@@@\ \@@@Q @@@Q %@@@# /@@@@Mahesh@@# - /@@@@@@@@@@@@@@\ /@@@@@\ C++ Metadata Library /@Sridhar@@@v0.26\ - -Current Status - -ToDo: * CMake/MinGW builds executables that do not work properly for v0.26 - Known issues: - sample apps crash in XML_ParserCreate() - in c:\MinGW\msys\1.0\bin\msys-expat-1.dll - - This is because MinGW links the wrong DLLs. - - Team Exiv2 will no longer provide support for MinGW - -Here are notes concerning CMake/MinGW - - 1 Running a MinGW bash shell - - I installed MinGW using the installer on the web site. - I installed two copies c:\MinGW and c:\MinGW64 - - both copies run a 32 bit bash shell - - I installed the TDM-GCC-64 compiler for use from MinGW64 - I installed the Qt 5.6.0 Environement for use from MinGW - - I start mingw from DOS with this batch-file (mingw32.bat) - @echo off - rem ------------------ - : mingw32.bat - : invoke MinGW bash - : - setlocal - set "PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig" - set "INCLUDE_PATH=/usr/local/inc" - set "LIBRARY_PATH=/usr/local/lib" - set "BINARY_PATH=/usr/local/bin" - set "PATH=c:\Qt\Qt5.6.0\5.6\mingw49_32\bin;c:\Qt\Qt5.6.0\Tools\mingw492_32\bin;\usr\local\bin;\usr\bin:c:\MinGW\bin:c:\cygwin64\bin;c:\Users\rmills\com;." - set "PS1=\! -32- ${PWD}> " - c:\MinGW\msys\1.0\bin\bash.exe %*% - - : That's all Folks - rem ------------------ - - In ~/.bashrc - 502 -32- /home/rmills> cat .bashrc - #!/bin/bash - - export "PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig" - export "INCLUDE_PATH=/usr/local/inc" - export "LIBRARY_PATH=/usr/local/lib" - export "BINARY_PATH=/usr/local/bin" - - PATH=/c/Qt/Qt5.6.0/5.6/mingw49_32/bin:/c/Qt/Qt5.6.0/Tools/mingw492_32/bin:/usr/local/bin:/usr/bin:/bin:/c/cygwin64/bin:/c/Users/rmills/com:. - PS1='\! -32- ${PWD}> ' - - # echo hello world from .bashrc - alias dir='ls -alt' - alias del='rm -rf' - alias finder='find . -depth -iname' - alias path='(IFS=:;for i in $PATH; do echo $i; done)' - - ## - # finder helpers - export L="-exec ls -dalt {} ;" - export X="-exec rm -rf {} ;" - export C="-exec ce {} ;" - export I="-exec lipo -info {} ;" - export O="-exec otool -L {} ;" - export Z="-exec open {} ;" - export P="-exec p4 edit {} ;" - export R="-exec p4 revert {} ;" - export G="-exec grep" - export __=";" - export ___="{} ;" - - # That's all Folks! - ## - 503 -32- /home/rmills> - - MinGW64 has very similar code. Putting the TDM compiler on the path is the major difference. - The file ~/.bashrc for MinGW64 is in c:\MinGW64\msys\1.0\home\\.bashrc - - 2 Building and installing CMake - $ ./bookstrap --prefix=/usr/local - $ make - $ make install - - Gotchas: - 1) Do not use a Windows binary install version of CMake - This generates commands which assume you are in the DOS shell. - - Build and Use CMake in a "Unix" Way from a MinGW/bash shell. - - 2) Even although gcc is on the path, we must tell cmake not to use /c/MinGW/bin/gcc) - - 3) It's using the wrong headers. Needs /c/Qt/Qt5.6.0/Tools/mingw492_32/i686-w64-mingw32/include - cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=$dist -DEXIV2_ENABLE_NLS=OFF \ - -DCMAKE_C_COMPILER=$(which gcc) -DCMAKE_CXX_COMPILER=$(which g++) \ - "-DCMAKE_CXX_FLAGS=-I/c/Qt/Qt5.6.0/Tools/mingw492_32/i686-w64-mingw32/include" - .. - - 4) even so, it errors instantly on: - In file included from c:/Qt/Qt5.6.0/Tools/mingw492_32/i686-w64-mingw32/include/stddef.h:7:0, - from c:/Qt/Qt5.6.0/Tools/mingw492_32/lib/gcc/i686-w64-mingw32/4.9.2/include/stddef.h:1, - from C:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/xmpsdk/include/XMP_Const.h:14, - from C:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/xmpsdk/src/XMPCore_Impl.hpp:13, - from C:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/xmpsdk/src/ExpatAdapter.cpp:10: - c:/Qt/Qt5.6.0/Tools/mingw492_32/i686-w64-mingw32/include/crtdefs.h:26:9: error: 'size_t' does not name a type - typedef size_t rsize_t; - 5) Building cmake itself required setting CC CXX CXXFLAGS and LDFLAGS - AND editing a system file in Qt with an erroneous #pragma error NTDDI_VERSION and _WIN32_WINNT - In file included from c:/Qt/Qt5.6.0/Tools/mingw492_32/i686-w64-mingw32/include/windows.h:10:0, - from c:/Users/rmills/gnu/cmake/cmake-3.6.2/Utilities/cmlibarchive/libarchive/archive_windows.h:74, - from c:/Users/rmills/gnu/cmake/cmake-3.6.2/Utilities/cmlibarchive/libarchive/archive_platform.h:60, - from c:/Users/rmills/gnu/cmake/cmake-3.6.2/Utilities/cmlibarchive/libarchive/xxhash.c:35: - c:/Qt/Qt5.6.0/Tools/mingw492_32/i686-w64-mingw32/include/sdkddkver.h:186:2: error: #error NTDDI_VERSION and _WIN32_WINNT mismatch! - My work-around was to comment off the #error statement! - - 3 Building Exiv2 with CMake - $ cd ~/gnu/exiv2/trunk - $ rm -rf build ; mkdir build ; cd build - $ cmake .. -G "Unix Makefiles" -DCMAKE_C_COMPILER=$(which gcc) -DCMAKE_CXX_COMPILER=$(which g++) -DEXIV2_ENABLE_NLS=OFF - .... cmake will rattle and roll .... - - CMake generates the wrong include response files. - I put the correct include code in contrib/cmake/mingw/includes.rsp - Propagate the correct includes to the generated files. - - $ find . -name "includes_*.rsp" -exec cp ../contrib/cmake/mingw/includes.rsp {} \; - $ make - - On my system, these the include response file have the code: - -IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/src - -IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/include - -IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/include/exiv2 - -IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/build - -IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/xmpsdk/include - -IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/xmpsdk/src - -IC:/Qt/Qt5.6.0/Tools/mingw492_32/i686-w64-mingw32/include - -IC:/Qt/Qt5.6.0/Tools/mingw492_32/lib/gcc/i686-w64-mingw32/4.9.2/include - -IC:/MinGW/msys/1.0/local/include - - Gotcha - ------ - Even have done all of this, some of the sample applications are not correctly linked. - Samples affected are path-test, geotag, metacopy, exiv2json (possibly others). - - The exiv2dll (libexiv2-14.dll) is linked to /bin/msys-expat.dll - and foo.exe is linked to /usr/local/bin/libexpat-1.dll - - I have been able to get this fixed. I'll deal with it in v0.27. - two copies of the expat dlls. /usr/local/bin/libexpat-1.dll and /bin/msys-expat.dll - -Robin Mills -robin@clanmills.com -2017-06-06 - diff --git a/contrib/CLion/ReadMe.txt b/contrib/CLion/ReadMe.txt deleted file mode 100644 index 5db9adcf..00000000 --- a/contrib/CLion/ReadMe.txt +++ /dev/null @@ -1,14 +0,0 @@ -CLion is an awesome IDE/Editor. - -1) Copy the idea directory to /.idea -2) Open the directory in CLion - -I don't know how this works, however it enables CLion to build and debug exiv2. -Developed on Unix. Works without modification on MacOS-X. -Probably works with Cygwin and MinGW. - -Thanks very much to Ben for providing this. - -Robin Mills -robin@clanmills -2016-08-26 diff --git a/contrib/CLion/idea/encodings.xml b/contrib/CLion/idea/encodings.xml deleted file mode 100644 index 97626ba4..00000000 --- a/contrib/CLion/idea/encodings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/contrib/CLion/idea/exiv2.iml b/contrib/CLion/idea/exiv2.iml deleted file mode 100644 index c60f3fb3..00000000 --- a/contrib/CLion/idea/exiv2.iml +++ /dev/null @@ -1,590 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/contrib/CLion/idea/misc.xml b/contrib/CLion/idea/misc.xml deleted file mode 100644 index 23b78a89..00000000 --- a/contrib/CLion/idea/misc.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/contrib/CLion/idea/modules.xml b/contrib/CLion/idea/modules.xml deleted file mode 100644 index fbf173b8..00000000 --- a/contrib/CLion/idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/contrib/CLion/idea/vcs.xml b/contrib/CLion/idea/vcs.xml deleted file mode 100644 index 78e665fd..00000000 --- a/contrib/CLion/idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/contrib/CLion/idea/workspace.xml b/contrib/CLion/idea/workspace.xml deleted file mode 100644 index c5cb7455..00000000 --- a/contrib/CLion/idea/workspace.xml +++ /dev/null @@ -1,599 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - true - DEFINITION_ORDER - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $USER_HOME$/.subversion - - - - - - - - - 1472042307352 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - file://$PROJECT_DIR$/src/exiv2.cpp - 139 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/contrib/buildForMac b/contrib/buildForMac deleted file mode 100755 index 5e6aa794..00000000 --- a/contrib/buildForMac +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/bash - -## -# buildForMac -# example: contrib/buildForMac --[dis|en]able-shared -# -## - -## -# test OS level (L=9 SL==10 Lion = 11, ML=12) -LION="" -let os=$(uname -a | cut -d' ' -f 3 | cut -d'.' -f 1) -if [ $(( os >= 11 )) ]; then - LION="--with-zlib=/usr/lib" -fi - -if [ ! -d contrib ]; then - echo "you are in the wrong directory - please run $0 in the main directory (which includes contrib and src)" - exit 1 -fi -if [ ! -e configure ]; then make config ; fi -if [ -z $TARGET ]; then export TARGET="MACOSX_DEPLOYMENT_TARGET=10.5" ; fi - -# version=$(grep EXIV2_LTVERSION config/config.mk | cut "-d " -f 3 | cut -d: -f 1) -# lib=libexiv2.$version.dylib - -build() { - make clean - ./configure CFLAGS="$arch" CXXFLAGS="$arch" LDFLAGS="$arch -L${PWD}/xmpsdk/src" OBJCFLAGS="$arch" OBJCXXFLAGS="$arch" $TARGET $LION "$@" - make CFLAGS="$arch" CXXFLAGS="$arch" LDFLAGS="$arch -L${PWD}/xmpsdk/src" OBJCFLAGS="$arch" OBJCXXFLAGS="$arch" $TARGET all - # make CFLAGS="$arch" CXXFLAGS="$arch" LDFLAGS="$arch -L${PWD}/xmpsdk/src" OBJCFLAGS="$arch" OBJCXXFLAGS="$arch" $TARGET samples - if [ "$?" != "0" ]; then - echo build failed - exit - fi -} - -## -# build one architecture at a time -for arch in '-arch i386' '-arch x86_64' ; do - echo arch = $arch - a=${arch:6:100} - build "$@" - - ## - # copy .libs to .arch - for d in $(find . -name ".libs" -type d); do - D=$(dirname $d)/.$a - ditto $d $D - done -done - -## -# combine the builds into a universal -$(dirname $0)/makeUniversal - -# That's all Folks! -## diff --git a/contrib/buildRevisions/buildRevisions.sh b/contrib/buildRevisions/buildRevisions.sh deleted file mode 100755 index c650dbc2..00000000 --- a/contrib/buildRevisions/buildRevisions.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/bash - -# This is a "throw away" script for building lots of revisions -# You're expected to modify this script to perform whatever test -# is appropriate for your revision investigation - -buildRevision() -{ - r="$1" - echo ------------- $r begin -------------- - ## - # get the code - R="../../../$r" - if [ ! -e $R ]; then - svn checkout svn://dev.exiv2.org/svn/trunk --revision $r $R | wc - fi - pushd $R - ## - # build and install it - echo $PWD - make config 2>/dev/null | wc - ./configure | wc - make -j 2>&1 | wc - sudo make install | wc - make -j samples 2>&1 | wc - echo build = $(exiv2 -vV | grep -e svn -e dll -e svn) $(ls -alt $(which exiv2)) - - ## - # test the build - make teste - popd > /dev/null - echo ------------- $r end -------------- $'\n' -} - -## -# test a sequence of build revisions -# to use a list of revisions, use for "r in 3800 3820 3877; do" -if [ "$#" == "0" ]; then - for r in $(seq 3000 500 4000); do buildRevision $r ; done; -else - for r in "$@" ; do buildRevision $r ; done; -fi - -# That's all Folks! -## diff --git a/contrib/buildserver/ReadMe.txt b/contrib/buildserver/ReadMe.txt index 34fbc7b0..09e005e6 100644 --- a/contrib/buildserver/ReadMe.txt +++ b/contrib/buildserver/ReadMe.txt @@ -1,191 +1,8 @@ contrib/buildserver/ReadMe.txt ------------------------------ -737 rmills@rmillsmm:~/gnu/exiv2/trunk/contrib/buildserver $ dir -User Documentation and Scripts --rw-r--r--@ 1 rmills staff 63B 15 Dec 22:26 ReadMe.txt <---- This file --rwxr-xr-x@ 1 rmills staff 440B 15 Dec 23:07 dailyBuild.sh* <---- called by Jenkins to build and test every day --rwxr-xr-x@ 1 rmills staff 440B 15 Dec 23:07 dailyCMakeAll.sh* <---- run dailyCMake.sh on all platforms --rwxr-xr-x@ 1 rmills staff 424B 14 Dec 23:12 dailyTestAll.sh* <---- run dailyTest.sh on all platform --rwxr-xr-x@ 1 rmills staff 5.8K 14 Dec 21:55 dailyCMake.sh* <---- Builds exiv2 (mostly using cmake) for one platform --rwxr-xr-x@ 1 rmills staff 3.6K 15 Dec 05:49 dailyTest.sh* <---- Called by Jenkins to sync and build all platforms --rw-r--r--@ 1 rmills staff 655B 19 Dec 21:06 functions.so <---- library for the scripts - -Documentation and Scripts used by Jenkins --rwxr-xr-x+ 1 rmills staff 11K 15 Dec 22:17 jenkins_build.sh* <---- Primary build script (called by Jenkins) --rw-r--r--+ 1 rmills staff 6.3K 15 Dec 22:17 jenkins_build.bat <---- Windows build script (called by jenkins_build.sh) --rw-r--r--@ 1 rmills staff 4.0K 14 Dec 18:31 dailyReadMe.txt <---- Template for bundle ReadMe.txt generated by dailyCMake.sh - -Detecting if svn has updated a branch -------------------------------------- - -a=$(svn info . | grep ^Revision | cut -d: -f 2) -b=$(svn update . | grep ^At | cut '-d ' -f 3|cut -d. -f 1) -if [ $a -eq $b ]; then - echo 'no build needed svn = ' $a -else - echo 'updated from svn:' $a 'to svn:' $b -fi - -Buildserver Configuration -------------------------- - -The buildserver jobs configurations are located here: - -523 rmills@rmillsmbp:/mmHD/Users/Shared/Jenkins/Home/jobs $ dir -drwxr-xr-x 1 rmills staff 296B 16 Dec 10:22 Exiv2-trunk/ -drwxr-xr-x 1 rmills staff 296B 16 Dec 10:22 test-cmake-daily/ -drwxr-xr-x 1 rmills staff 264B 16 Dec 02:47 trunk-cmake-daily/ -drwxrwxrwx 1 rmills staff 296B 13 Dec 23:07 Exiv2-videow-refactoring/ -drwxr-xr-x 1 rmills staff 296B 12 May 2015 Exiv2-jenkins/ -drwxr-xr-x 1 rmills staff 330B 2 May 2015 Exiv2-video-write/ - -540 rmills@rmillsmbp:/mmHD/Users/Shared/Jenkins/Home/jobs/Exiv2-trunk $ dir --rw-r--r-- 1 rmills staff 8.1K 16 Dec 10:22 config.xml <---- Build magic -drwxr-xr-x 1 rmills staff 264B 29 Dec 2014 configurations/ <---- History of config/build -drwxr-xr-x 1 rmills staff 1.2K 15 Dec 22:38 builds/ <---- Logs --rw-r--r-- 1 rmills staff 78B 16 Dec 10:26 scm-polling.log <---- name says it all --rw-r--r-- 1 rmills staff 5B 15 Dec 22:26 nextBuildNumber --rw-r--r-- 1 rmills staff 46B 15 Dec 22:26 svnexternals.txt <---- don't know (nothing important) -lrwxr-xr-x 1 rmills staff 22B 15 Dec 22:26 lastStable@ -> builds/lastStableBuild -lrwxr-xr-x 1 rmills staff 26B 15 Dec 22:26 lastSuccessful@ -> builds/lastSuccessfulBuild - -I've added Exiv2-trunk/config.xml to the repos. -I'll add something to jenkins_build.sh to keep the copy in the repos up to date. - -Buildserver Scripts -------------------- - - Stable scripts (unlikely to change) - Job:Exiv2-trunk (and selected branches) - Script: - ./contrib/buildserver/jenkins_build.sh - - Trigger: when svn trunk changes - - Caution: - older branches have jenkins_build.sh and jenkins_build.bat - in the root directory - - Comment: - This script builds when code is submitted. - All platforms are automatically triggered by Jenkins and run jenkins_build.sh - (Windows runs the 64 bit cygwin SSHD which uses 64 bit bash) - Linux, MacOSX, Cygwin execute their builds directly from jenkins_build.sh - MSVC builds are executed by jenkins_build.bat which is called via cmd.exe from jenkins_build.sh - MinGW builds are executed by jenkins_build.sh calling jenkins_build.sh via MinGW{32|64}bash.exe - - Work in progress script: - Job: trunk-cmake-daily: - Trigger: 2am every day - Script: - cd ~/gnu/exiv2/buildserver - contrib/buildserver/dailyBuild.sh - - Comment: - This script builds once a day and ultimately publishes the build. - - For the moment, it's intended to run on trunk. However the design - can be "tweaked" to publish to builds/$JOBNAME/Daily etc - - I don't want to run this on code submission as the build takes about 1.5 hours - to build all 12 Visual Studio builds (2005/2008/2010/2012/2013/2015) 32/64 - - MinGW/32 is built using the compiler supplied by Qt 5.6 (GCC 4.9.2) - MinGW/32 is build with autotools because I have not been able to get cmake to work on MinGW. - - There are three quite different parts of the script: - 1) Use CMake to build on each platform using dailyCMake.sh - 2) Validate each platform using dailyTest.sh - 3) Categorize the build (create links for Platform/SVN/Date/Latest) - - At the moment, the "pruning" of the builds is performed by dailyCMake.sh - -Theme.css ---------- - -body { - margin-top : 0px; /* the height of your site banner */ - background : lightskyblue; - color : black; -} - - -#header::after { - content : ""; - background : url("Exiv2Logo50Background.png");; - opacity : 0.05; - top : 0; - left : 0; - bottom : 0; - right : 0; - position : absolute; - z-index : -1; -} - -Notes concerning MinGW ----------------------- - -######################################### -## #!/bin/bash -## # mingw32.sh -## # invoke 32bit MinGW bash -## # -## export "PATH=c:\\MinGW\\bin;c:\\MinGW\\msys\\1.0\\bin;C:\\MinGW\\msys\\1.0\\local\\bin;" -## /cygdrive/c/MinGW/msys/1.0/bin/bash.exe $* -## -## # That's all Folks -## ## -######################################### - -######################################### -## : mingw32.bat -## : invoke MinGW bash -## : -## setlocal -## set "PATH=c:\MinGW\bin;c:\MinGW\msys\1.0\bin;C:\MinGW\msys\1.0\local\bin;" -## set "PS1=\! ${PWD}> " -## c:\MinGW\msys\1.0\bin\bash.exe %*% -## -## : That's all Folks -######################################### - -######################################### -## see http://clanmills.com/exiv2/mingw.shtml about 64bit build -## Install a fresh (32 bit) mingw/msys into c:\MinGW64 -## install the 64 bit compiler from: http://tdm-gcc.tdragon.net -## I used the "on-demand" installer and "Create" put the tools in c:\TDM-GCC-64. The main change is to add the 64 bit compilers to the path BEFORE the 32 bit compilers. -## set PATH=c:\TDM-GCC-64\bin;c:\MinGW\bin;c:\MinGW\msys\1.0\bin;C:\MinGW\msys\1.0\local\bin; -## -## keep MinGW64 for 64 bit builds and /usr/lib has 64bit libraries -## keep MinGW for 32 bit builds and /usr/lib has 32bit libraries -## -## install msys-coreutils, binutils, autotools -## -## For pkg-config see http://clanmills.com/exiv2/mingw.shtml -######################################### - -######################################### -## zlib and expat -## mkdir -p ~/gnu/zlib ~/gnu/expat -## get the tar.gz files and tar zxf them -## build (see http://clanmills.com/exiv2/mingw.shtml about zlib) -## DO THIS IN BOTH c:\MinGW and c:\MinGW64 -######################################### - -######################################### -## The keith bug -## rm -rf /c/MinGW/lib/libintl.la -######################################### - -######################################### -## to build dlfcn-win32 -## git clone https://github.com/dlfcn-win32/dlfcn-win32 -## cd dlfcn-win32 ; ./configure --prefix=/usr --enable-shared ; make ; make install -######################################### - - +To be written. Robin Mills robin@clanmills.com -2016-09-24 +2018-10-21 diff --git a/contrib/buildserver/buildserver.library b/contrib/buildserver/buildserver.library deleted file mode 100644 index cd994a16..00000000 --- a/contrib/buildserver/buildserver.library +++ /dev/null @@ -1,55 +0,0 @@ -## -# buildserver.library - source this from scripts -## - -result=0 -if [ -z "$JENKINS" ]; then export JENKINS=http://exiv2.dyndns.org:8080; fi -if [ -z "$DAILY" ]; then export DAILY=userContent/builds/Daily ; fi - -## -# osName - print 'macosx' or 'cygwin' or 'mingw' or 'linux' -osName () { - if [ "$(uname)" == Darwin ]; then - echo macosx - elif [ "$(uname -o)" == Cygwin ]; then - echo cygwin - elif [ "$(uname -o)" == Msys ]; then - echo mingw - else - echo linux - fi -} - -## -# which PLATFORM -# PLATFORM must be defined as msvc or ming when called from ssh -if [ "$PLATFORM" == "" ]; then - if [ "$(uname)" == Darwin ]; then - export PLATFORM=macosx - elif [ "$(uname -o)" == Cygwin ]; then - export PLATFORM=cygwin - elif [ "$(uname -o)" == Msys ]; then - export PLATFORM=mingw - else - export PLATFORM=linux - fi - if [ "$PLATFORM" == "cygwin" ]; then - # tweak path to ensure the correct version of perl and expr for autotools - export "PATH=/bin:$PATH" - fi -fi - -## -# thePath - echo full path to file -thepath () { - if [ -d $1 ]; then - ( cd $1; - pwd ); - else - ( cd $(dirname $1); - echo $(pwd)/$(basename $1) ); - fi -} - -# That's all Folks! -## diff --git a/contrib/buildserver/dailyBuild.sh b/contrib/buildserver/dailyBuild.sh deleted file mode 100755 index 4a70b7ad..00000000 --- a/contrib/buildserver/dailyBuild.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash - -## -# This script is called by Jenkins to perform the dailyBuild. -# -# The script operates in 3 stages: -# 1 executes dailyCMake.sh to perform the build and test on the build nodes -# 2 executes dailyTest.sh to test that the build bundles are good -# 3 rebuilds all links in userContent/builds/{Latest Date Platform SVN} - -ssh rmills@rmillsmm 'cd ~/gnu/exiv2/buildserver ; rm -rf exiv2 ; git clone http://github.com/exiv2/exiv2.git ; cd exiv2/ ; contrib/buildserver/dailyCMake.sh' -ssh rmills@rmillsmm-kubuntu 'cd ~/gnu/exiv2/buildserver ; rm -rf exiv2 ; git clone http://github.com/exiv2/exiv2.git ; cd exiv2/ ; contrib/buildserver/dailyCMake.sh' -ssh rmills@rmillsmm-w7 'cd ~/gnu/exiv2/buildserver ; rm -rf exiv2 ; git clone http://github.com/exiv2/exiv2.git ; cd exiv2/ ; contrib/buildserver/dailyCMake.sh' -ssh rmills@rmillsmm-w7 'cd ~/gnu/exiv2/buildserver ; rm -rf exiv2 ; git clone http://github.com/exiv2/exiv2.git ; cd exiv2/ ; env PLATFORM=msvc contrib/buildserver/dailyCMake.sh' -# ssh rmills@rmillsmm-w7 'cd ~/gnu/exiv2/buildserver ; rm -rf exiv2 ; git clone http://github.com/Exiv2/exiv2.git ; cd exiv2/ ; env PLATFORM=mingw win32=true contrib/buildserver/dailyCMake.sh' - -## -# test the delivery -date=$(date '+%Y-%m-%d+%H-%M-%S') -svn=0000 # $(ssh rmills@rmillsmm 'cd ~/gnu/exiv2/buildserver ; /usr/local/bin/svn info . | grep "^Last Changed Rev" | cut -f 2 "-d:" | tr -d " "') -builds="/mmHD/Users/Shared/Jenkins/Home/userContent/builds" -output="$builds/Daily/test-svn-${svn}-date-${date}.txt" -echo -------------------------------------- -echo test log = $output -echo -------------------------------------- - -ssh rmills@rmillsmm 'cd ~/gnu/exiv2/buildserver/exiv2 ; contrib/buildserver/dailyTest.sh' | tr -d $'\r' | tee -a $output -ssh rmills@rmillsmm-kubuntu 'cd ~/gnu/exiv2/buildserver/exiv2 ; contrib/buildserver/dailyTest.sh' | tr -d $'\r' | tee -a $output -ssh rmills@rmillsmm-w7 'cd ~/gnu/exiv2/buildserver/exiv2 ; contrib/buildserver/dailyTest.sh' | tr -d $'\r' | tee -a $output -ssh rmills@rmillsmm-w7 'cd ~/gnu/exiv2/buildserver/exiv2 ; env PLATFORM=msvc contrib/buildserver/dailyTest.sh' | tr -d $'\r' | tee -a $output -# ssh rmills@rmillsmm-w7 'cd ~/gnu/exiv2/buildserver/exiv2 ; env PLATFORM=mingw win32=true contrib/buildserver/dailyTest.sh' | tr -d $'\r' | tee -a $output - -## -# categorize the builds -ssh rmills@rmillsmm "cd ~/gnu/exiv2/buildserver/exiv2 ; PATH="$PATH:/usr/local/bin"; contrib/buildserver/categorize.py $builds" - -# That's all Folks! -## diff --git a/contrib/buildserver/dailyCMake.sh b/contrib/buildserver/dailyCMake.sh deleted file mode 100755 index e65d716b..00000000 --- a/contrib/buildserver/dailyCMake.sh +++ /dev/null @@ -1,264 +0,0 @@ -#!/bin/bash - -## -# cmake_daily.sh -## -PATH="$PATH:/usr/local/bin/" - -source $(find . -name buildserver.library) - -## -# determine location of the build and source directories -if [ "$PLATFORM" == "msvc" ]; then - exiv2=$(cygpath -aw .) - build=$(cygpath -aw ./build) - dist=$(cygpath -au ./build/dist/) - msvc=$(cygpath -au ./contrib/cmake/msvc) -else - exiv2=$PWD - build=$PWD/build - dist=$PWD/build/dist/$PLATFORM - - if [ -e $exiv2/CMakeCache.txt ]; then rm -rf $exiv2/CMakeCache.txt ; fi -fi - -## -# create a clean directory for an out-of-source build -rm -rf dist -mkdir -p $dist -mkdir -p $build/dist/logs - -echo "---- dist = $dist ------" -echo "---- build = $build ------" - -## -# test the build -# - don't test msvc because it was tested by cmakeBuild -# - don't test mingw because it's build with autotools and tested in line -testBuild() -{ - if [ -e $dist/bin/exiv2 ]; then - pushd ../test > /dev/null - # EXIV2_BINDIR is used by the test suite to locate executables - export EXIV2_BINDIR=$dist/bin - # set LD_LIBRARY_PATH (and DYLD_LIBRARY_PATH for macosx) - # to be sure we run the tests with the newly built library - export DYLD_LIBRARY_PATH=$dist/lib - export LD_LIBRARY_PATH=$dist/lib - ( - for test in addmoddel.sh \ - bugfixes-test.sh \ - exifdata-test.sh \ - exiv2-test.sh \ - imagetest.sh \ - iotest.sh \ - iptctest.sh \ - modify-test.sh \ - path-test.sh \ - preview-test.sh \ - stringto-test.sh \ - tiff-test.sh \ - write-test.sh \ - write2-test.sh \ - xmpparser-test.sh \ - conversions.sh - do - echo '++' $test '++' ; ./$test - done - ) | tr -d $'\r' | tee "$build/dist/logs/test.log" - - popd > /dev/null - - $EXIV2_BINDIR/exiv2 -vV - ls -alt $EXIV2_BINDIR - $EXIV2_BINDIR/exiv2 -vV -g date -g time -g version - ls -alt $EXIV2_BINDIR/exiv2$exe - else - echo '' - echo '**** no build created ****' - echo '' - result=1 - fi -} - -## -# perform the build -( - case $PLATFORM in - msvc) - ## - # get windows cmd.exe to perform the build - # use a subshell to restore the path - ( - PATH="$msvc:/cygdrive/c/Windows/System32:/cygdrive/c/Program Files/csvn/bin:/cygdrive/c/Program Files (x86)/WANdisco/Subversion/csvn/bin:/cygdrive/c/Program Files/7-zip:/cygdrive/c/Program Files/CMake/bin:/cygdrive/c/Program Files/cmake/bin:/cygdrive/c/Program Files (x86)/cmake/bin" - # cmd.exe /c "cd $build && vcvars $vs $arch && cmakeBuild --samples --build --exiv2 $exiv2 $*" - for ARCH in 64 32; do - for VS in 2005 2017; do - echo -=-=-=-=-=-=-=-=-=-=-=- - echo cmd.exe /c "cd $build && vcvars $VS $ARCH && cmakeBuild --build --samples --exiv2 $exiv2 $*" - echo -=-=-=-=-=-=-=-=-=-=-=- - cmd.exe /c "cd $build && vcvars $VS $ARCH && cmakeBuild --build --samples --exiv2 $exiv2 $*" - done - done - result=$? - ) - - mv $msvc/dist . # bring the new build here - cp $msvc/vcvars.bat $build/dist # required by test_daily.sh - ;; - - mingw) - if [ ! -z "$RECURSIVE" ]; then - # we are already in MinGW/bash, so build - - ## - # dont use cmake as I can't get it to work - # cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=$dist -DEXIV2_ENABLE_NLS=OFF -DCMAKE_C_COMPILER=$(which gcc) -DCMAKE_CXX_COMPILER=$(which g++) $exiv2 - ## - - ## - # build with autotools - if [ -z "$dist" ]; then dist=dist ; fi - make clean - make config - ./configure --prefix=/usr/local - make - - # install and make the samples - make install - export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig - make samples - - # copy the executable binaries (not libtool script wrappers) - mkdir -p "$dist/bin" - cp bin/.libs/*.exe src/.libs/*.exe "$dist/bin" - - # copy installed stuff from /usr/local/bin to dist/bin (and lib and include) - for d in bin lib include; do - mkdir -p "$dist/$d" - cp -R /usr/local/$d/*expat* /usr/local/$d/*exiv* /usr/local/$d/z* /usr/local/$d/libz* /usr/local/$d/libdl* "$dist/$d" - done - - # fix up minor stuff - mkdir -p "$dist/lib/pkgconfig" # pkgconfig magic - cp -R /usr/local/lib/pkgconfig/* "$dist/lib/pkgconfig" - mkdir -p "$dist/share/man/man1/" # man pages - cp -R /usr/local/share/man/man1/*exiv2* "$dist/share/man/man1/" - - # run the test suite - make tests | tee "$build/dist/logs/test.log" - else - # recursively invoke MinGW/bash with appropriate tool chain - export RECURSIVE=1 - - export TMP=/tmp - export TEMP=$TMP - if [ "$x64" == true ]; then - export CFLAGS=-m64 - export CXXFLAGS=-m64 - export LDFLAGS=-m64 - /c/MinGW64/msys/1.0/bin/bash.exe -c "export PATH=/c/TDM-GCC-64/bin:/c/MinGW64/bin:/c/MinGW64/msys/1.0/bin:/c/MinGW64/msys/1.0/local/bin ; $0" - result=$? - fi - if [ "$win32" == true ]; then - export CFLAGS=-m32 - export CXXFLAGS=-m32 - export LDFLAGS=-m32 - /c/MinGW/msys/1.0/bin/bash.exe -c "export PATH=/c/Qt/Qt5.6.0/5.6/mingw49_32/bin:/c/Qt/Qt5.6.0/Tools/mingw492_32/bin:/c/MinGW/bin:/usr/bin:/usr/local/bin:. ; $0" - result=$? - fi - fi - ;; - - *) pushd $build > /dev/null # macosx and linux for sure - ( - # build 64 bit library - export CFLAGS=-m64 - export CXXFLAGS=-m64 - export LDFLAGS=-m64 - # Always use /usr/local/bin/cmake - # I can guarantee it to be at least 3.4.1 - # because I built it from source and installed it on the buildserver - /usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=$dist -DEXIV2_ENABLE_NLS=OFF $exiv2 - make - result=$? - /usr/local/bin/cmake --build . --target install - testBuild - ) - popd > /dev/null - ;; - esac -) | tr -d $'\r' | tee "$build/dist/logs/build.log" - -# exit if are in mingw and leave cygwin to package the build -if [ "$(osName)" == "mingw" ]; then echo "goodbye from mingw" ; exit 0; fi - -## -# store the build for users to collect -if [ "$result" == "0" ]; then - case $PLATFORM in - linux) mmHD="/media/psf/Home/Jenkins" ;; - msvc|cygwin|mingw) mmHD="//psf/Home/Jenkins" ;; - *) mmHD="/Users/rmills/Jenkins" ;; - esac - - jpubl="$mmHD/builds" - echo jpubl = $jpubl - - daily="$jpubl/Daily" - weely="$jpubl/Weekly" - monly="$jpubl/Monthly" - if [ ! -e $jpubl ]; then mkdir -p $jpubl ; fi - if [ ! -e $daily ]; then mkdir -p $daily ; fi - if [ ! -e $weely ]; then mkdir -p $weely ; fi - if [ ! -e $monly ]; then mkdir -p $monly ; fi - - if [ -e $jpubl ]; then - svn=0000 - # /usr/local/bin/svn info . 2>/dev/null >/dev/null - # if [ "$?" == "0" ]; then - # svn=$(/usr/local/bin/svn info . | grep '^Last Changed Rev' | cut -f 2 -d':' | tr -d ' ') - # fi - - dow=$(date '+%w') # 0..6 day of the week - dom=$(date '+%d') # 1..31 day of the month - mon=$(date '+%m') # 1..12 month - dat=$(date '+%Y-%m-%d+%H-%M-%S') - zip="${PLATFORM}-svn-${svn}-date-${dat}.tar.gz" - - # add documentation and samples to dist - cat contrib/buildserver/dailyReadMe.txt | sed -E -e "s/__BUILD__/$zip/" > "$build/dist/ReadMe.txt" - mkdir -p "$build/dist/samples/" - cp samples/*.cpp samples/*.hpp "$build/dist/samples/" - mkdir -p "$build/dist/contrib/Qt" - cp contrib/Qt/* "$build/dist/contrib/Qt" - - # create the bundle - pushd "$build" > /dev/null - rm -rf *.tar.gz - COPYFILE_DISABLE=1 tar czf "$zip" dist/ - ls -alt - mv $zip .. - popd > /dev/null - - # clean userContent/build directories - # daily > 60 days; weekly > 1 year; monthly > 5 years - if [ -e $daily ]; then find $daily -type f -ctime +60 -exec rm -rf {} \; ; fi - if [ -e $weely ]; then find $weely -type f -ctime +365 -exec rm -rf {} \; ; fi - if [ -e $monly ]; then find $monly -type f -ctime +$((366 * 5)) -exec rm -rf {} \; ; fi - - # store the build - cp $zip $daily - if [ "$dow" == "1" ]; then cp $zip $weely; fi # Monday - if [ "$dom" == "01" ]; then cp $zip $monly; fi # First day of the month - - echo '***' build = $zip '***' - else - echo '***' jenkins builds directory does not exist ${jpubl} '***' - result=2 - fi -fi - -exit $result -# That's all Folks! -## diff --git a/contrib/buildserver/dailyCMakeAll.sh b/contrib/buildserver/dailyCMakeAll.sh deleted file mode 100755 index e9360606..00000000 --- a/contrib/buildserver/dailyCMakeAll.sh +++ /dev/null @@ -1,5 +0,0 @@ -ssh rmills@rmillsmm 'cd ~/gnu/exiv2/buildserver;contrib/buildserver/dailyCMake.sh' -ssh rmills@rmillsmm-kubuntu 'cd ~/gnu/exiv2/buildserver;contrib/buildserver/dailyCMake.sh' -ssh rmills@rmillsmm-w7 'cd ~/gnu/exiv2/buildserver;contrib/buildserver/dailyCMake.sh' -ssh rmills@rmillsmm-w7 'export PLATFORM=msvc ;cd ~/gnu/exiv2/buildserver;contrib/buildserver/dailyCMake.sh' -ssh rmills@rmillsmm-w7 'export PLATFORM=mingw; export win32=true; cd ~/gnu/exiv2/buildserver;contrib/buildserver/dailyCMake.sh' diff --git a/contrib/buildserver/dailyReadMe.txt b/contrib/buildserver/dailyReadMe.txt deleted file mode 100644 index 9894441b..00000000 --- a/contrib/buildserver/dailyReadMe.txt +++ /dev/null @@ -1,156 +0,0 @@ -ReadMe.txt ----------- - -Build: __BUILD__ - -platform = linux ----------------- - -Structure of the bundle: - -dist/linux/bin/exiv2 exiv2 and sample applications -dist/linux/lib/libexiv2.so.26.0.0 shared library -dist/linux/include/exiv2/ include files -dist/linux/share/ man pages -dist/samples/ sample code -dist/logs/ log files -dist/contrib/Qt Qt code and notes - -To run exiv2: -$ cd dist -$ export LD_LIBRARY_PATH="$PWD/linux/lib:$LD_LIBRARY_PATH" -$ linux/bin/exiv2 - -To compile and link your own code: -$ cd dist -$ sudo cp -R linux/* /usr/local/ -$ g++ -std=c++98 samples/exifprint.cpp -L/usr/local/lib -lexiv2 -o exifprint -$ ./exifprint --version -exiv2=0.26.0 -... -xmlns=xmpidq:http://ns.adobe.com/xmp/Identifier/qual/1.0/ -$ - -platform = macosx ------------------ - -Structure of the bundle: - -dist/macosx/bin/exiv2 exiv2 and sample applications -dist/macosx/lib/libexiv2.26.0.0.dylib shared library -dist/macosx/include/exiv2/ include files -dist/macosx/share/ man pages -dist/samples/ sample code -dist/logs/ log files -dist/contrib/Qt Qt code and notes -dist/samples/exifprint.cpp sample code - -To run exiv2: -$ cd dist -$ export DYLD_LIBRARY_PATH="$PWD/macosx/lib:$DYLD_LIBRARY_PATH" -$ macosx/bin/exiv2 - -To compile and link your own code: -$ cd dist -$ sudo cp -R macosx/* /usr/local -$ g++ -std=c++98 samples/exifprint.cpp -L/usr/local/lib -lexiv2 -o exifprint -$ ./exifprint --version -exiv2=0.26.0 -... -xmlns=xmpidq:http://ns.adobe.com/xmp/Identifier/qual/1.0/ -$ - -platform = cygwin ------------------ - -dist/cygwin/bin/exiv2.exe exiv2.exe and sample applications - .../bin/cygexiv2-26.dll shared library - .../lib/exiv2.dll.a link library - .../include/exiv2/ include files - .../share/ man pages -dist/samples/ sample code -dist/logs/ log files -dist/contrib/Qt Qt code and notes - -To run exiv2.exe: -$ cd dist -$ PATH="$PWD/cygwin/bin:$PATH" -$ cygwin/bin/exiv2 - -To compile and link your own code: - Caution: This is a 64 bit build - An error such as "incorrect architecture" is a symptom of using cygwin32 -$ cd dist -$ cp -R cygwin/* /usr/local -$ g++ -std=c++98 samples/exifprint.cpp -L/usr/local/lib -lexiv2 -o exifprint -$ ./exifprint --version -exiv2=0.26.0 -... -xmlns=xmpidq:http://ns.adobe.com/xmp/Identifier/qual/1.0/ -$ - -platform = mingw ------------------ - -This a 32bit build of Exiv2 aimed at Qt/MinGW users. - -dist/mingw/bin/exiv2.exe exiv2.exe and sample applications - .../bin/libexiv2-26.dll (+zlib+expat) shared libraries - .../lib/exiv2.dll.a (+zlib+expat) link libraries - .../include/exiv2/ (+zlib+expat) include files - .../share/ man pages -dist/samples/ sample code -dist/logs/ log files -dist/contrib/Qt Qt code and notes - -To run exiv2.exe: -$ cd dist -$ PATH="$PWD/mingw/bin:$PATH" -$ mingw/bin/exiv2 - -To compile and link your own code: - Caution: This is a 32 bit build intended for use with MinGW32/Qt 5.6 - An error such as "incorrect architecture" is a symptom of using mingw64 -$ cd dist -$ cp -R mingw/* /usr/local -$ g++ -std=c++98 samples/exifprint.cpp -L/usr/local/lib -lexiv2.dll -o exifprint -$ ./exifprint --version -exiv2=0.26.0 -... -xmlns=xmpidq:http://ns.adobe.com/xmp/Identifier/qual/1.0/ -$ - -platform = msvc ---------------- - -dist\2013\x64\dll\Release\bin\exiv2.exe exiv2.exe and sample applications - ...\bin\exiv2.dll dlls for exiv2/expat/zlib - ...\lib\exiv2.lib link library - ...\include\exiv2\ include files - ...\share\ man pages -dist\samples\ sample code -dist\logs\ log files -dist\contrib\Qt Qt code and notes -dist\vcvars.bat script used by test_daily.sh - -To run exiv2.exe: -c:\temp> cd dist -c:\temp\dist> set "PATH=%CD%\2013\x64\dll\Release\bin;%PATH%" -c:\temp\dist> exiv2 - -To compile and link your own code: - Caution: You must use the same version of Visual Studio as the build - You will need to use the "Visual Studio Command Prompt" - or initialise the DOS environment by calling vcvarsall.bat - -c:\temp> cd dist -c:\temp\dist> cl /EHsc -I2013\x64\dll\Release\include /MD samples\exifprint.cpp /link 2013\x64\dll\Release\lib\exiv2.lib -c:\temp\dist> exifprint --version -exiv2=0.26.0 -... -xmlns=xmpidq:http://ns.adobe.com/xmp/Identifier/qual/1.0/ -c:\temp\dist> - -Robin Mills -robin@clanmills.com -2017-04-26 diff --git a/contrib/buildserver/dailyTest.sh b/contrib/buildserver/dailyTest.sh deleted file mode 100755 index 8d03bca5..00000000 --- a/contrib/buildserver/dailyTest.sh +++ /dev/null @@ -1,186 +0,0 @@ -#!/bin/bash - -source $(find . -name buildserver.library 2>/dev/null) - -echo ------------------------------- -echo PLATFORM = $PLATFORM PWD = $PWD -if [ "$(osName)" == "mingw" ]; then - echo "Windows directory (mingw) = " $(pwd -W) -fi -if [ "$(osName)" == "cygwin" ]; then - echo "Windows directory (cygwin) = " $(cygpath -aw .) -fi -echo ------------------------------- - -## -# figure out today's build -# http://exiv2.dyndns.org:8080/userContent/builds/Daily -date=$(date '+%Y-%m-%d') -count=4 -curl='/usr/local/bin/curl --silent --connect-timeout 30 --max-time 40' -while [ "$count" != "0" ]; do - if [ "$count" != "0" ]; then echo "*** count = $count ***" ; fi - build=$($curl "$JENKINS/$DAILY/" \ - |xmllint --html --format - 2>/dev/null | grep $PLATFORM \ - |grep $date | grep -v -e view | cut -d'"' -f 2 | tail -1 ) - if [ "$build" != "" ]; then - count=0; - fi - if [ "$count" != "0" ]; then - count=$(expr $count - 1) - fi - if [ "$count" == "1" ]; then - echo -------- - echo $curl "$JENKINS/$DAILY/" | xmllint --html --format - $curl "$JENKINS/$DAILY/" | xmllint --html --format - echo -------- - fi -done - -echo date = $date -echo url = "$JENKINS/$DAILY/" -echo build = $build - -if [ -z "$RECURSIVE" ]; then - ## - # collect build from server - if [ -e /tmp/jenkins ]; then - rm -rf /tmp/jenkins - fi - - mkdir /tmp/jenkins - pushd /tmp/jenkins 2>/dev/null - echo $curl -O "$JENKINS/$DAILY/$build" - $curl -O "$JENKINS/$DAILY/$build" - ls -alt $build - ## - # expand the bundle - if [ -e dist ]; then rm -rf dist ;fi - tar xzf $build - if [ ! -e dist ]; then echo '*** no dist directory ***' ; exit 0; fi - popd 2>/dev/null -fi -if [ ! -e /tmp/jenkins/dist ]; then echo '*** $build has not been opened in /tmp/jenkins/dist ***' ; exit 0; fi - -grep_args="-e libexiv2 -e ^date -e ^bits -e ^version -e ^time -e ^platform" -case $PLATFORM in - macosx) - # test the delivered exiv2 - cd /tmp/jenkins/dist - export DYLD_LIBRARY_PATH="$PWD/$PLATFORM/lib:$DYLD_LIBRARY_PATH" - $PLATFORM/bin/exiv2 -vV | grep $grep_args - - # compile, link and test the sample code - echo '' - g++ -I$PLATFORM/include -L$PLATFORM/lib samples/exifprint.cpp -lexiv2 -o exifprint - ls -alt exifprint - echo '' - - ./exifprint --version | grep $grep_args - ;; - - linux) - # test the delivered exiv2 - cd /tmp/jenkins/dist - export LD_LIBRARY_PATH="$PWD/$PLATFORM/lib:$LD_LIBRARY_PATH" - $PLATFORM/bin/exiv2 -vV | grep $grep_args - - # compile, link and test the sample code - echo '' - g++ -I$PLATFORM/include -L$PLATFORM/lib samples/exifprint.cpp -lexiv2 -o exifprint - ls -alt exifprint - echo '' - - ./exifprint --version | grep $grep_args - ;; - - cygwin) - # test the delivered exiv2 - cd /tmp/jenkins/dist - PATH="$PWD/$PLATFORM/bin:$PATH" - $PLATFORM/bin/exiv2 -vV | grep $grep_args - - # compile, link and test the sample code - echo '' - g++ -I$PLATFORM/include -L$PLATFORM/lib samples/exifprint.cpp -lexiv2 -o exifprint - ls -alt exifprint.exe - echo '' - - ./exifprint --version | grep $grep_args - ;; - - msvc) - cd /tmp/jenkins/dist - for vs in 2005 2008 2010 2012 2013 2015 2017; do - for arch in x64 Win32; do - if [ -e "$PWD/$vs/$arch/dll/Release/bin/exiv2.exe" ] ; then ( - # test the delivered exiv2 - PATH="$PWD/$vs/$arch/dll/Release/bin:$PATH" - exiv2 -vV | grep $grep_args - - # compile, link and test the sample code - ( - export PATH="/cygdrive/c/Windows/System32:$PATH" - echo '' - a='32' - if [ $arch == x64 ]; then a=64 ; fi - echo cmd /c "vcvars.bat $vs $a && cd && cl /EHsc -I$vs\\$arch\\dll\Release\include /MD samples\exifprint.cpp /link $vs\\$arch\dll\\Release\lib\exiv2.lib" - cmd /c "vcvars.bat $vs $a && cd && cl /EHsc -I$vs\\$arch\\dll\Release\include /MD samples\exifprint.cpp /link $vs\\$arch\dll\\Release\lib\exiv2.lib" - ls -alt exifprint.exe - echo '' - ) - ./exifprint.exe --version | grep $grep_args - ) fi - done - done - ;; - - mingwDeprecated) - if [ ! -z "$RECURSIVE" ]; then - # test the delivered exiv2 - CD=$PWD # build exifprint from the dist into the current directory - cd /tmp/jenkins/dist - PATH="$PWD/$PLATFORM/bin:$PATH" - echo '' - echo "ls -alt $PWD/$PLATFORM/bin/libexiv2-14.dll" - ls -alt $PWD/$PLATFORM/bin/libexiv2-14.dll - echo '' - echo "$PWD/$PLATFORM/bin/exiv2.exe -vV | grep $grep_args" - $PWD/$PLATFORM/bin/exiv2.exe -vV | grep $grep_args - - # compile, link and test the sample code - echo '' - echo g++ -I$PLATFORM/include -L$PLATFORM/lib samples/exifprint.cpp -lexiv2 -o $CD/exifprint - g++ -I$PLATFORM/include -L$PLATFORM/lib samples/exifprint.cpp -lexiv2 -o $CD/exifprint - echo "ls -alt $CD/exifprint.exe" - ls -alt $CD/exifprint.exe - echo '' - echo "$CD/exifprint.exe --version | grep $grep_args" - $CD/exifprint.exe --version | grep $grep_args - else - # recursively invoke MinGW/bash with appropriate tool chain - export RECURSIVE=1 - - export TMP=/tmp - export TEMP=$TMP - if [ "$x64" == true ]; then - export CFLAGS=-m64 - export CXXFLAGS=-m64 - export LDFLAGS=-m64 - /c/MinGW64/msys/1.0/bin/bash.exe -c "export PATH=/c/TDM-GCC-64/bin:/c/MinGW64/bin:/c/MinGW64/msys/1.0/bin:/c/MinGW64/msys/1.0/local/bin ; $0" - fi - if [ "$win32" == true ]; then - export CFLAGS=-m32 - export CXXFLAGS=-m32 - export LDFLAGS=-m32 - /c/MinGW/msys/1.0/bin/bash.exe -c "export PATH=/c/Qt/Qt5.6.0/5.6/mingw49_32/bin:/c/Qt/Qt5.6.0/Tools/mingw492_32/bin:/c/MinGW/bin:/usr/bin:/usr/local/bin:/c/cygwin64/bin:/c/Users/rmills/com:. ; $0" - fi - fi - ;; - - *) echo unknown platform $platform - ;; -esac - -# That's all Folks! -## diff --git a/contrib/buildserver/dailyTestAll.sh b/contrib/buildserver/dailyTestAll.sh deleted file mode 100755 index 6fe7d425..00000000 --- a/contrib/buildserver/dailyTestAll.sh +++ /dev/null @@ -1,5 +0,0 @@ -ssh rmills@rmillsmm '~/gnu/exiv2/buildserver/contrib/buildserver/dailyTest.sh' -ssh rmills@rmillsmm-kubuntu '~/gnu/exiv2/buildserver/contrib/buildserver/dailyTest.sh' -ssh rmills@rmillsmm-w7 '~/gnu/exiv2/buildserver/contrib/buildserver/dailyTest.sh' -ssh rmills@rmillsmm-w7 'export PLATFORM=msvc ;~/gnu/exiv2/buildserver/contrib/buildserver/dailyTest.sh' -# ssh rmills@rmillsmm-w7 'export PLATFORM=mingw; export win32=true;~/contrib/buildserver/dailyCMake.sh' diff --git a/contrib/buildserver/jenkins_build.bat b/contrib/buildserver/jenkins_build.bat deleted file mode 100644 index 95e912b7..00000000 --- a/contrib/buildserver/jenkins_build.bat +++ /dev/null @@ -1,199 +0,0 @@ -@echo off - -rem -- -rem -rem build exiv2 library from Jenkins (or the command-line) -rem -rem -- - -rem -- -rem set up defaults for undefined variables used by this script -if NOT DEFINED ACTION set ACTION=/build -if NOT DEFINED COMPILER set COMPILER=G++ -if NOT DEFINED BuildEnv set BuildEnv=native -if NOT DEFINED Builder set Builder=2005 - -if NOT DEFINED release set release=false -if NOT DEFINED debug set debug=false -if NOT DEFINED static set static=false -if NOT DEFINED dll set dll=false -if NOT DEFINED x64 set x64=false -if NOT DEFINED Win32 set Win32=false - -if NOT DEFINED tests set tests=false -if NOT DEFINED teste set teste=false -if NOT DEFINED testv set testv=false -if NOT DEFINED testr set testr=false - -if NOT DEFINED expat set expat=true -if NOT DEFINED zlib set zlib=true -if NOT DEFINED curl set curl=false -if NOT DEFINED libssh set libssh=false -if NOT DEFINED openssl set openssl=false -if %openssl%==true set curl=true - -if %ACTION%==/clean set tests=false -if %ACTION%==/upgrade set tests=false - -rem -- -rem init the build environment for the builder -rem currently, only 2003 (32 bit) and 2005 (32 and 64 bit) are supported -rem adding additional MSVC compilers (2008, 2010, 2012, etc) should be simple -rem and has not been done for expediency -rem should only require: -rem 1 Invoke the appropriate vsvars32.bat script -rem 2 Run devenv/upgrade -rem 3 set Builder=2005 -rem and all should be good -set BGOOD=0 -if %Builder%==2003 ( - set x64=false - set Win32=true - set curl=false - set openssl=false - set libssh=false - call "C:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\Tools\vsvars32.bat" - pushd msvc2003 - set BGOOD=1 -) - -if %Builder%==2005 ( - call "C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\Tools\vsvars32.bat" - pushd msvc - set BGOOD=1 -) - -rem -- -rem check we have a good builder -rem we could test label and msvc -rem if NOT %label%==MSVC exit/b 1 -rem if NOT %msvc%==true exit/b 1 -if %BGOOD%==0 ( - echo "MSVC Builder %Builder% is not supported" - exit/b 1 -) - -rem -- -rem FOO is the current directory in cygwin (/cygdrive/c/users/shared/workspace/exiv2-trunk/label/msvc) -rem we need this to set the correct directory when we run the test suite from Cygwin -for /f "tokens=*" %%a in ('cygpath -au ..') do set FOO=%%a - -rem -- -rem copy external library code and other files appropriate for the build requested -copy exiv2.sln e.sln -call copylibs.bat - -set webready=false -if %curl% == true if %libssh% == true if %openssl% == true set webready=true -if %webready% == true ( - copy/y exiv2-webready.sln e.sln - copy/y ..\include\exiv2\exv_msvc-webready.h ..\include\exiv2\exv_msvc.h -) - -rem -- -rem let the user know what's going on! -echo ------- from jenkins_build.bat ------------ -set PATH=c:\perl64\bin;%PATH% -set | sort -perl --version - -rem -- -rem Now build and test - -if %Win32%==true ( - if %debug%==true ( - if %static%==true ( - if %Builder%==2003 ( - devenv e.sln %ACTION% "Debug" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc2003/bin/Debug' - ) - if %Builder%==2005 ( - devenv e.sln %ACTION% "Debug|Win32" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc/bin/win32/Debug' - ) -) ) ) - -if %Win32%==true ( - if %release%==true ( - if %static%==true ( - if %Builder%==2003 ( - devenv e.sln %ACTION% "Release" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc2003/bin/Release' - ) - if %Builder%==2005 ( - devenv e.sln %ACTION% "Release|Win32" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc/bin/win32/Release' - ) -) ) ) - -if %Win32%==true ( - if %debug%==true ( - if %dll%==true ( - if %Builder%==2003 ( - devenv e.sln %ACTION% "DebugDLL" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc2003/bin/DebugDLL' - ) - if %Builder%==2005 ( - devenv e.sln %ACTION% "DebugDLL|Win32" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc/bin/win32/DebugDLL' - ) -) ) ) - -if %Win32%==true ( - if %release%==true ( - if %dll%==true ( - if %Builder%==2003 ( - devenv e.sln %ACTION% "ReleaseDLL" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc2003/bin/ReleaseDLL' - ) - if %Builder%==2005 ( - devenv e.sln %ACTION% "ReleaseDLL|Win32" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc/bin/win32/ReleaseDLL' - ) -) ) ) - -if %x64%==true ( - if %debug%==true ( - if %static%==true ( - devenv e.sln %ACTION% "Debug|x64" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc/bin/x64/Debug' -) ) ) - -if %x64%==true ( - if %release%==true ( - if %static%==true ( - devenv e.sln %ACTION% "Release|x64" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc/bin/x64/Release' -) ) ) - -if %x64%==true ( - if %debug%==true ( - if %dll%==true ( - devenv e.sln %ACTION% "DebugDLL|x64" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc/bin/x64/DebugDLL' -) ) ) - -if %x64%==true ( - if %release%==true ( - if %dll%==true ( - devenv e.sln %ACTION% "ReleaseDLL|x64" - if NOT ERRORLEVEL 1 if %tests%==true call bash -c 'cd %FOO%;cd test;./testMSVC.sh ../msvc/bin/x64/ReleaseDLL' -) ) ) - -rem -- -rem cleanup time -del e.sln -popd - -rem -- -rem delete support libraries (with mozilla's native rm utility) -if %Builder%==2003 msvc\tools\bin\rm.exe -rf ..\expat-2.0.1 ..\zlib-1.2.3 -if %Builder%==2005 msvc\tools\bin\rm.exe -rf ..\expat ..\zlib ..\openssl ..\libssh ..\curl -if %Builder%==2005 if EXIST openssl ( - cd .. - cygwin64\bin\rm.exe -rf openssl - cd msvc -) - -rem That's all Folks! -rem ----------------- diff --git a/contrib/buildserver/jenkins_build.sh b/contrib/buildserver/jenkins_build.sh deleted file mode 100755 index 3f5ae63a..00000000 --- a/contrib/buildserver/jenkins_build.sh +++ /dev/null @@ -1,221 +0,0 @@ -#!/bin/bash - -## -# jenkins_build.sh -# called by jenkins to build/test exiv2 -# - jenkins sets environment variables -# called from terminal -# - script has build-in defaults for some environment variable -# -# arguments: -# status : filter last build with grep -# -## -source $(find . -name buildserver.library) - -base=$(basename $0) -if [ -z "$base" ]; then base=jenkins_build ; fi -tmp=/tmp/$base.tmp -start=$(date) -starts=$(date +%s) - - -## -# arg: status [grep-args] -# example: ./jenkins_build.sh status -e URL -if [ "$1" == "status" ]; then - shift - build=$(basename $PWD) - declare -A expects=( [linux]=900 [macosx]=900 [cygwin]=1000 [mingw]=100 [msvc]=1200 ) - for b in linux macosx cygwin mingw msvc ; do - echo $build/$b - curl --silent $JENKINS/job/Exiv2-$build/label=$b/lastBuild/consoleText | tee $tmp |\ - grep -E -e SVN_[A-Z]+= -e JOB_NAME -e BUILD_ID -e Finished -e seconds $@ ; - declare -i lines=$(wc -l $tmp | cut -d/ -f 1) - declare -i expect=${expects[$b]} - diff=$(( lines-expect>0?lines-expect:expect-lines )) - msg='' - warn='' - if [ "$diff" -gt "200" ]; then warn="***" ; msg="TAKE CARE " ; fi - echo "${warn}${msg}lines= ${lines} expect~${expect} diff=${diff}" "${msg}${warn}" - echo '' - done - exit $result -fi - -run_tests() { - if [ "$result" == "0" ]; then - if [ "$tests" == true ]; then - make tests - fi - fi -} - -## -# set up some defaults (used when running this script from the terminal) -echo "1 target = $target platform = $PLATFORM WORKSPACE = $WORKSPACE" -if [ $PLATFORM == "macosx" -a -z "$macosx" ]; then export macosx=true ; export target=macosx ; fi -if [ $PLATFORM == "linux" -a -z "$linux" ]; then export linux=true ; export target=linux ; fi -if [ -z "$cygwin" -a ! -z "$CYGWIN" ]; then export cygwin=$CYGWIN ; fi -if [ -z "$tests" ]; then export tests=true ; fi -if [ -z "$WORKSPACE" ]; then export WORKSPACE="$0/$PLATFORM" ; fi - -if [ -z "$target" ]; then export target=$(basename $(echo $WORKSPACE | sed -E -e 's#\\#/#g')) ; fi -echo "2 target = $target platform = $PLATFORM WORKSPACE = $WORKSPACE" - -export PATH=$PATH:/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/lib/pkgconfig:/opt/local/bin:$PWD/usr/bin:/opt/local/bin:/opt/local/sbin:/opt/pkgconfig:bin -export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$PWD/usr/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/lib/pkgconfig - -echo ---------------------- -export -echo ---------------------- - -## -# cleanup from last time (if there was a last time) -if [ -e config/config.mk ]; then - if [ -e bin ]; then - rm -rf bin - fi - if [ ! -e bin ]; then - mkdir bin - fi - make distclean -fi - -## -# create ./configure -# we need to inspect configure to know if libssh and libcurl are options for this build -make config &>/dev/null - -## -# decide what to do about curl and ssh -export withcurl='--without-curl' -export withssh='--without-ssh' -if [ "$curl" == "true" ]; then export withcurl=--with-curl ; fi -if [ "$ssh" == "true" ]; then export withssh=--with-ssh ; fi - -## -# what kind of build is this? -build=NONE - -if [ $PLATFORM == "linux" -a "$target" == "linux" -a "$linux" == "true" ]; then build=UNIX ; fi -if [ $PLATFORM == "macosx" -a "$target" == "macosx" -a "$macosx" == "true" ]; then build=UNIX ; fi -if [ $PLATFORM == "cygwin" -a "$target" == "cygwin" -a "$cygwin" == "true" ]; then build=CYGW ; fi -if [ "$target" == "mingw" -a "$mingw" == "true" ]; then build=MING ; fi -if [ "$target" == "msvc" -a "$msvc" == "true" ]; then build=MSVC ; fi -if [ $PLATFORM == "mingw" -o "$target" == "mingw" ]; then build=MING ; fi - -echo "3 target = $target platform = $PLATFORM build = $build" -echo ---- path and perl ----- -(IFS=:;for i in $PATH; do echo $i ; done) -echo -- which perl = $(which perl) --- -echo -- which expr = $(which expr) --- -perl --version -echo ---- end of path and perl ---- - -case "$build" in - - UNIX) - echo ./configure --prefix=$PWD/usr $withcurl $withssh - ./configure "--prefix=$PWD/usr" $withcurl $withssh - make -j "LDFLAGS=-L${PWD}/usr/lib -L${PWD}/xmpsdk/src/.libs" - make install - make -j samples "CXXFLAGS=-I${PWD}/usr/include -I${PWD}/src" "LDFLAGS=-L${PWD}/usr/lib -L${PWD}/xmpsdk/src/.libs -lexiv2" - result=$? - run_tests - "$PWD/usr/bin/exiv2" -v -V - ;; - - CYGW) - if [ "$x64" == true ]; then - export CFLAGS=-m64 - export CXXFLAGS=-m64 - export LDFLAGS=-m64 - fi - echo make config - make config - # I've given up trying to get Cygwin to install into a local directory - echo ./configure ${withcurl} ${withssh} - ./configure ${withcurl} ${withssh} - make -j - result=$? - make install - make -j samples - run_tests - /usr/local/bin/exiv2 -v -V - ;; - - MING) - if [ ! -z "$RECURSIVE" ]; then - export CC=$(which gcc) - export CXX=$(which g++) - export "PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig" - echo --- recursive MinGW build --- - - ########################## - # To build curl/MinGW/64 (on 32bit MinGW): - # PKG_CONFIG_PATH="/usr/local/lib/pkgconfig/:/usr/lib/pkgconfig/" - # cd /home/rmills/gnu/curl/curl-7.39.0> - # ./configure --prefix=/usr/local --disable-static --enable-shared --host=i686-x64-mingw32 - # I haven't succeeded in getting openssl to link with curl on MinGW - # --with-ssl=/usr/local - ########################## - if [ "$withcurl" == "--with-curl" ]; then - withcurl="--with-curl=/usr/local" - fi - - ########################## - # I have be unable to build libssh on MinGW (neither 32 nor 64 bits) - ########################## - if [ "$withssh" == "--with-ssh" ]; then - echo "*** unable to build --with-ssh on MING ***" - withssh="--without-ssh" - fi - - ./configure $withcurl $withssh - make -j # DO NOT USE -j4. It seems to hang the build! - make install - make -j samples - run_tests - exiv2 -v -V - else - if [ -e config/config.mk ]; then make clean ; fi - ( - export TMP=/tmp - export TEMP=$TMP - export RECURSIVE=1 - # recursively invoke MinGW/bash with appropriate tool chain - if [ "$x64" == true ]; then - /cygdrive/c/MinGW64/msys/1.0/bin/bash.exe -c "export PATH=/c/TDM-GCC-64/bin:/c/MinGW64/bin:/c/MinGW64/msys/1.0/bin:/c/MinGW64/msys/1.0/local/bin; $0" - result=$? - fi - if [ "$Win32" == true ]; then - /cygdrive/c/MinGW/msys/1.0/bin/bash.exe -c "export PATH=/c/MinGW/bin:/c/MinGW/msys/1.0/bin:/c/MinGW/msys/1.0/local/bin; $0" - result=$? - fi - ) - fi - ;; - - MSVC) - rm -rf $PWD/bin - mkdir $PWD/bin - - PATH=$PATH:/cygdrive/c/Windows/System32 - cmd.exe /c "cd $(cygpath -aw .) && call contrib\\buildserver\\jenkins_build.bat" - result=$? - ;; - - NONE) - echo "**************************************" - echo "*** no build requested for $target ***" - if [ "$target" == "cygwin" ]; then echo try export CYGWIN=true and run $(basename $0) again ; fi - echo "**************************************" - ;; -esac - -echo target "$target" start: "$start" finish: $(date) diff: $(( $(date +%s) - starts )) seconds -set -v -# That's all Folks! -## -exit $result diff --git a/contrib/cmake/macosx/generate b/contrib/cmake/macosx/generate deleted file mode 100755 index b9818cbd..00000000 --- a/contrib/cmake/macosx/generate +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env bash - -## -# regenerate Xcode environment -## -if [ -e src/actions.cpp -o -e ../src/actions.cpp ]; then - if [ ! -e build ]; then mkdir build ; cd build ; fi - if [ -e ../src/actions.cpp ]; then - rm -rf CMakeCache.txt - echo cmake .. -G Xcode -DEXIV2_ENABLE_NLS=OFF -DCMAKE_BUILD_TYPE=Debug "$@" - cmake .. -G Xcode -DEXIV2_ENABLE_NLS=OFF -DCMAKE_BUILD_TYPE=Debug "$@" - fi - if [ ! -e generate ]; then - ln -s ../contrib/cmake/macosx/generate generate - fi -else - echo "*** you must be in exiv2dir or exiv2dir/build ***" >2 -fi - -# That's all Folks! -## diff --git a/contrib/cmake/mingw/ReadMe.txt b/contrib/cmake/mingw/ReadMe.txt deleted file mode 100755 index 10c3951e..00000000 --- a/contrib/cmake/mingw/ReadMe.txt +++ /dev/null @@ -1 +0,0 @@ -See /README-CMAKE and /TODO-CMAKE for an explanation diff --git a/contrib/cmake/mingw/includes.rsp b/contrib/cmake/mingw/includes.rsp deleted file mode 100755 index 6ddc2a94..00000000 --- a/contrib/cmake/mingw/includes.rsp +++ /dev/null @@ -1,8 +0,0 @@ --IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/src --IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/include --IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/include/exiv2 --IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/build --IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/xmpsdk/include --IC:/MinGW/msys/1.0/home/rmills/gnu/exiv2/trunk/xmpsdk/src --IC:/Qt/Qt5.6.0/Tools/mingw492_32/i686-w64-mingw32/include --IC:/MinGW/msys/1.0/local/include diff --git a/contrib/makeUniversal b/contrib/makeUniversal deleted file mode 100755 index 4b086c6b..00000000 --- a/contrib/makeUniversal +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash - -## -# makeUniversal - combine .i386 and .x86_64 build results into .libs -# this script is called by buildForMac -## - -## -# search for directories called .x86_64 -# run every file and lipo .x86_64/file .x86_64/file -> .libs/file -for D in $(find . -name ".x86_64"); do - for F in $(find $(dirname $D)/.x86_64 -type f); do - f=$(echo $F | sed -E -e "s/.x86_64/.i386/") - U=$(echo $F | sed -E -e "s/.x86_64/.libs/") - if [[ -e $f && -e $F ]]; then - # echo $F $f -> $U - lipo -arch i386 $f -arch x86_64 $F -create -output $U - if [ $? != '0' ]; then - echo FAILED lipo -arch i386 $f -arch x86_64 $F -create -output $U - else - eval $(stat -s $U) - s=$(printf "%10s" ${st_size}) - echo $(lipo -info $U|sed -E -e "s/Architectures in the fat file://" -e "s/ are://" -e "s#$U##" ) "$s" $U - fi - fi - done -done - -# That's all Folks! -## diff --git a/contrib/xcode/ReadMe.txt b/contrib/xcode/ReadMe.txt deleted file mode 100644 index 7a1789b7..00000000 --- a/contrib/xcode/ReadMe.txt +++ /dev/null @@ -1,24 +0,0 @@ -Exiv2 xcode/ReadMe.txt --------------------------------------- -See http://dev.exiv2.org/issues/1110 - -exiv2.xcodeproj is a "no thrills" wrapper for the autotools: - -Target Command -config make config -configure ./configure -prefix=/usr/local CXXFLAGS=-ggdb -exiv2 make -install sudo make install -samples make samples -tests make tests -exiv2json make exiv2json - -About executables: - -When you add an executable to the "run" command, use: -bin/.libs/exiv2 This is the exiv2(.exe) you have built, however it uses the shared library - -For all sample applications you will have to run install when you make library changes. - -Robin Mills -robin@clanmills.com diff --git a/contrib/xcode/exiv2.xcodeproj/project.pbxproj b/contrib/xcode/exiv2.xcodeproj/project.pbxproj deleted file mode 100644 index da9cacb8..00000000 --- a/contrib/xcode/exiv2.xcodeproj/project.pbxproj +++ /dev/null @@ -1,737 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 47; - objects = { - -/* Begin PBXContainerItemProxy section */ - A1CF5C831B8E3EB400B0D341 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = A10C3EB217DE224C008DC351 /* Project object */; - proxyType = 1; - remoteGlobalIDString = A105A09C1B8E36D100833CA3; - remoteInfo = exiv2; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXFileReference section */ - A1467F9B1B8F1B0400A2E7CD /* ReadMe.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = ReadMe.txt; sourceTree = ""; }; - A193A3D11B91DA7200455831 /* xmpsdk */ = {isa = PBXFileReference; lastKnownFileType = folder; name = xmpsdk; path = ../../xmpsdk; sourceTree = ""; }; - A193A3D21B91DBC300455831 /* bin */ = {isa = PBXFileReference; lastKnownFileType = folder; name = bin; path = ../../bin; sourceTree = ""; }; - A193A3D31B91DBC300455831 /* samples */ = {isa = PBXFileReference; lastKnownFileType = folder; name = samples; path = ../../samples; sourceTree = ""; }; - A193A3D41B91DBC300455831 /* src */ = {isa = PBXFileReference; lastKnownFileType = folder; name = src; path = ../../src; sourceTree = ""; }; - A193A3D51B91DBC300455831 /* test */ = {isa = PBXFileReference; lastKnownFileType = folder; name = test; path = ../../test; sourceTree = ""; }; - A193A3D61B91DBC300455831 /* include */ = {isa = PBXFileReference; lastKnownFileType = folder; name = include; path = ../../include; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXGroup section */ - A10C3EB117DE224C008DC351 = { - isa = PBXGroup; - children = ( - A1467F9B1B8F1B0400A2E7CD /* ReadMe.txt */, - A193A3D21B91DBC300455831 /* bin */, - A193A3D61B91DBC300455831 /* include */, - A193A3D31B91DBC300455831 /* samples */, - A193A3D41B91DBC300455831 /* src */, - A193A3D51B91DBC300455831 /* test */, - A193A3D11B91DA7200455831 /* xmpsdk */, - ); - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXLegacyTarget section */ - A105A09C1B8E36D100833CA3 /* exiv2 */ = { - isa = PBXLegacyTarget; - buildArgumentsString = "make -j $(ACTION)"; - buildConfigurationList = A105A09D1B8E36D100833CA3 /* Build configuration list for PBXLegacyTarget "exiv2" */; - buildPhases = ( - ); - buildToolPath = /usr/bin/env; - buildWorkingDirectory = "$(PROJECT_DIR)/../.."; - dependencies = ( - ); - name = exiv2; - passBuildSettingsInEnvironment = 1; - productName = exiv2; - }; - A13633F91B8EF5AD0046FC3F /* samples */ = { - isa = PBXLegacyTarget; - buildArgumentsString = ""; - buildConfigurationList = A13633FC1B8EF5AD0046FC3F /* Build configuration list for PBXLegacyTarget "samples" */; - buildPhases = ( - ); - buildToolPath = /usr/bin/make; - buildWorkingDirectory = "$(PROJECT_DIR)/../../samples"; - dependencies = ( - ); - name = samples; - passBuildSettingsInEnvironment = 1; - productName = samples; - }; - A14E15981B8F04F8006F2E61 /* config */ = { - isa = PBXLegacyTarget; - buildArgumentsString = "PATH=/usr/local/bin:/opt/local/bin:$(PATH) make config"; - buildConfigurationList = A14E159B1B8F04F8006F2E61 /* Build configuration list for PBXLegacyTarget "config" */; - buildPhases = ( - ); - buildToolPath = /usr/bin/env; - buildWorkingDirectory = "$(PROJECT_DIR)/../.."; - dependencies = ( - ); - name = config; - passBuildSettingsInEnvironment = 1; - productName = config; - }; - A14E159C1B8F0755006F2E61 /* configure */ = { - isa = PBXLegacyTarget; - buildArgumentsString = "./configure --prefix=/usr/local CXXFLAGS=-ggdb"; - buildConfigurationList = A14E159D1B8F0755006F2E61 /* Build configuration list for PBXLegacyTarget "configure" */; - buildPhases = ( - ); - buildToolPath = /usr/bin/env; - buildWorkingDirectory = "$(PROJECT_DIR)/../.."; - dependencies = ( - ); - name = configure; - passBuildSettingsInEnvironment = 1; - productName = configure; - }; - A17533741B8E7DA9003247E0 /* tests */ = { - isa = PBXLegacyTarget; - buildArgumentsString = "$(TARGET_NAME)"; - buildConfigurationList = A17533751B8E7DA9003247E0 /* Build configuration list for PBXLegacyTarget "tests" */; - buildPhases = ( - ); - buildToolPath = /usr/bin/make; - buildWorkingDirectory = "$(PROJECT_DIR)/../.."; - dependencies = ( - ); - name = tests; - passBuildSettingsInEnvironment = 1; - productName = test; - }; - A1CF5C7F1B8E3EA600B0D341 /* exiv2json */ = { - isa = PBXLegacyTarget; - buildArgumentsString = "make $(TARGET_NAME)"; - buildConfigurationList = A1CF5C821B8E3EA600B0D341 /* Build configuration list for PBXLegacyTarget "exiv2json" */; - buildPhases = ( - ); - buildToolPath = /usr/bin/env; - buildWorkingDirectory = "$(PROJECT_DIR)/../.."; - dependencies = ( - A1CF5C841B8E3EB400B0D341 /* PBXTargetDependency */, - ); - name = exiv2json; - passBuildSettingsInEnvironment = 1; - productName = exiv2json; - }; - A1CF5C851B8E4AB400B0D341 /* install */ = { - isa = PBXLegacyTarget; - buildArgumentsString = "make install"; - buildConfigurationList = A1CF5C861B8E4AB400B0D341 /* Build configuration list for PBXLegacyTarget "install" */; - buildPhases = ( - ); - buildToolPath = /usr/bin/sudo; - buildWorkingDirectory = "$(PROJECT_DIR)/../.."; - dependencies = ( - ); - name = install; - passBuildSettingsInEnvironment = 1; - productName = install; - }; -/* End PBXLegacyTarget section */ - -/* Begin PBXProject section */ - A10C3EB217DE224C008DC351 /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 0800; - ORGANIZATIONNAME = "Team Exiv2"; - TargetAttributes = { - A105A09C1B8E36D100833CA3 = { - CreatedOnToolsVersion = 6.4; - }; - A13633F91B8EF5AD0046FC3F = { - CreatedOnToolsVersion = 6.4; - }; - A14E15981B8F04F8006F2E61 = { - CreatedOnToolsVersion = 6.4; - }; - A14E159C1B8F0755006F2E61 = { - CreatedOnToolsVersion = 6.4; - }; - A17533741B8E7DA9003247E0 = { - CreatedOnToolsVersion = 6.4; - }; - A1CF5C7F1B8E3EA600B0D341 = { - CreatedOnToolsVersion = 6.4; - }; - A1CF5C851B8E4AB400B0D341 = { - CreatedOnToolsVersion = 6.4; - }; - }; - }; - buildConfigurationList = A10C3EB517DE224C008DC351 /* Build configuration list for PBXProject "exiv2" */; - compatibilityVersion = "Xcode 6.3"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - en, - ); - mainGroup = A10C3EB117DE224C008DC351; - productRefGroup = A10C3EB117DE224C008DC351; - projectDirPath = ""; - projectRoot = ""; - targets = ( - A14E15981B8F04F8006F2E61 /* config */, - A14E159C1B8F0755006F2E61 /* configure */, - A105A09C1B8E36D100833CA3 /* exiv2 */, - A1CF5C851B8E4AB400B0D341 /* install */, - A13633F91B8EF5AD0046FC3F /* samples */, - A17533741B8E7DA9003247E0 /* tests */, - A1CF5C7F1B8E3EA600B0D341 /* exiv2json */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXTargetDependency section */ - A1CF5C841B8E3EB400B0D341 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = A105A09C1B8E36D100833CA3 /* exiv2 */; - targetProxy = A1CF5C831B8E3EB400B0D341 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin XCBuildConfiguration section */ - A105A09E1B8E36D100833CA3 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - DEBUGGING_SYMBOLS = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = YES; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - A105A09F1B8E36D100833CA3 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = NO; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - A10C3EB717DE224C008DC351 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_OBJC_EXCEPTIONS = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.10; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx; - }; - name = Debug; - }; - A10C3EB817DE224C008DC351 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = YES; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_ENABLE_OBJC_EXCEPTIONS = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.10; - SDKROOT = macosx; - }; - name = Release; - }; - A13633FA1B8EF5AD0046FC3F /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - DEBUGGING_SYMBOLS = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = YES; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - A13633FB1B8EF5AD0046FC3F /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = NO; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - A14E15991B8F04F8006F2E61 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - DEBUGGING_SYMBOLS = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = YES; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - A14E159A1B8F04F8006F2E61 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = NO; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - A14E159E1B8F0755006F2E61 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - DEBUGGING_SYMBOLS = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = YES; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - A14E159F1B8F0755006F2E61 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = NO; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - A17533761B8E7DA9003247E0 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - DEBUGGING_SYMBOLS = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = YES; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - A17533771B8E7DA9003247E0 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = NO; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - A1CF5C801B8E3EA600B0D341 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - DEBUGGING_SYMBOLS = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = YES; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - A1CF5C811B8E3EA600B0D341 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = NO; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - A1CF5C871B8E4AB400B0D341 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - DEBUGGING_SYMBOLS = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = YES; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - A1CF5C881B8E4AB400B0D341 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - MTL_ENABLE_DEBUG_INFO = NO; - OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - A105A09D1B8E36D100833CA3 /* Build configuration list for PBXLegacyTarget "exiv2" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A105A09E1B8E36D100833CA3 /* Debug */, - A105A09F1B8E36D100833CA3 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A10C3EB517DE224C008DC351 /* Build configuration list for PBXProject "exiv2" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A10C3EB717DE224C008DC351 /* Debug */, - A10C3EB817DE224C008DC351 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A13633FC1B8EF5AD0046FC3F /* Build configuration list for PBXLegacyTarget "samples" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A13633FA1B8EF5AD0046FC3F /* Debug */, - A13633FB1B8EF5AD0046FC3F /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A14E159B1B8F04F8006F2E61 /* Build configuration list for PBXLegacyTarget "config" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A14E15991B8F04F8006F2E61 /* Debug */, - A14E159A1B8F04F8006F2E61 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A14E159D1B8F0755006F2E61 /* Build configuration list for PBXLegacyTarget "configure" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A14E159E1B8F0755006F2E61 /* Debug */, - A14E159F1B8F0755006F2E61 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A17533751B8E7DA9003247E0 /* Build configuration list for PBXLegacyTarget "tests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A17533761B8E7DA9003247E0 /* Debug */, - A17533771B8E7DA9003247E0 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A1CF5C821B8E3EA600B0D341 /* Build configuration list for PBXLegacyTarget "exiv2json" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A1CF5C801B8E3EA600B0D341 /* Debug */, - A1CF5C811B8E3EA600B0D341 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - A1CF5C861B8E4AB400B0D341 /* Build configuration list for PBXLegacyTarget "install" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - A1CF5C871B8E4AB400B0D341 /* Debug */, - A1CF5C881B8E4AB400B0D341 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = A10C3EB217DE224C008DC351 /* Project object */; -}