1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-24 00:45:52 +00:00

- update to latest

- the ARRL licence is a 6 part BSD

PR:		ports/190172
Submitted by:	shurd
This commit is contained in:
Diane Bruce 2014-06-18 01:01:31 +00:00
parent bd7bbec5df
commit e7ed3b7b78
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=358195
10 changed files with 221 additions and 103 deletions

View File

@ -1,17 +1,18 @@
# $FreeBSD$
PORTNAME= trustedqsl
PORTVERSION= 2.0
PORTREVISION= 2
PORTVERSION= 2.0.2
CATEGORIES= comms hamradio
MASTER_SITES= SF/${PORTNAME}/TrustedQSL/v${PORTVERSION}/
DISTNAME= tqsl-${PORTVERSION}
EXTRACT_SUFX= .tgz
MAINTAINER= db@FreeBSD.org
COMMENT= Amateur Radio Station electronic trusted logbook
LICENSE= BSD
LICENSE= ARRL
LICENSE_NAME= American Radio Relay League, Inc. All rights reserved.
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
LICENSE_PERMS= dist-mirror pkg-mirror auto-accept
LIB_DEPENDS= libdb-5.so:${PORTSDIR}/databases/db5 \
libcurl.so:${PORTSDIR}/ftp/curl
@ -19,6 +20,7 @@ LIB_DEPENDS= libdb-5.so:${PORTSDIR}/databases/db5 \
PKGMESSAGE= ${WRKDIR}/pkg-message
USES= cmake compiler:features pkgconfig
CMAKE_ARGS= -DBDB_PREFIX=${LOCALBASE}
USE_WX= 2.8+
WX_UNICODE= yes
USE_LDCONFIG= yes

View File

@ -1,2 +1,2 @@
SHA256 (tqsl-2.0.tgz) = eb1982da44b4d8c17c78b72eacb3fe3b9e94005d1b2da153685827da2e07cfaa
SIZE (tqsl-2.0.tgz) = 2626483
SHA256 (tqsl-2.0.2.tar.gz) = 82fb052a7f1655865769aa12b94daa590a582bbde9cabf8811168b88cb29adf1
SIZE (tqsl-2.0.2.tar.gz) = 2762892

View File

@ -1,14 +1,14 @@
--- apps/CMakeLists.txt.orig 2013-12-06 17:42:11.000000000 -0800
+++ apps/CMakeLists.txt 2013-12-06 17:43:12.000000000 -0800
@@ -121,6 +121,10 @@
add_definitions("-DCONFDIR=\"${CMAKE_INSTALL_PREFIX}/share/TrustedQSL/\"")
install(TARGETS tqsl DESTINATION bin)
install(DIRECTORY help DESTINATION share/TrustedQSL)
-install(FILES tqsl.5 DESTINATION share/man/man5)
+if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
+ install(FILES tqsl.5 DESTINATION man/man5)
+else()
+ install(FILES tqsl.5 DESTINATION share/man/man5)
+endif()
install(FILES icons/key48.png DESTINATION share/pixmaps RENAME TrustedQSL.png)
--- apps/CMakeLists.txt 2014-05-08 17:59:25.000000000 -0700
+++ ../../work.fixed/tqsl-2.0.2/apps/CMakeLists.txt 2014-05-24 00:46:38.000000000 -0700
@@ -149,6 +149,10 @@
install(TARGETS tqsl DESTINATION bin)
install(DIRECTORY help DESTINATION share/TrustedQSL)
install(FILES ca-bundle.crt DESTINATION share/TrustedQSL)
- install(FILES tqsl.5 DESTINATION share/man/man5)
+ if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
+ install(FILES tqsl.5 DESTINATION man/man5)
+ else()
+ install(FILES tqsl.5 DESTINATION share/man/man5)
+ endif()
install(FILES icons/key48.png DESTINATION share/pixmaps RENAME TrustedQSL.png)
endif()

View File

