[harbour-lib] Pulled in HarbourLib updates

Now this code has a chance to work on a 64-bit system
This commit is contained in:
Slava Monich 2020-09-15 17:30:31 +03:00
parent 80354b03a4
commit 4a4a78e769
5 changed files with 45 additions and 40 deletions

View file

@ -185,6 +185,7 @@ HEADERS += \
$$HARBOUR_INCLUDE_DIR/HarbourImageProvider.h \ $$HARBOUR_INCLUDE_DIR/HarbourImageProvider.h \
$$HARBOUR_INCLUDE_DIR/HarbourJson.h \ $$HARBOUR_INCLUDE_DIR/HarbourJson.h \
$$HARBOUR_INCLUDE_DIR/HarbourPluginLoader.h \ $$HARBOUR_INCLUDE_DIR/HarbourPluginLoader.h \
$$HARBOUR_INCLUDE_DIR/HarbourSystem.h \
$$HARBOUR_INCLUDE_DIR/HarbourTask.h \ $$HARBOUR_INCLUDE_DIR/HarbourTask.h \
$$HARBOUR_INCLUDE_DIR/HarbourTheme.h $$HARBOUR_INCLUDE_DIR/HarbourTheme.h
@ -197,6 +198,7 @@ SOURCES += \
$$HARBOUR_SRC_DIR/HarbourJson.cpp \ $$HARBOUR_SRC_DIR/HarbourJson.cpp \
$$HARBOUR_SRC_DIR/HarbourMce.cpp \ $$HARBOUR_SRC_DIR/HarbourMce.cpp \
$$HARBOUR_SRC_DIR/HarbourPluginLoader.cpp \ $$HARBOUR_SRC_DIR/HarbourPluginLoader.cpp \
$$HARBOUR_SRC_DIR/HarbourSystem.cpp \
$$HARBOUR_SRC_DIR/HarbourTask.cpp \ $$HARBOUR_SRC_DIR/HarbourTask.cpp \
$$HARBOUR_SRC_DIR/HarbourTheme.cpp $$HARBOUR_SRC_DIR/HarbourTheme.cpp

View file

