package init

This commit is contained in:
fun_yang 2020-03-09 16:11:47 +08:00
parent 7bd506c9c8
commit bf4918b8b8
9 changed files with 674 additions and 73 deletions

View File

@ -1,36 +0,0 @@
# ogdi
#### Description
Open Geographic Datastore Interface.
#### Software Architecture
Software architecture description
#### Installation
1. xxxx
2. xxxx
3. xxxx
#### Instructions
1. xxxx
2. xxxx
3. xxxx
#### Contribution
1. Fork the repository
2. Create Feat_xxx branch
3. Commit your code
4. Create Pull Request
#### Gitee Feature
1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
2. Gitee blog [blog.gitee.com](https://blog.gitee.com)
3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
4. The most valuable open source project [GVP](https://gitee.com/gvp)
5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)

View File

@ -1,37 +0,0 @@
# ogdi
#### 介绍
Open Geographic Datastore Interface.
#### 软件架构
软件架构说明
#### 安装教程
1. xxxx
2. xxxx
3. xxxx
#### 使用说明
1. xxxx
2. xxxx
3. xxxx
#### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
#### 码云特技
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com)
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目
4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)

View File

@ -0,0 +1,33 @@
--- a/contrib/gdal/gdalbridge.c.orig 2017-07-13 20:51:22.011367003 +0200
+++ b/contrib/gdal/gdalbridge.c 2017-07-13 20:52:07.545483445 +0200
@@ -124,7 +124,7 @@
if( pfnTest == NULL )
{
- sprintf( szPath, papszSOFilenames[iSOFile] );
+ strcpy( szPath, papszSOFilenames[iSOFile] );
pfnTest = GBGetSymbol( szPath, "GDALOpen" );
}
}
--- a/ogdi/driver/vrf/feature.c.sailer 2007-05-09 22:46:28.000000000 +0200
+++ b/ogdi/driver/vrf/feature.c 2017-07-13 21:01:57.790235052 +0200
@@ -1385,7 +1385,8 @@
return NULL;
}
strcat(returnString,"{ ");
- strcat(returnString,ptr1);
+ if (ptr1)
+ strcat(returnString,ptr1);
strcat(returnString," } ");
free(ptr1);
}
@@ -1414,7 +1415,8 @@
return NULL;
}
strcat(returnString,"{ ");
- strcat(returnString,ptr1);
+ if (ptr1)
+ strcat(returnString,ptr1);
strcat(returnString," } ");
free(ptr1);
}

82
ogdi-3.2.1-cleanup.patch Normal file
View File