@ -1,29 +1,11 @@
--- apps/tqsl.cpp.orig 2013-10-20 20:33:20.000000000 -0400
+++ apps/tqsl.cpp 2014-01-26 10:20:28.036914222 -0500
@@ -71,7 +71,7 @@
--- apps/tqsl.cpp 2014-05-08 17:59:25.000000000 -0700
+++ ../../work.fixed/tqsl-2.0.2/apps/tqsl.cpp 2014-05-24 00:30:44.000000000 -0700
@@ -54,7 +54,7 @@
#endif
#include <zlib.h>
#include <openssl/opensslv.h> // only for version info!
-#include <db.h> //only for version info!
+#include <db5/db.h> //only for version info!
#include "tqslwiz.h"
#include "qsodatadialog.h"
#include "tqslerrno.h"
@@ -1862,7 +1862,7 @@
return TQSL_EXIT_LIB_ERROR;
}
} else {
- out<<output;
+ out<<output.mb_str();
if (out.fail()) {
tqsl_converterRollBack(conv);
tqsl_endConverter(&conv);
@@ -2016,7 +2016,7 @@
} else {
//compress the upload
string compressed;
- size_t compressedSize=compressToBuf(compressed, (const char*)signedOutput.mb_str());
+ ssize_t compressedSize=compressToBuf(compressed, (const char*)signedOutput.mb_str());
//ofstream f; f.open("testzip.tq8", ios::binary); f<<compressed; f.close(); //test of compression routine
if (compressedSize<0) {
wxLogMessage(wxT("Error compressing before upload"));
#include <iostream>
#include <fstream>

View File

@ -1,18 +1,26 @@
--- cmakemodules/FindBDB.cmake.orig 2013-10-20 19:33:20.000000000 -0500
+++ cmakemodules/FindBDB.cmake 2013-12-07 20:44:12.000000000 -0500
@@ -5,6 +5,7 @@
FIND_PATH(BDB_INCLUDE_DIR db.h NO_DEFAULT_PATH PATHS
--- cmakemodules/FindBDB.cmake.orig 2014-05-08 17:59:25.000000000 -0700
+++ cmakemodules/FindBDB.cmake 2014-05-24 01:29:11.000000000 -0700
@@ -6,6 +6,7 @@
"/usr/local/BerkeleyDB.6.0/include"
"/usr/local/BerkeleyDB.5.3/include"
+ "/usr/local/include/db5"
"${BDB_PREFIX}/include"
+ "${BDB_PREFIX}/include/db5"
)
else()
@@ -37,6 +38,7 @@
#OSX (and probably other unix) src build
FIND_PATH(BDB_INCLUDE_DIR db.h
@@ -29,6 +30,7 @@
libdb53s
libdb5-5.3
libdb5-5.so
+ libdb5
PATHS
"C:\\db-6.0.20\\build_windows\\Win32\\Static Release\\"
"C:\\db-6.0.20\\build_windows\\Win32\\Static_Release\\" #vc08 adds underscore
@@ -38,6 +40,7 @@
"/usr/local/BerkeleyDB.6.0/lib"
"/usr/local/BerkeleyDB.5.3/lib"
+ "/usr/local/lib/db5"
"${BDB_PREFIX}/lib"
+ "${BDB_PREFIX}/lib/db5"
"${BDB_PREFIX}"
)
MARK_AS_ADVANCED(BDB_LIBRARY)

View File

@ -0,0 +1,52 @@
--- src/location.cpp 2014-05-08 17:59:25.000000000 -0700
+++ ../../work.fixed/tqsl-2.0.2/src/location.cpp 2014-05-24 00:29:01.000000000 -0700
@@ -1958,7 +1958,7 @@
if (field.gabbi_name != "") {
// A field that may exist
XMLElement el;
- if (ep->second.getFirstElement(field.gabbi_name, el)) {
+ if (ep->second.elem->getFirstElement(field.gabbi_name, el)) {
field.cdata = el.getText();
switch (field.input_type) {
case TQSL_LOCATION_FIELD_DDLIST:
@@ -2085,11 +2085,11 @@
for (ep = ellist.find("StationData"); ep != ellist.end(); ep++) {
if (ep->first != "StationData")
break;
- pair<string, bool> rval = ep->second.getAttribute("name");
+ pair<string, bool> rval = ep->second.elem->getAttribute("name");
if (rval.second) {
TQSL_LOCATION *oldloc;
TQSL_LOCATION *newloc;
- ep->second.getFirstElement("CALL", call);
+ ep->second.elem->getFirstElement("CALL", call);
for (size_t j = 0; j < calls.size(); j++) {
if (calls[j] == call.getText()) {
if (tqsl_getStationLocation(reinterpret_cast<tQSL_Location *>(&oldloc), rval.first.c_str())) { // Location doesn't exist
@@ -2124,7 +2124,7 @@
for (ep = ellist.find("StationData"); ep != ellist.end(); ep++) {
if (ep->first != "StationData")
break;
- pair<string, bool> rval = ep->second.getAttribute("name");
+ pair<string, bool> rval = ep->second.elem->getAttribute("name");
if (rval.second && !strcasecmp(rval.first.c_str(), name)) {
ellist.erase(ep);
return tqsl_dump_station_data(sfile);
@@ -2157,7 +2157,7 @@
for (ep = ellist.find("StationData"); ep != ellist.end(); ep++) {
if (ep->first != "StationData")
break;
- pair<string, bool> rval = ep->second.getAttribute("name");
+ pair<string, bool> rval = ep->second.elem->getAttribute("name");
if (rval.second && !strcasecmp(trim(rval.first).c_str(), trim(loc->name).c_str())) {
exists = true;
break;
@@ -2402,7 +2402,7 @@
for (ep = ellist.find("StationData"); ep != ellist.end(); ep++) {
if (ep->first != "StationData")
break;
- pair<string, bool> rval = ep->second.getAttribute("name");
+ pair<string, bool> rval = ep->second.elem->getAttribute("name");
if (rval.second && !strcasecmp(rval.first.c_str(), loc->name.c_str())) {
exists = true;
break;

View File

@ -0,0 +1,11 @@
--- src/openssl_cert.cpp 2014-05-08 17:59:25.000000000 -0700
+++ ../../work.fixed/tqsl-2.0.2/src/openssl_cert.cpp 2014-05-24 00:28:34.000000000 -0700
@@ -4214,7 +4214,7 @@
for (ep = ellist.find("Cert"); ep != ellist.end(); ep++) {
if (ep->first != "Cert")
break;
- pair<string, bool> rval = ep->second.getAttribute("serial");
+ pair<string, bool> rval = ep->second.elem->getAttribute("serial");
if (rval.second && strtol(rval.first.c_str(), NULL, 10) == serial) {
exists = true;
break;

View File

@ -1,36 +1,45 @@
--- src/xml.cpp.orig 2013-10-20 20:33:20.000000000 -0400
+++ src/xml.cpp 2014-02-01 20:30:26.874285772 -0500
@@ -17,6 +17,33 @@
using namespace std;
--- src/xml.cpp.orig 2014-05-08 17:59:25.000000000 -0700
+++ src/xml.cpp 2014-05-24 04:26:40.000000000 -0700
@@ -20,9 +20,20 @@
using std::string;
using std::ostream;
using std::map;
+#ifdef USE_TR1
+using std::tr1::shared_ptr;
+#else
+using std::make_shared;
+#endif
namespace tqsllib {
+static XMLElementList::iterator _iter;
+
+bool
+XMLElement::getFirstElement(XMLElement& element) {
+ _iterByName = false;
+ _iter = _elements.begin();
+ return getNextElement(element);
+}
+
+bool
+XMLElement::getFirstElement(const std::string& name, XMLElement& element) {
+ _iterName = name;
+ _iterByName = true;
+ _iter = _elements.find(_iterName);
+ return getNextElement(element);
+}
+
+bool
+XMLElement::getNextElement(XMLElement& element) {
+ if (_iter == _elements.end())
+ return false;
+ if (_iterByName && _iter->second.getElementName() != _iterName)
+ return false;
+ element = _iter->second;
+ ++_iter;
+ return true;
+}
pair<string,bool>
+shared_ptr<XMLElement> make_shared_XMLElement(XMLElement *e)
+{
+ shared_ptr<XMLElement> p(e);
+ return p;
+}
+
pair<string, bool>
XMLElement::getAttribute(const string& key) {
string s;
@@ -49,9 +60,9 @@
if (el->_parsingStack.empty()) {
el->_parsingStack.push_back(el->addElement(new_el));
} else {
- new_el.setPretext(el->_parsingStack.back()->second.getText());
- el->_parsingStack.back()->second.setText("");
- el->_parsingStack.push_back(el->_parsingStack.back()->second.addElement(new_el));
+ new_el.setPretext(el->_parsingStack.back()->second.elem->getText());
+ el->_parsingStack.back()->second.elem->setText("");
+ el->_parsingStack.push_back(el->_parsingStack.back()->second.elem->addElement(new_el));
}
}
@@ -65,7 +76,7 @@
void
XMLElement::xml_text(void *data, const XML_Char *text, int len) {
XMLElement *el = reinterpret_cast<XMLElement *>(data);
- el->_parsingStack.back()->second._text.append(text, len);
+ el->_parsingStack.back()->second.elem->_text.append(text, len);
}
/*

View File

@ -1,26 +1,79 @@
--- src/xml.h.orig 2013-10-20 20:33:20.000000000 -0400
+++ src/xml.h 2014-02-01 20:20:55.798824124 -0500
@@ -108,7 +108,6 @@
XMLElementAttributeList _attributes;
XMLElementList _elements;
std::vector<XMLElementList::iterator> _parsingStack;
- XMLElementList::iterator _iter;
bool _iterByName;
std::string _iterName;
XMLElementAttributeList::iterator _aiter;
@@ -132,6 +131,7 @@
--- src/xml.h.orig 2014-05-08 17:59:25.000000000 -0700
+++ src/xml.h 2014-05-24 04:17:00.000000000 -0700
@@ -16,6 +16,14 @@
#include <vector>
#include <utility>
#include <expat.h>
+#if defined(__GNUC__) && !defined(__clang__)
+#define USE_TR1
+#endif
+#ifdef USE_TR1
+#include <tr1/memory>
+#else
+#include <memory>
+#endif
using std::pair;
using std::string;
@@ -23,12 +31,28 @@
using std::map;
using std::multimap;
using std::vector;
+#ifdef USE_TR1
+using std::tr1::shared_ptr;
+#else
+using std::shared_ptr;
+using std::make_shared;
+#endif
+
namespace tqsllib {
+
class XMLElement;
+shared_ptr<XMLElement> make_shared_XMLElement(XMLElement *e);
+class XMLElementP {
+ public:
+ XMLElementP() {}
+ XMLElementP(shared_ptr<XMLElement> new_elem) { elem = new_elem; }
+
+ shared_ptr<XMLElement> elem;
+};
-typedef multimap<string, XMLElement> XMLElementList;
+typedef multimap<string, XMLElementP> XMLElementList;
typedef map<string, string> XMLElementAttributeList;
/** Encapsulates an XML element
@@ -62,7 +86,7 @@
*/
pair<string, bool> getAttribute(const string& key);
/// Add an element to the list of contained subelements
- XMLElementList::iterator addElement(const XMLElement& element);
+ XMLElementList::iterator addElement(XMLElement& element);
XMLElementAttributeList& getAttributeList() { return _attributes; }
XMLElementList& getElementList() { return _elements; }
/// Parse an XML file and add its element tree to this element
@@ -134,8 +158,8 @@
}
inline XMLElementList::iterator
-XMLElement::addElement(const XMLElement& element) {
- XMLElementList::iterator it = _elements.insert(make_pair(element.getElementName(), element));
+XMLElement::addElement(XMLElement& element) {
+ XMLElementList::iterator it = _elements.insert(make_pair(element.getElementName(), make_shared_XMLElement(&element)));
return it;
}
+#if 0
inline bool
XMLElement::getFirstElement(XMLElement& element) {
_iterByName = false;
@@ -157,6 +157,7 @@
@@ -158,9 +182,9 @@
XMLElement::getNextElement(XMLElement& element) {
if (_iter == _elements.end())
return false;
- if (_iterByName && _iter->second.getElementName() != _iterName)
+ if (_iterByName && _iter->second.elem->getElementName() != _iterName)
return false;
- element = _iter->second;
+ element = *_iter->second.elem.get();
++_iter;
return true;
}
+#endif
inline bool
XMLElement::getFirstAttribute(std::string& key, std::string& attr) {

View File

@ -106,3 +106,4 @@ share/pixmaps/TrustedQSL.png
@dirrm share/TrustedQSL/help/tqslapp
@dirrm share/TrustedQSL/help
@dirrm share/TrustedQSL
@dirrmtry share/pixmaps