11 Commits

Author SHA1 Message Date
agibert
6a6ae07870 Fix release suffix problem. 2005-01-24 01:34:01 +00:00
agibert
b477d4b154 LibShMem 2.0.0 and LibDataStr 2.0.0 now supported ! 2005-01-24 01:19:50 +00:00
agibert
334f0cbeb1 Update to 2.1.0-1 release,
Cleanup and minor fixes.
2005-01-24 01:19:39 +00:00
agibert
676814b6cf Fix the release date of the 2.1.0 entry. 2005-01-24 00:50:55 +00:00
agibert
f7c1f8bc5f Add 2.1.0 entry: Symbol lookup support, news allocator/desallocator API and forthcoming news LibShMem support. 2005-01-20 00:26:48 +00:00
agibert
652ab987a4 Add DS_Open arg: symbol lookup support. 2005-01-20 00:07:27 +00:00
agibert
0431691352 Add Batch_Run test-*-s.ndb. 2005-01-20 00:05:52 +00:00
agibert
3ad6e01702 Add new DS_Open arg. 2005-01-20 00:05:05 +00:00
agibert
4bf44a1fff Initial Release. 2005-01-20 00:04:22 +00:00
agibert
aa69e7e7b1 Rename _MSC_VER #ifdef into _WIN32 #ifdef. 2005-01-20 00:00:25 +00:00
agibert
29f7064ed0 Re-enable Win32 support.
Rename _MSCVER #ifdef into _WIN32 #ifdef.
2005-01-19 23:59:41 +00:00
18 changed files with 173 additions and 49 deletions

View File

@@ -1,14 +1,14 @@
# $RCSfile: ReadMe.txt,v $
# $Revision: 2.7 $
# $Revision: 2.8 $
# $Name: $
# $Date: 2005/01/19 22:32:05 $
# $Date: 2005/01/24 01:19:50 $
# $Author: agibert $
Welcome to LibNode 2.0.x !
Welcome to LibNode 2.1.x !
@@ -21,7 +21,7 @@ This release of LibNode supports the following OS:
The support of LibVer is now optional (To enable it, use: make _LIBVER_SUPPORT=1 all).
LibShm and LibDataStr are no more supported.
LibNode support LibShMem 2.0.0 and LibDataStr 2.0.0 !

View File

@@ -1,13 +1,26 @@
# $RCSfile: ReleaseNotes.txt,v $
# $Revision: 2.18 $
# $Revision: 2.20 $
# $Name: $
# $Date: 2005/01/19 23:40:40 $
# $Date: 2005/01/24 00:50:55 $
# $Author: agibert $
------------------------------------------------------------------------------------------------------------------------------------
LibNode V 2.1.0-1 - A. Gibert - 24/01/05
------------------------------------------------------------------------------------------------------------------------------------
All: This new LibNode branch (2.1.x) should support the forthcoming new LibShMem branch (2.0.x),
LibNode: Add symbol lookup support for manager, allocator and desallocator functions call,
New Allocator and desallocator API interace,
Code cleanup,
NDBench: DS_Open now support an arg in order to use or not symbol lookup,
Add test-*-s.ndb batch files witch use symbol lookup.
------------------------------------------------------------------------------------------------------------------------------------
LibNode V 2.0.7-1 - A. Gibert - 20/01/05
------------------------------------------------------------------------------------------------------------------------------------

View File

@@ -1,14 +1,14 @@
# $RCSfile: ToDo.txt,v $
# $Revision: 2.4 $
# $Revision: 2.5 $
# $Name: $
# $Date: 2005/01/19 22:37:44 $
# $Date: 2005/01/24 01:19:50 $
# $Author: agibert $
- Re-enable LibShM/LibDataStr support (via symbol lookup support),
- Check LibShMem/LibDataStr support (via symbol lookup support),
- Add Cache Value option,
- New English documentation (man/tex),
- Improve API consitency.

View File