@ -0,0 +1,82 @@
diff --git a/aclocal.m4 b/acinclude.m4
similarity index 88%
rename from aclocal.m4
rename to acinclude.m4
index 163a446..9d3308e 100644
--- a/aclocal.m4
+++ b/acinclude.m4
@@ -1,4 +1,4 @@
-AC_DEFUN(AC_COMPILER_WFLAGS,
+AC_DEFUN([AC_COMPILER_WFLAGS],
[
# Remove -g from compile flags, we will add via CFG variable if
# we need it.
@@ -8,17 +8,17 @@ AC_DEFUN(AC_COMPILER_WFLAGS,
# check for GNU compiler, and use -Wall
if test "$GCC" = "yes"; then
C_WFLAGS="-Wall"
- AC_DEFINE(USE_GNUCC)
+ AC_DEFINE([USE_GNUCC])
fi
if test "$GXX" = "yes"; then
CXX_WFLAGS="-Wall"
- AC_DEFINE(USE_GNUCC)
+ AC_DEFINE([USE_GNUCC])
fi
- AC_SUBST(CXX_WFLAGS,$CXX_WFLAGS)
- AC_SUBST(C_WFLAGS,$C_WFLAGS)
+ AC_SUBST([CXX_WFLAGS],$CXX_WFLAGS)
+ AC_SUBST([C_WFLAGS],$C_WFLAGS)
])
-AC_DEFUN(AC_COMPILER_PIC,
+AC_DEFUN([AC_COMPILER_PIC],
[
echo 'void f(){}' > conftest.c
if test -z "`${CC-cc} -fPIC -c conftest.c 2>&1`"; then
@@ -33,8 +33,8 @@ AC_DEFUN(AC_COMPILER_PIC,
fi
rm -f conftest*
- AC_SUBST(CXX_PIC,$CXX_PIC)
- AC_SUBST(C_PIC,$C_PIC)
+ AC_SUBST([CXX_PIC],$CXX_PIC)
+ AC_SUBST([C_PIC],$C_PIC)
])
dnl
@@ -42,7 +42,7 @@ dnl Try to find something to link shared libraries with. Use "c++ -shared"
dnl in preference to "ld -shared" because it will link in required c++
dnl run time support for us.
dnl
-AC_DEFUN(AC_LD_SHARED,
+AC_DEFUN([AC_LD_SHARED],
[
echo 'void g(); int main(){ g(); return 0; }' > conftest1.c
@@ -88,7 +88,7 @@ AC_DEFUN(AC_LD_SHARED,
fi
rm -f conftest* libconftest*
- AC_SUBST(LD_SHARED,$LD_SHARED)
+ AC_SUBST([LD_SHARED],$LD_SHARED)
])
diff --git a/config/generic.mak.in b/config/generic.mak.in
index 699166b..355a53a 100644
--- a/config/generic.mak.in
+++ b/config/generic.mak.in
@@ -35,10 +35,10 @@ AR = ar cr
# Compilation and linking flags
#
SHLIB_CFLAGS = @C_PIC@
-COMMON_CFLAGS = $(OPTIMIZATION) @CFLAGS@ @C_WFLAGS@ -DUNIX=1
+COMMON_CFLAGS = $(OPTIMIZATION) @CFLAGS@ @C_WFLAGS@ -DUNIX=1 @C_PIC@
SHLIB_LDFLAGS = -shared
-COMMON_LDFLAGS = $(OPTIMIZATION)
+COMMON_LDFLAGS = $(OPTIMIZATION) @LDFLAGS@
RPC_INCLUDES = @RPC_INCLUDES@

View File

@ -0,0 +1,37 @@
From eca8d50827e2085df41950117bc295ec99ebdfaf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dan=20Hor=C3=A1k?= <dan@danny.cz>
Date: Wed, 4 Apr 2018 10:51:03 +0200
Subject: [PATCH] set CPPFLAGS so check for rpc/pmap_clnt.h doesn't fail when
libtirpc is used
---
configure | 2 +-
configure.in | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
index 54a75c0..c7dfbea 100755
--- a/configure
+++ b/configure
@@ -3689,7 +3689,7 @@ else
RPC_LIBS=$pkg_cv_RPC_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
-
+ CPPFLAGS="$CPPFLAGS $RPC_CFLAGS"
fi
fi
diff --git a/configure.in b/configure.in
index ccdc7f3..8aae6e4 100644
--- a/configure.in
+++ b/configure.in
@@ -43,7 +43,7 @@ dnl ---------------------------------------------------------------------------
dnl Do we have rpc/rpc.h
dnl ---------------------------------------------------------------------------
AC_CHECK_HEADERS([rpc/rpc.h],,
- [PKG_CHECK_MODULES([RPC], [libtirpc])])
+ [PKG_CHECK_MODULES([RPC], [libtirpc], [CPPFLAGS="$CPPFLAGS $RPC_CFLAGS"])])
dnl ---------------------------------------------------------------------------
dnl Do we have rpc/pmap_clnt.h, float.h, dlfcn.h?

387
ogdi-3.2.1-rpc.patch Normal file
View File

@ -0,0 +1,387 @@
From f37ca84ec1e2ef8e252cf2d047b14eb787eefd76 Mon Sep 17 00:00:00 2001
From: Dennis Schridde <devurandom@gmx.net>
Date: Tue, 28 Nov 2017 23:25:41 +0100
Subject: [PATCH] Fall back to libtirpc if libc does not provide rpc/rpc.h
---
config/generic.mak.in | 4 +-
configure | 245 +++++++++++++++++++++++++++++++++++++++++++++++++-
configure.in | 6 ++
ogdi-config.in | 4 +-
ogdi.pc.in | 4 +-
5 files changed, 255 insertions(+), 8 deletions(-)
diff --git a/config/generic.mak.in b/config/generic.mak.in
index 355a53a..12a15ce 100644
--- a/config/generic.mak.in
+++ b/config/generic.mak.in
@@ -35,7 +35,7 @@ AR = ar cr
# Compilation and linking flags
#
SHLIB_CFLAGS = @C_PIC@
-COMMON_CFLAGS = $(OPTIMIZATION) @CFLAGS@ @C_WFLAGS@ -DUNIX=1 @C_PIC@
+COMMON_CFLAGS = $(OPTIMIZATION) @CFLAGS@ @C_WFLAGS@ -DUNIX=1 @C_PIC@ @RPC_CFLAGS@
SHLIB_LDFLAGS = -shared
COMMON_LDFLAGS = $(OPTIMIZATION) @LDFLAGS@
@@ -61,7 +61,7 @@ INST_BIN = @bindir@
#
#RPC_LINKLIB = -lrpcsvc -lnsl -lsocket
#RPC_LINKLIB = -ldl -ldbmalloc
-RPC_LINKLIB = @LIBS@
+RPC_LINKLIB = @LIBS@ @RPC_LIBS@
#
# Endian definition, could be little or big
diff --git a/configure b/configure
index c69d337..54a75c0 100755
--- a/configure
+++ b/configure
@@ -634,6 +634,8 @@ PROJ_INCLUDE
PROJ_SETTING
BIG_ENDIAN
RPC_INCLUDES
+RPC_LIBS
+RPC_CFLAGS
EGREP
GREP
CPP
@@ -643,6 +645,9 @@ CXX_PIC
C_WFLAGS
CXX_WFLAGS
HAVE_ICONV
+PKG_CONFIG_LIBDIR
+PKG_CONFIG_PATH
+PKG_CONFIG
OBJEXT
EXEEXT
ac_ct_CC
@@ -715,7 +720,12 @@ CFLAGS
LDFLAGS
LIBS
CPPFLAGS
-CPP'
+PKG_CONFIG
+PKG_CONFIG_PATH
+PKG_CONFIG_LIBDIR
+CPP
+RPC_CFLAGS
+RPC_LIBS'
# Initialize some variables set by options.
@@ -1355,7 +1365,14 @@ Some influential environment variables:
LIBS libraries to pass to the linker, e.g. -l<library>
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
+ PKG_CONFIG path to pkg-config utility
+ PKG_CONFIG_PATH
+ directories to add to pkg-config's search path
+ PKG_CONFIG_LIBDIR
+ path overriding pkg-config's built-in search path
CPP C preprocessor
+ RPC_CFLAGS C compiler flags for RPC, overriding pkg-config
+ RPC_LIBS linker flags for RPC, overriding pkg-config
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
@@ -2879,6 +2896,126 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+
+if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_PKG_CONFIG+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $PKG_CONFIG in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+ ;;
+esac
+fi
+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
+if test -n "$PKG_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
+$as_echo "$PKG_CONFIG" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_path_PKG_CONFIG"; then
+ ac_pt_PKG_CONFIG=$PKG_CONFIG
+ # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $ac_pt_PKG_CONFIG in
+ [\\/]* | ?:[\\/]*)
+ ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
+ ;;
+ *)
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+ ;;
+esac
+fi
+ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
+if test -n "$ac_pt_PKG_CONFIG"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
+$as_echo "$ac_pt_PKG_CONFIG" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_pt_PKG_CONFIG" = x; then
+ PKG_CONFIG=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ PKG_CONFIG=$ac_pt_PKG_CONFIG
+ fi
+else
+ PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
+fi
+
+fi
+if test -n "$PKG_CONFIG"; then
+ _pkg_min_version=0.9.0
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
+$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; }
+ if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ PKG_CONFIG=""
+ fi
+fi
+
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
$as_echo_n "checking for dlopen in -ldl... " >&6; }
if ${ac_cv_lib_dl_dlopen+:} false; then :
@@ -3057,7 +3194,6 @@ HAVE_ICONV=$HAVE_ICONV
-
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -3455,6 +3591,111 @@ fi
done
+for ac_header in rpc/rpc.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "rpc/rpc.h" "ac_cv_header_rpc_rpc_h" "$ac_includes_default"
+if test "x$ac_cv_header_rpc_rpc_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RPC_RPC_H 1
+_ACEOF
+
+else
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libtirpc" >&5
+$as_echo_n "checking for libtirpc... " >&6; }
+
+if test -n "$RPC_CFLAGS"; then
+ pkg_cv_RPC_CFLAGS="$RPC_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtirpc\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libtirpc") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_RPC_CFLAGS=`$PKG_CONFIG --cflags "libtirpc" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$RPC_LIBS"; then
+ pkg_cv_RPC_LIBS="$RPC_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtirpc\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libtirpc") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_RPC_LIBS=`$PKG_CONFIG --libs "libtirpc" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi
+ if test $_pkg_short_errors_supported = yes; then
+ RPC_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libtirpc" 2>&1`
+ else
+ RPC_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libtirpc" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$RPC_PKG_ERRORS" >&5
+
+ as_fn_error $? "Package requirements (libtirpc) were not met:
+
+$RPC_PKG_ERRORS
+
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
+installed software in a non-standard prefix.
+
+Alternatively, you may set the environment variables RPC_CFLAGS
+and RPC_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details." "$LINENO" 5
+elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
+is in your PATH or set the PKG_CONFIG environment variable to the full
+path to pkg-config.
+
+Alternatively, you may set the environment variables RPC_CFLAGS
+and RPC_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.
+
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ RPC_CFLAGS=$pkg_cv_RPC_CFLAGS
+ RPC_LIBS=$pkg_cv_RPC_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+fi
+fi
+
+done
+
+
for ac_header in rpc/pmap_clnt.h float.h dlfcn.h
do :
as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
diff --git a/configure.in b/configure.in
index 0a1526b..ccdc7f3 100644
--- a/configure.in
+++ b/configure.in
@@ -23,6 +23,7 @@ fi
dnl Checks for programs.
AC_PROG_CC
+PKG_PROG_PKG_CONFIG
dnl We always want to check /usr/local for stuff.
dnl LIBS="$LIBS -L/usr/local/lib"
@@ -38,6 +39,11 @@ AC_COMPILER_WFLAGS
AC_COMPILER_PIC
AC_LD_SHARED
+dnl ---------------------------------------------------------------------------
+dnl Do we have rpc/rpc.h
+dnl ---------------------------------------------------------------------------
+AC_CHECK_HEADERS([rpc/rpc.h],,
+ [PKG_CHECK_MODULES([RPC], [libtirpc])])
dnl ---------------------------------------------------------------------------
dnl Do we have rpc/pmap_clnt.h, float.h, dlfcn.h?
diff --git a/ogdi-config.in b/ogdi-config.in
index f3c9a03..c6dfc50 100644
--- a/ogdi-config.in
+++ b/ogdi-config.in
@@ -13,8 +13,8 @@ exec_prefix="@exec_prefix@"
libdir="@libdir@"
includedir="@includedir@/ogdi"
libs="-logdi"
-all_libs="-logdi -lproj -lexpat -lz"
-I_opts="-I${includedir}"
+all_libs="-logdi -lproj -lexpat -lz @RPC_LIBS@"
+I_opts="-I${includedir} @RPC_CFLAGS@"
L_opts=""
R_opts=""
cppflags=""
diff --git a/ogdi.pc.in b/ogdi.pc.in
index 8b919de..1f290d9 100644
--- a/ogdi.pc.in
+++ b/ogdi.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
Name: ogdi
Description: Open Geographic Datastore Interface
Version: @OGDI_VERSION@
-Cflags: -I${includedir}/ogdi
+Cflags: -I${includedir}/ogdi @RPC_CFLAGS@
Libs: -L${libdir} -logdi
-Libs.private: -lproj -lexpat -lz
+Libs.private: -lproj -lexpat -lz @RPC_LIBS@