@ -1,6 +1,6 @@
/* /*
* Copyright (C) 2015 Jolla Ltd. * Copyright (C) 2015-2020 Jolla Ltd.
* Contact: Slava Monich <slava.monich@jolla.com> * Copyright (C) 2015-2020 Slava Monich <slava.monich@jolla.com>
* *
* You may use this file under the terms of the BSD license as follows: * You may use this file under the terms of the BSD license as follows:
* *
@ -8,15 +8,15 @@
* modification, are permitted provided that the following conditions * modification, are permitted provided that the following conditions
* are met: * are met:
* *
* * Redistributions of source code must retain the above copyright * 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in * notice, this list of conditions and the following disclaimer
* the documentation and/or other materials provided with the * in the documentation and/or other materials provided with the
* distribution. * distribution.
* * Neither the name of Nemo Mobile nor the names of its contributors * 3. Neither the names of the copyright holders nor the names of its
* may be used to endorse or promote products derived from this * contributors may be used to endorse or promote products derived
* software without specific prior written permission. * from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@ -34,6 +34,7 @@
#include <expat.h> #include <expat.h>
#include <stdlib.h> #include <stdlib.h>
#include <dlfcn.h> #include <dlfcn.h>
#include "HarbourSystem.h"
#define EXPAT_FUNCTIONS(f) \ #define EXPAT_FUNCTIONS(f) \
f(XML_Parser, XML_ExternalEntityParserCreate, \ f(XML_Parser, XML_ExternalEntityParserCreate, \
@ -75,7 +76,7 @@
#define EXPAT_NUM_FUNCTIONS (sizeof(expat_names)/sizeof(expat_names[0])) #define EXPAT_NUM_FUNCTIONS (sizeof(expat_names)/sizeof(expat_names[0]))
#define EXPAT_NO_HANDLE ((void*)-1) #define EXPAT_NO_HANDLE ((void*)-1)
#define EXPAT_SO "/usr/lib/libexpat.so.1" #define EXPAT_SO "libexpat.so.1"
static const char* expat_names[] = { static const char* expat_names[] = {
"XML_ParserCreate", "XML_ParserCreate",
@ -101,7 +102,7 @@ XML_ParserCreate(
const XML_Char* encoding) const XML_Char* encoding)
{ {
if (!expat.handle) { if (!expat.handle) {
expat.handle = dlopen(EXPAT_SO, RTLD_LAZY); expat.handle = HarbourDlopen(EXPAT_SO, RTLD_LAZY);
if (expat.handle) { if (expat.handle) {
unsigned int i; unsigned int i;
for (i=0; i<EXPAT_NUM_FUNCTIONS; i++) { for (i=0; i<EXPAT_NUM_FUNCTIONS; i++) {

View file

@ -1,6 +1,6 @@
/* /*
* Copyright (C) 2015 Jolla Ltd. * Copyright (C) 2015-2020 Jolla Ltd.
* Contact: Slava Monich <slava.monich@jolla.com> * Copyright (C) 2015-2020 Slava Monich <slava.monich@jolla.com>
* *
* You may use this file under the terms of the BSD license as follows: * You may use this file under the terms of the BSD license as follows:
* *
@ -8,15 +8,15 @@
* modification, are permitted provided that the following conditions * modification, are permitted provided that the following conditions
* are met: * are met:
* *
* * Redistributions of source code must retain the above copyright * 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in * notice, this list of conditions and the following disclaimer
* the documentation and/or other materials provided with the * in the documentation and/or other materials provided with the
* distribution. * distribution.
* * Neither the name of Nemo Mobile nor the names of its contributors * 3. Neither the names of the copyright holders nor the names of its
* may be used to endorse or promote products derived from this * contributors may be used to endorse or promote products derived
* software without specific prior written permission. * from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@ -34,6 +34,7 @@
#include <magic.h> #include <magic.h>
#include <stdlib.h> #include <stdlib.h>
#include <dlfcn.h> #include <dlfcn.h>
#include "HarbourSystem.h"
#define MAGIC_FUNCTIONS(f) \ #define MAGIC_FUNCTIONS(f) \
f(void, magic_close, \ f(void, magic_close, \
@ -45,7 +46,7 @@
#define MAGIC_NUM_FUNCTIONS (sizeof(magic_names)/sizeof(magic_names[0])) #define MAGIC_NUM_FUNCTIONS (sizeof(magic_names)/sizeof(magic_names[0]))
#define MAGIC_NO_HANDLE ((void*)-1) #define MAGIC_NO_HANDLE ((void*)-1)
#define MAGIC_SO "/usr/lib/libmagic.so.1" #define MAGIC_SO "libmagic.so.1"
static const char* magic_names[] = { static const char* magic_names[] = {
"magic_open", "magic_open",
@ -69,7 +70,7 @@ static struct {
magic_t magic_open(int flags) magic_t magic_open(int flags)
{ {
if (!magic.handle) { if (!magic.handle) {
magic.handle = dlopen(MAGIC_SO, RTLD_LAZY); magic.handle = HarbourDlopen(MAGIC_SO, RTLD_LAZY);
if (magic.handle) { if (magic.handle) {
unsigned int i; unsigned int i;
for (i=0; i<MAGIC_NUM_FUNCTIONS; i++) { for (i=0; i<MAGIC_NUM_FUNCTIONS; i++) {

View file

@ -1,6 +1,6 @@
/* /*
* Copyright (C) 2015 Jolla Ltd. * Copyright (C) 2015-2020 Jolla Ltd.
* Contact: Slava Monich <slava.monich@jolla.com> * Copyright (C) 2015-2020 Slava Monich <slava.monich@jolla.com>
* *
* You may use this file under the terms of the BSD license as follows: * You may use this file under the terms of the BSD license as follows:
* *
@ -8,15 +8,15 @@
* modification, are permitted provided that the following conditions * modification, are permitted provided that the following conditions
* are met: * are met:
* *
* * Redistributions of source code must retain the above copyright * 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in * notice, this list of conditions and the following disclaimer
* the documentation and/or other materials provided with the * in the documentation and/or other materials provided with the
* distribution. * distribution.
* * Neither the name of Nemo Mobile nor the names of its contributors * 3. Neither the names of the copyright holders nor the names of its
* may be used to endorse or promote products derived from this * contributors may be used to endorse or promote products derived
* software without specific prior written permission. * from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@ -34,6 +34,7 @@
#include <libudev.h> #include <libudev.h>
#include <stdlib.h> #include <stdlib.h>
#include <dlfcn.h> #include <dlfcn.h>
#include "HarbourSystem.h"
#define LIBUDEV_FUNCTIONS(f) \ #define LIBUDEV_FUNCTIONS(f) \
f(struct udev*, udev_unref,\ f(struct udev*, udev_unref,\
@ -78,7 +79,7 @@
#define LIBUDEV_NUM_FUNCTIONS (sizeof(libudev_names)/sizeof(libudev_names[0])) #define LIBUDEV_NUM_FUNCTIONS (sizeof(libudev_names)/sizeof(libudev_names[0]))
#define LIBUDEV_NO_HANDLE ((void*)-1) #define LIBUDEV_NO_HANDLE ((void*)-1)
#define LIBUDEV_SO "/usr/lib/libudev.so.1" #define LIBUDEV_SO "libudev.so.1"
static const char* libudev_names[] = { static const char* libudev_names[] = {
"udev_new", "udev_new",
@ -103,7 +104,7 @@ struct udev*
udev_new() udev_new()
{ {
if (!libudev.handle) { if (!libudev.handle) {
libudev.handle = dlopen(LIBUDEV_SO, RTLD_LAZY); libudev.handle = HarbourDlopen(LIBUDEV_SO, RTLD_LAZY);
if (libudev.handle) { if (libudev.handle) {
unsigned int i; unsigned int i;
for (i=0; i<LIBUDEV_NUM_FUNCTIONS; i++) { for (i=0; i<LIBUDEV_NUM_FUNCTIONS; i++) {

@ -1 +1 @@
Subproject commit 34b011600b50470fae2148f77e59d4a1ae6ae849 Subproject commit 953cce863a85fc431cba0ebd936789e0f2fa25dc