@@ -1,9 +1,9 @@
/*---------------------------------------------------------------------------------*/
/* $RCSfile: node.h,v $ */
/*---------------------------------------------------------------------------------*/
/* $Revision: 2.11 $ */
/* $Revision: 2.12 $ */
/* $Name: $ */
/* $Date: 2005/01/11 20:57:04 $ */
/* $Date: 2005/01/20 00:00:25 $ */
/* $Author: agibert $ */
/*---------------------------------------------------------------------------------*/
@@ -436,7 +436,7 @@ typedef int NDT_Recursive_Offset;
/*------------------------------------------------------------------------------*/
# if defined(_MSC_VER) && !defined(LIBNODE_STATIC)
# if defined(_WIN32) && !defined(LIBNODE_STATIC)
# ifndef _LIBNODE_C_
# define NDD_DLL_API __declspec(dllimport)
# else

View File

@@ -1,9 +1,9 @@
/*---------------------------------------------------------------------------------*/
/* $RCSfile: libnode.c,v $ */
/*---------------------------------------------------------------------------------*/
/* $Revision: 2.14 $ */
/* $Revision: 2.15 $ */
/* $Name: $ */
/* $Date: 2005/01/11 20:57:04 $ */
/* $Date: 2005/01/19 23:59:41 $ */
/* $Author: agibert $ */
/*---------------------------------------------------------------------------------*/
@@ -34,7 +34,7 @@
#include <libnode.h>
#ifdef _LIBVER_SUPPORT
VER_INFO_EXPORT( libnode, "$Revision: 2.14 $", "$Name: $", __FILE__, "$Author: agibert $")
VER_INFO_EXPORT( libnode, "$Revision: 2.15 $", "$Name: $", __FILE__, "$Author: agibert $")
#endif
@@ -63,7 +63,7 @@ NDT_Status ND_Default_Manager( NDT_Root *Root_Ptr, NDT_Index_Id Index_Id, NDT
Command_Name = "NDD_CMD_MANAGER_VERSION";
*Version_Name_Ptr = "$Revision: 2.14 $ $Name: $ $Date: 2005/01/11 20:57:04 $ $Author: agibert $";
*Version_Name_Ptr = "$Revision: 2.15 $ $Name: $ $Date: 2005/01/19 23:59:41 $ $Author: agibert $";
return( NDS_OK);
}
@@ -369,7 +369,7 @@ NDT_Status ND_OpenStruct_Manager( NDT_Root *Root_Ptr, NDT_Index_Id Index_Id,
Command_Name = "NDD_CMD_MANAGER_VERSION";
*Version_Name_Ptr = "$Revision: 2.14 $ $Name: $ $Date: 2005/01/11 20:57:04 $ $Author: agibert $";
*Version_Name_Ptr = "$Revision: 2.15 $ $Name: $ $Date: 2005/01/19 23:59:41 $ $Author: agibert $";
return( NDS_OK);
}
@@ -604,6 +604,7 @@ NDT_Status ND_Library_Open_I( int Debug_Mode)
ND_Library_StdErr_Set_I( stderr);
}
#if !defined(_WIN32)
if( ( NDG_Base.DL_Ptr = dlopen( NULL, ( RTLD_NOW | RTLD_GLOBAL))) == NULL)
{
sprintf( NDG_Base.Err_String, "Error ND_Library_Open: can't dlopen [%s]", dlerror());
@@ -611,6 +612,7 @@ NDT_Status ND_Library_Open_I( int Debug_Mode)
return( NDS_KO);
}
#endif
return( NDS_OK);
}
@@ -679,6 +681,7 @@ NDT_Status ND_Library_Close_I( void)
NDG_Base.Symbol_First_Ptr = (NDT_Symbol *)NULL;
#if !defined(_WIN32)
if( dlclose( NDG_Base.DL_Ptr) != 0)
{
sprintf( NDG_Base.Err_String, "Error ND_Library_Open: can't dlclose [%s]", dlerror());
@@ -686,6 +689,7 @@ NDT_Status ND_Library_Close_I( void)
return( NDS_KO);
}
#endif
NDG_Base.Open_Status = NDD_FALSE;
@@ -928,6 +932,16 @@ NDT_Status ND_DataStruct_Open_I( NDT_Root **Root_Ptr_Ptr, NDT_Index_Nb Index_N
/* Valeurs par défaut des fonctions d'allocation et de désallocation */
#if defined(_WIN32)
if( ( Manager_Name != NULL) && ( Manager_Ptr == NULL))
{
sprintf( NDG_Base.Err_String, "Error ND_DataStruct_Open_I: no symbol lookup support, Manager_Ptr shouldn't be NULL");
ND_Error_Print();
return( NDS_ERRAPI);
}
#endif
if( ( Manager_Name != NULL) || ( Manager_Ptr != NULL))
{
Real_Manager_Name = Manager_Name;
@@ -939,6 +953,16 @@ NDT_Status ND_DataStruct_Open_I( NDT_Root **Root_Ptr_Ptr, NDT_Index_Nb Index_N
Real_Manager_Ptr = ND_Default_Manager;
}
#if defined(_WIN32)
if( ( Allocator_Name != NULL) && ( Allocator_Ptr == NULL))
{
sprintf( NDG_Base.Err_String, "Error ND_DataStruct_Open_I: no symbol lookup support, Allocator_Ptr shouldn't be NULL");
ND_Error_Print();
return( NDS_ERRAPI);
}
#endif
if( ( Allocator_Name != NULL) || ( Allocator_Ptr != NULL))
{
Real_Allocator_Name = Allocator_Name;
@@ -950,6 +974,16 @@ NDT_Status ND_DataStruct_Open_I( NDT_Root **Root_Ptr_Ptr, NDT_Index_Nb Index_N
Real_Allocator_Ptr = ND_Default_Allocator;
}
#if defined(_WIN32)
if( ( Desallocator_Name != NULL) && ( Desallocator_Ptr == NULL))
{
sprintf( NDG_Base.Err_String, "Error ND_DataStruct_Open_I: no symbol lookup support, Desallocator_Ptr shouldn't be NULL");
ND_Error_Print();
return( NDS_ERRAPI);
}
#endif
if( ( Desallocator_Name != NULL) || ( Desallocator_Ptr != NULL))
{
Real_Desallocator_Name = Desallocator_Name;
@@ -4119,6 +4153,7 @@ NDT_Status ND_Desallocator_Exec_C( void *Ptr, NDT_Desallocator_Name Desallocat
NDT_Status ND_Symbol_Find( void **Ptr_Ptr, const char *Symbol_Name)
{
#if !defined(_WIN32)
NDT_Symbol *Symbol_Ptr;
@@ -4166,6 +4201,7 @@ NDT_Status ND_Symbol_Find( void **Ptr_Ptr, const char *Symbol_Name)
NDG_Base.Symbol_First_Ptr = Symbol_Ptr;
}
#endif
return( NDS_OK);
}
@@ -5619,7 +5655,7 @@ void ND_Tree_Link_Recursive_Check( NDT_Node *Node_Ptr, int *Nb_Detected_Ptr,
NDT_Status ND_Address_Check( void *Address)
{
#if !defined(_MSC_VER)
#if !defined(_WIN32)
NDT_Status status;
int rc;
int test;
@@ -5748,7 +5784,7 @@ void ND_Signal_Trap( int Sig_Num)
{
NDG_Base.Sig_Trapped = Sig_Num;
#if !defined(_MSC_VER)
#if !defined(_WIN32)
siglongjmp( NDG_Base.SigLongJmp_Env, 1);
#else
longjmp( NDG_Base.SigLongJmp_Env, 1);

View File

@@ -1,9 +1,9 @@
/*---------------------------------------------------------------------------------*/
/* $RCSfile: libnode.h,v $ */
/*---------------------------------------------------------------------------------*/
/* $Revision: 2.8 $ */
/* $Revision: 2.9 $ */
/* $Name: $ */
/* $Date: 2005/01/11 20:57:04 $ */
/* $Date: 2005/01/19 23:59:42 $ */
/* $Author: agibert $ */
/*---------------------------------------------------------------------------------*/
@@ -87,7 +87,7 @@ typedef struct NDT_Base
char Err_String[512];
FILE *Err_Stream;
int Sig_Trapped;
#if !defined(_MSC_VER)
#if !defined(_WIN32)
sigjmp_buf SigLongJmp_Env;
#else
jmp_buf SigLongJmp_Env;

View File

@@ -1,12 +1,19 @@
Name: libnode
Version: 2.0.7
Release: 1
Version: 2.1.0
%define libnode_name %{name}-%{version}-%{release}
%define release_nb 1
Release: %{release_nb}rx3
%define libnode_name %{name}-%{version}-%{release_nb}
%define source %{libnode_name}.src.tgz
Summary: Manages generic list and/or tree node structures
Copyright: GPL
Copyright: GPL/LGPL
Group: Application/Utilitaires
Distribution: Rx3 OpenSource
Vendor: Rx3
@@ -17,6 +24,8 @@ Url: http://www.rx3.org/dvp/libnode/download/
BuildRoot: %{_tmppath}/%{libnode_name}-buildroot
AutoReqProv: no
%description
Manages generic list and/or tree node structures.
@@ -49,6 +58,11 @@ rm -rf $RPM_BUILD_ROOT
%changelog
* Mon Jan 24 2005 Arnaud G. Gibert <arnaud@rx3.net> 2.1.0-1rx3
- Update to 2.1.0 release,
- Now use "rx3" as release suffix,
- Fix copyright entry.
* Wed Jan 19 2005 Arnaud G. Gibert <arnaud@rx3.net> 2.0.7-1
- Update to 2.0.7 release.

View File

@@ -1,9 +1,9 @@
/*---------------------------------------------------------------------------------*/
/* $RCSfile: ndbench.c,v $ */
/*---------------------------------------------------------------------------------*/
/* $Revision: 2.8 $ */
/* $Revision: 2.9 $ */
/* $Name: $ */
/* $Date: 2004/08/24 20:31:28 $ */
/* $Date: 2005/01/20 00:07:27 $ */
/* $Author: agibert $ */
/*---------------------------------------------------------------------------------*/
@@ -59,7 +59,7 @@
/*---------------------------------------------------------------------------------*/
#ifdef _LIBVER_SUPPORT
VER_INFO_EXPORT( ndbench, "$Revision: 2.8 $", "$Name: $", __FILE__, "$Author: agibert $");
VER_INFO_EXPORT( ndbench, "$Revision: 2.9 $", "$Name: $", __FILE__, "$Author: agibert $");
# define USAGE "Usage : %s [ --help | --version [-v] | --batch_run <batch_file_name>]\n"
#else
# define USAGE "Usage : %s [ --help | --batch_run <batch_file_name>]\n"
@@ -271,7 +271,7 @@ NDT_Status Module_Manager( NDT_Root *Root_Ptr, NDT_Index_Id Index_Id, NDT_Nod
Command_Name = "NDD_CMD_MANAGER_VERSION";
*Version_Name_Ptr = "$Revision: 2.8 $ $Name: $ $Date: 2004/08/24 20:31:28 $ $Author: agibert $";
*Version_Name_Ptr = "$Revision: 2.9 $ $Name: $ $Date: 2005/01/20 00:07:27 $ $Author: agibert $";
return( NDS_OK);
}
@@ -762,13 +762,30 @@ void Command_Exec( NDT_Root **DS_Ptr_Ptr, FILE *File_Output, int Choice, cha
{
Command_Exec_Begin_Print( File_Output, Choice);
if( Arg1 == NULL)
{
fprintf( File_Output, "DataStruct_Open: Symbol Lookup ( 0:OFF | 1:ON) ? ");
fgets( buf, BUF_LEN, File_Input);
Arg1 = buf;
}
Choice = atoi( Arg1);
for( i = 0; i < INDEX_NB; i++)
{
idx_type_tab[i] = NDD_INDEX_STATUS_CLOSED;
}
t_start( t_exec);
if( Choice == 0)
{
ND_DataStruct_Open( DS_Ptr_Ptr, INDEX_NB, idx_type_tab, "Module_Manager", Module_Manager, NULL, NULL, NULL, NULL, NDD_TRUE, NULL);
}
else
{
ND_DataStruct_Open( DS_Ptr_Ptr, INDEX_NB, idx_type_tab, "Module_Manager", NULL, NULL, NULL, NULL, NULL, NDD_TRUE, NULL);
}
t_stop( t_exec);
Command_Exec_End_Print( File_Output, Choice, t_exec, 1);

10
util/test-10-s.ndb Normal file
View File

@@ -0,0 +1,10 @@
Lib_Open 0
DS_Open 1
Index_List_Open 0-0
DS_Value_Add 1-10 0
DS_Value_Find 1-10
Index_List_To_Tree 0-0
DS_Value_Find 1-10
DS_Check
DS_Close
Lib_Close

View File

@@ -1,5 +1,5 @@
Lib_Open 0
DS_Open
DS_Open 0
Index_List_Open 0-0
DS_Value_Add 1-10 0
DS_Value_Find 1-10

10
util/test-100K-s.ndb Normal file
View File

@@ -0,0 +1,10 @@
Lib_Open 0
DS_Open 1
Index_List_Open 0-0
DS_Value_Add 1-100000 0
DS_Value_Find 49900-50100
Index_List_To_Tree 0-0
DS_Value_Find 1-100000
DS_Check
DS_Close
Lib_Close

View File

@@ -1,5 +1,5 @@
Lib_Open 0
DS_Open
DS_Open 0
Index_List_Open 0-0
DS_Value_Add 1-100000 0
DS_Value_Find 49900-50100

10
util/test-10K-s.ndb Normal file
View File

@@ -0,0 +1,10 @@
Lib_Open 0
DS_Open 1
Index_List_Open 0-0
DS_Value_Add 1-10000 0
DS_Value_Find 4000-6000
Index_List_To_Tree 0-0
DS_Value_Find 1-10000
DS_Check
DS_Close
Lib_Close

View File

@@ -1,5 +1,5 @@
Lib_Open 0
DS_Open
DS_Open 0
Index_List_Open 0-0
DS_Value_Add 1-10000 0
DS_Value_Find 4000-6000

10
util/test-1M-s.ndb Normal file
View File

@@ -0,0 +1,10 @@
Lib_Open 0
DS_Open 1
Index_List_Open 0-0
DS_Value_Add 1-1000000 0
DS_Value_Find 499990-500010
Index_List_To_Tree 0-0
DS_Value_Find 1-1000000
DS_Check
DS_Close
Lib_Close

View File

@@ -1,5 +1,5 @@
Lib_Open 0
DS_Open
DS_Open 0
Index_List_Open 0-0
DS_Value_Add 1-1000000 0
DS_Value_Find 499990-500010

View File

@@ -1,5 +1,9 @@
Batch_Run test-error.ndb
Batch_Run test-10.ndb
Batch_Run test-10-s.ndb
Batch_Run test-10K.ndb
Batch_Run test-10K-s.ndb
Batch_Run test-100K.ndb
Batch_Run test-100K-s.ndb
Batch_Run test-1M.ndb
Batch_Run test-1M-s.ndb

View File

@@ -1,11 +1,11 @@
DS_Open
DS_Open 0
Lib_Open 0
DS_Open
DS_Open 0
Index_List_Open 0-0
DS_Value_Add 1-10 0
Lib_Close
Lib_Open 1
DS_Open
DS_Open 0
Index_List_Open 0-0
DS_Value_Add 1-10 0
Index_Value_Break 0-0 0