BIN
ogdi-3.2.1.tar.gz Normal file

Binary file not shown.

BIN
ogdi.pdf Normal file

Binary file not shown.

135
ogdi.spec Normal file
View File

@ -0,0 +1,135 @@
Name: ogdi
Version: 3.2.1
Release: 3
Summary: Open Geographic Datastore Interface
License: BSD
URL: http://ogdi.sourceforge.net/
# https://github.com/libogdi/ogdi/archive/ogdi_3_2_1.tar.gz
Source0: %{name}-%{version}.tar.gz
Source1: http://ogdi.sourceforge.net/ogdi.pdf
#To modify sprintf without a format string
Patch0000: ogdi-3.2.0.beta2-sailer.patch
#To switch to libtirpc
Patch0001: ogdi-3.2.1-cleanup.patch
#https://github.com/libogdi/ogdi/pull/6/
Patch0002: ogdi-3.2.1-rpc.patch
Patch0003: ogdi-3.2.1-rpc-flags.patch
BuildRequires: gcc unixODBC-devel zlib-devel expat-devel
BuildRequires: proj-devel tcl-devel libtirpc-devel
%description
OGDI is an open geographic data storage interface. OGDI is an application
programming interface (API) that uses standardized access methods in combination
with GIS software packages (the application) and various geospatial data products.
OGDI uses a client / server architecture to facilitate the dissemination of
geospatial data products on any TCP / IP network, and uses a driver-oriented
approach to facilitate access to several geospatial data products / formats.
%package devel
Summary: OGDI header files and documentation
Requires: %{name} = %{version}-%{release}
Requires: pkgconfig zlib-devel expat-devel proj-devel
%description devel
OGDI header files and developer's documentation.
%package odbc
Summary: ODBC driver for OGDI
Requires: %{name} = %{version}-%{release}
%description odbc
ODBC driver for OGDI.
%package tcl
Summary: TCL wrapper for OGDI
Requires: %{name} = %{version}-%{release}
%description tcl
TCL wrapper for OGDI.
%prep
%autosetup -p1 -n %{name}-ogdi_3_2_1
cp -p %{SOURCE1} .
%build
TOPDIR=`pwd`; TARGET=Linux; export TOPDIR TARGET
INST_LIB=%{_libdir}/;export INST_LIB
export CFG=debug
export CFLAGS="$RPM_OPT_FLAGS -DDONT_TD_VOID -DUSE_TERMIO"
%configure --with-binconfigs --with-expat \
--with-proj --with-zlib
make
make -C ogdi/tcl_interface \
TCL_LINKLIB="-ltcl"
make -C contrib/gdal
make -C ogdi/attr_driver/odbc \
ODBC_LINKLIB="-lodbc"
%install
TOPDIR=`pwd`; TARGET=Linux; export TOPDIR TARGET
make install INST_INCLUDE=%{buildroot}%{_includedir}/%{name} \
INST_LIB=%{buildroot}%{_libdir} INST_BIN=%{buildroot}%{_bindir}
make install -C ogdi/tcl_interface INST_LIB=%{buildroot}%{_libdir}
make install -C contrib/gdal INST_LIB=%{buildroot}%{_libdir}
make install -C ogdi/attr_driver/odbc INST_LIB=%{buildroot}%{_libdir}
rm %{buildroot}%{_bindir}/example?
touch -r ogdi-config.in ogdi-config
mkdir -p %{buildroot}%{_libdir}/pkgconfig
install -p -m 644 ogdi.pc %{buildroot}%{_libdir}/pkgconfig/
install -p -m 755 ogdi-config %{buildroot}%{_bindir}/ogdi-config-64
cat > %{buildroot}%{_bindir}/%{name}-config <<EOF
#!/bin/bash
ARCH=\$(uname -m)
case \$ARCH in
x86_64 | aarch64 )
ogdi-config-64 \${*}
;;
*)
ogdi-config-32 \${*}
;;
esac
EOF
chmod 755 %{buildroot}%{_bindir}/%{name}-config
touch -r ogdi-config.in %{buildroot}%{_bindir}/%{name}-config
%files
%doc LICENSE NEWS ChangeLog README
%{_bindir}/gltpd
%{_bindir}/ogdi_*
%{_libdir}/libogdi.so.*
%dir %{_libdir}/ogdi
%exclude %{_libdir}/%{name}/{liblodbc.so,libecs_tcl.so}
%{_libdir}/%{name}/lib*.so
%files devel
%doc ogdi.pdf
%doc ogdi/examples/example1/{example1.c,example2.c}
%{_bindir}/%{name}-config
%{_bindir}/%{name}-config-64
%{_libdir}/pkgconfig/%{name}.pc
%dir %{_includedir}/%{name}
%{_includedir}/%{name}/*.h
%{_libdir}/libogdi.so
%files odbc
%{_libdir}/%{name}/liblodbc.so
%files tcl
%{_libdir}/%{name}/libecs_tcl.so
%changelog
* Wed Mar 04 2020 yangjian<yangjian79@huawei.com> - 3.2.1-3
- Package init