Skip to content

Commit

Permalink
version 0.9
Browse files Browse the repository at this point in the history
  • Loading branch information
lynncui00 committed Jun 21, 2016
1 parent 20ecb9f commit 1422330
Show file tree
Hide file tree
Showing 227 changed files with 38,545 additions and 0 deletions.
11 changes: 11 additions & 0 deletions AUTHORS
@@ -0,0 +1,11 @@
# Names should be added to this file like so:
# Name or Organization <email address>

Tencent Inc.

Sifan Liu
Ming Chen
Haochuan Cui
Duokai Huang
Junechao Chen

93 changes: 93 additions & 0 deletions INSTALL
@@ -0,0 +1,93 @@
Installation Instructions
*************************

Copyright (C) 2016 Tencent.

This file is free documentation; the Free Software Foundation gives
unlimited permission to copy, distribute and modify it.

PhxPaxos-Specific Installation Notes
====================================

*** NOTE FOR 64-BIT LINUX SYSTEMS

The PhxPaxos library has to be built on 64-bit systems or you may
experience some problems.

Basic Installation
==================

Briefly, the shell commands `sh autoinstall.sh; make;' should configure
and build this package. The following more-detailed instructions are
generic; see the `README' file for instructions specific to this package.

The `autoinstall.sh' shell script attempts to guess correct values
for various system-dependent variables used during compilation. It
uses those values and Makefile.define in each directory which describes
the source files infomation to create a `Makefile' in each directory of
the package.

The file `makefile.mk' is used to set options of the compilation
environment. You need modify it if you want to change the options including
the paths of the third party libraries, like glog, leveldb, and protobuf.

The grpc library is required if you want to complile the example
source.

The simplest way to compile this package is:
1. Make sure the third party libraries, protobuf (3.0 or above) and
leveldb, have been installed in the system. If you want to test the
samples, libraries of glog and grpc are also required.

2. `cd' to the directory containing the package's source code and type
`sh autoinstall.sh' to configure the package for your system.

3. Type `make' to compile the package.

4. Type `make install' to install the programs and any data files and
documentation.

5. You can remove the program binaries and object files from the source
code directory by typing `make clean'.

Compilers and Options
=====================

Glibc 2.12 or above, as well as 64bit option and C++ 11 support in compiler,
is required to build the library.

If you want to include more options, modifying the makefile.mk file in
the source code directory is a good idea.

Installation Position--------------TODO
=====================

Libraries are under ./lib and include files are under ./include, related to
the local source code directory.

Installation Names
==================

By default, `make install' installs the package's commands under
`./lib', include files under `./include', etc. You
can specify an installation prefix by giving `autointall.sh' the option
`--prefix=PREFIX'.

Installation Plugin
==============

Usage of Plugin can be found in plugin directory

The simplest way to compile this plugin is:

1. `cd plugin' to the plugin directory containing the plugin library's
source code.

2. Type `make' to compile the plugin.

3. Type `make install' to install the programs and any data files and
documentation.

4. You can remove the program binaries and object files from the source
code directory by typing `make clean'.

215 changes: 215 additions & 0 deletions LICENSE
@@ -0,0 +1,215 @@
Tencent is pleased to support the open source community by making
PhxPaxos available.

See the AUTHORS file for names of contributors.

Copyright (C) 2016 THL A29 Limited, a Tencent company.
All rights reserved.
If you have downloaded a copy of the PhxPaxos binary from Tencent,
please note that the PhxPaxos binary is licensed under
the BSD 3-Clause License.
If you have downloaded a copy of the PhxPaxos source code from
Tencent, please note that PhxPaxos source code is licensed under
the BSD 3-Clause License, except for the third-party components
listed below which are subject to different license terms. Your
integration of PhxPaxos into your own projects may require
compliance with the BSD 3-Clause License, as well as the other
licenses applicable to the third-party components included within
PhxPaxos.

A copy of the BSD 3-Clause License is included in this file.
Other dependencies and licenses:

Open Source Software Licensed under the OpenSSL License:
------------------------------------------------------------------
1. OpenSSL 1.0.2h
Copyright (c) 1998-2016 The OpenSSL Project.
All rights reserved.
Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
All rights reserved.


Terms of the OpenSSL License:
------------------------------------------------------------------

OpenSSL
The OpenSSL toolkit stays under a dual license, i.e. both the
conditions of the OpenSSL License and the original SSLeay license
apply to the toolkit. The contents of this file are subject to
OpenSSL License; you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.openssl.org/source/license.html

Copyright (c) 1998-2016 The OpenSSL Project.
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.

3. All advertising materials mentioning features or use of this
software must display the following acknowledgment:
"This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit. (http://www.openssl.org/)"

4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be
used to endorse or promote products derived from this software
without prior written permission. For written permission, please
contact openssl-core@openssl.org.

5. Products derived from this software may not be called "OpenSSL"
nor may "OpenSSL" appear in their names without prior written
permission of the OpenSSL Project.

6. Redistributions of any form whatsoever must retain the following
acknowledgment:
"This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/)"

THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
OF SUCH DAMAGE.

* This product includes cryptographic software written by Eric Young
(eay@cryptsoft.com). This product includes software written by
Tim Hudson (tjh@cryptsoft.com).

====================================================================

The contents of this file are subject to SSLeay License; you may not
use this file except in compliance with the License. You may obtain
a copy of the License at

http://www.openssl.org/source/license.html
Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
All rights reserved.

This package is an SSL implementation written by Eric Young
(eay@cryptsoft.com).
The implementation was written so as to conform with Netscapes SSL.
This library is free for commercial and non-commercial use as long
as the following conditions are aheared to. The following conditions
apply to all code found in this distribution, be it the RC4, RSA,
lhash, DES, etc., code; not just the SSL code. The SSL documentation
included with this distribution is covered by the same copyright
terms except that the holder is Tim Hudson (tjh@cryptsoft.com).
Copyright remains Eric Young's, and as such any Copyright notices
in the code are not to be removed. If this package is used in a
product, Eric Young should be given attribution as the author of
the parts of the library used. This can be in the form of a textual
message at program startup or in documentation (online or textual)
provided with the package.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the copyright notice,
this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.

3. All advertising materials mentioning features or use of this
software must display the following acknowledgement:" This product
includes cryptographic software written by Eric Young
(eay@cryptsoft.com)" The word 'cryptographic' can be left out if
the rouines from the library being used are not cryptographic
related :-).

4. If you include any Windows specific code (or a derivative thereof)
from the apps directory (application code) you must include an
acknowledgement: "This product includes software written by Tim Hudson
(tjh@cryptsoft.com)"

THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND ANY EXPRESS
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
OF SUCH DAMAGE.

The licence and distribution terms for any publically available
version or derivative of this code cannot be changed. i.e. this
code cannot simply be copied and put under another distribution
licence [including the GNU Public Licence.]


Open Source Software Licensed under the BSD 3-Clause License:
--------------------------------------------------------------------
1. grpc 0.14.0.dev0
Copyright 2015, Google Inc.
All rights reserved.

2. glog 0.3.3
Copyright (c) 2008, Google Inc.
All rights reserved.
Copyright (c) 2003-2008, Jouni Malinen <j@w1.fi> and contributors
All Rights Reserved.

3. leveldb 1.1
Copyright (c) 2011 The LevelDB Authors.
All rights reserved.

4. protobuf 3.0.0-beta-1
Copyright 2014, Google Inc.
All rights reserved.

5. googletest 1.6.0
Copyright 2008, Google Inc.
All rights reserved.


Terms of the BSD 3-Clause License:
--------------------------------------------------------------------

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

1 Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.

2 Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.

3 Neither the name of [copyright holder] nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

0 comments on commit 1422330

Please sign in to comment.