зеркало из https://github.com/mozilla/pjs.git
More packaging clean ups
This commit is contained in:
Родитель
9e25525e7b
Коммит
b5827192eb
|
@ -20,5 +20,21 @@ and optimized versions. Perl must already be built and installed in \.
|
|||
|
||||
Helper components
|
||||
|
||||
Mstone can build and package perl, gnuplot, and gd. This is currently
|
||||
being re-worked, but should be fixed soon.
|
||||
Mstone can build and package perl, gnuplot, and gd. These will be
|
||||
automatically built and packaged if they are present.
|
||||
|
||||
Unpack gd1.3 or later in the mstone directory. You can probably find
|
||||
gd from here: http://www.boutell.com/gd/. The directory should look
|
||||
like gd1.3. Right now we need the (obsolete) version 1.3 to generate
|
||||
GIF files (without patented run-length coding). The scripts need to
|
||||
be updated to be able to handle PNG files, too.
|
||||
|
||||
Unpack gnuplot 3.7 or later in the mstone directory. You can probably
|
||||
find gnuplot from http://www.cs.dartmouth.edu/gnuplot_info.html. The
|
||||
directory should look like gnuplot-3.7 (the exact version should not
|
||||
matter). Gnuplot requres gd to generate GIFs (which is what we need).
|
||||
|
||||
Unpack perl 5.005 or later in the mstone directory. You can probably
|
||||
find perl from http://www.perl.com/pub/language/info/software.html.
|
||||
The directory should look like perl5.005_03 (the exact version should
|
||||
not matter).
|
||||
|
|
535
mstone/LICENSE
535
mstone/LICENSE
|
@ -1,535 +0,0 @@
|
|||
MOZILLA PUBLIC LICENSE
|
||||
Version 1.1
|
||||
|
||||
---------------
|
||||
|
||||
1. Definitions.
|
||||
|
||||
1.0.1. "Commercial Use" means distribution or otherwise making the
|
||||
Covered Code available to a third party.
|
||||
|
||||
1.1. "Contributor" means each entity that creates or contributes to
|
||||
the creation of Modifications.
|
||||
|
||||
1.2. "Contributor Version" means the combination of the Original
|
||||
Code, prior Modifications used by a Contributor, and the Modifications
|
||||
made by that particular Contributor.
|
||||
|
||||
1.3. "Covered Code" means the Original Code or Modifications or the
|
||||
combination of the Original Code and Modifications, in each case
|
||||
including portions thereof.
|
||||
|
||||
1.4. "Electronic Distribution Mechanism" means a mechanism generally
|
||||
accepted in the software development community for the electronic
|
||||
transfer of data.
|
||||
|
||||
1.5. "Executable" means Covered Code in any form other than Source
|
||||
Code.
|
||||
|
||||
1.6. "Initial Developer" means the individual or entity identified
|
||||
as the Initial Developer in the Source Code notice required by Exhibit
|
||||
A.
|
||||
|
||||
1.7. "Larger Work" means a work which combines Covered Code or
|
||||
portions thereof with code not governed by the terms of this License.
|
||||
|
||||
1.8. "License" means this document.
|
||||
|
||||
1.8.1. "Licensable" means having the right to grant, to the maximum
|
||||
extent possible, whether at the time of the initial grant or
|
||||
subsequently acquired, any and all of the rights conveyed herein.
|
||||
|
||||
1.9. "Modifications" means any addition to or deletion from the
|
||||
substance or structure of either the Original Code or any previous
|
||||
Modifications. When Covered Code is released as a series of files, a
|
||||
Modification is:
|
||||
A. Any addition to or deletion from the contents of a file
|
||||
containing Original Code or previous Modifications.
|
||||
|
||||
B. Any new file that contains any part of the Original Code or
|
||||
previous Modifications.
|
||||
|
||||
1.10. "Original Code" means Source Code of computer software code
|
||||
which is described in the Source Code notice required by Exhibit A as
|
||||
Original Code, and which, at the time of its release under this
|
||||
License is not already Covered Code governed by this License.
|
||||
|
||||
1.10.1. "Patent Claims" means any patent claim(s), now owned or
|
||||
hereafter acquired, including without limitation, method, process,
|
||||
and apparatus claims, in any patent Licensable by grantor.
|
||||
|
||||
1.11. "Source Code" means the preferred form of the Covered Code for
|
||||
making modifications to it, including all modules it contains, plus
|
||||
any associated interface definition files, scripts used to control
|
||||
compilation and installation of an Executable, or source code
|
||||
differential comparisons against either the Original Code or another
|
||||
well known, available Covered Code of the Contributor's choice. The
|
||||
Source Code can be in a compressed or archival form, provided the
|
||||
appropriate decompression or de-archiving software is widely available
|
||||
for no charge.
|
||||
|
||||
1.12. "You" (or "Your") means an individual or a legal entity
|
||||
exercising rights under, and complying with all of the terms of, this
|
||||
License or a future version of this License issued under Section 6.1.
|
||||
For legal entities, "You" includes any entity which controls, is
|
||||
controlled by, or is under common control with You. For purposes of
|
||||
this definition, "control" means (a) the power, direct or indirect,
|
||||
to cause the direction or management of such entity, whether by
|
||||
contract or otherwise, or (b) ownership of more than fifty percent
|
||||
(50%) of the outstanding shares or beneficial ownership of such
|
||||
entity.
|
||||
|
||||
2. Source Code License.
|
||||
|
||||
2.1. The Initial Developer Grant.
|
||||
The Initial Developer hereby grants You a world-wide, royalty-free,
|
||||
non-exclusive license, subject to third party intellectual property
|
||||
claims:
|
||||
(a) under intellectual property rights (other than patent or
|
||||
trademark) Licensable by Initial Developer to use, reproduce,
|
||||
modify, display, perform, sublicense and distribute the Original
|
||||
Code (or portions thereof) with or without Modifications, and/or
|
||||
as part of a Larger Work; and
|
||||
|
||||
(b) under Patents Claims infringed by the making, using or
|
||||
selling of Original Code, to make, have made, use, practice,
|
||||
sell, and offer for sale, and/or otherwise dispose of the
|
||||
Original Code (or portions thereof).
|
||||
|
||||
(c) the licenses granted in this Section 2.1(a) and (b) are
|
||||
effective on the date Initial Developer first distributes
|
||||
Original Code under the terms of this License.
|
||||
|
||||
(d) Notwithstanding Section 2.1(b) above, no patent license is
|
||||
granted: 1) for code that You delete from the Original Code; 2)
|
||||
separate from the Original Code; or 3) for infringements caused
|
||||
by: i) the modification of the Original Code or ii) the
|
||||
combination of the Original Code with other software or devices.
|
||||
|
||||
2.2. Contributor Grant.
|
||||
Subject to third party intellectual property claims, each Contributor
|
||||
hereby grants You a world-wide, royalty-free, non-exclusive license
|
||||
|
||||
(a) under intellectual property rights (other than patent or
|
||||
trademark) Licensable by Contributor, to use, reproduce, modify,
|
||||
display, perform, sublicense and distribute the Modifications
|
||||
created by such Contributor (or portions thereof) either on an
|
||||
unmodified basis, with other Modifications, as Covered Code
|
||||
and/or as part of a Larger Work; and
|
||||
|
||||
(b) under Patent Claims infringed by the making, using, or
|
||||
selling of Modifications made by that Contributor either alone
|
||||
and/or in combination with its Contributor Version (or portions
|
||||
of such combination), to make, use, sell, offer for sale, have
|
||||
made, and/or otherwise dispose of: 1) Modifications made by that
|
||||
Contributor (or portions thereof); and 2) the combination of
|
||||
Modifications made by that Contributor with its Contributor
|
||||
Version (or portions of such combination).
|
||||
|
||||
(c) the licenses granted in Sections 2.2(a) and 2.2(b) are
|
||||
effective on the date Contributor first makes Commercial Use of
|
||||
the Covered Code.
|
||||
|
||||
(d) Notwithstanding Section 2.2(b) above, no patent license is
|
||||
granted: 1) for any code that Contributor has deleted from the
|
||||
Contributor Version; 2) separate from the Contributor Version;
|
||||
3) for infringements caused by: i) third party modifications of
|
||||
Contributor Version or ii) the combination of Modifications made
|
||||
by that Contributor with other software (except as part of the
|
||||
Contributor Version) or other devices; or 4) under Patent Claims
|
||||
infringed by Covered Code in the absence of Modifications made by
|
||||
that Contributor.
|
||||
|
||||
3. Distribution Obligations.
|
||||
|
||||
3.1. Application of License.
|
||||
The Modifications which You create or to which You contribute are
|
||||
governed by the terms of this License, including without limitation
|
||||
Section 2.2. The Source Code version of Covered Code may be
|
||||
distributed only under the terms of this License or a future version
|
||||
of this License released under Section 6.1, and You must include a
|
||||
copy of this License with every copy of the Source Code You
|
||||
distribute. You may not offer or impose any terms on any Source Code
|
||||
version that alters or restricts the applicable version of this
|
||||
License or the recipients' rights hereunder. However, You may include
|
||||
an additional document offering the additional rights described in
|
||||
Section 3.5.
|
||||
|
||||
3.2. Availability of Source Code.
|
||||
Any Modification which You create or to which You contribute must be
|
||||
made available in Source Code form under the terms of this License
|
||||
either on the same media as an Executable version or via an accepted
|
||||
Electronic Distribution Mechanism to anyone to whom you made an
|
||||
Executable version available; and if made available via Electronic
|
||||
Distribution Mechanism, must remain available for at least twelve (12)
|
||||
months after the date it initially became available, or at least six
|
||||
(6) months after a subsequent version of that particular Modification
|
||||
has been made available to such recipients. You are responsible for
|
||||
ensuring that the Source Code version remains available even if the
|
||||
Electronic Distribution Mechanism is maintained by a third party.
|
||||
|
||||
3.3. Description of Modifications.
|
||||
You must cause all Covered Code to which You contribute to contain a
|
||||
file documenting the changes You made to create that Covered Code and
|
||||
the date of any change. You must include a prominent statement that
|
||||
the Modification is derived, directly or indirectly, from Original
|
||||
Code provided by the Initial Developer and including the name of the
|
||||
Initial Developer in (a) the Source Code, and (b) in any notice in an
|
||||
Executable version or related documentation in which You describe the
|
||||
origin or ownership of the Covered Code.
|
||||
|
||||
3.4. Intellectual Property Matters
|
||||
(a) Third Party Claims.
|
||||
If Contributor has knowledge that a license under a third party's
|
||||
intellectual property rights is required to exercise the rights
|
||||
granted by such Contributor under Sections 2.1 or 2.2,
|
||||
Contributor must include a text file with the Source Code
|
||||
distribution titled "LEGAL" which describes the claim and the
|
||||
party making the claim in sufficient detail that a recipient will
|
||||
know whom to contact. If Contributor obtains such knowledge after
|
||||
the Modification is made available as described in Section 3.2,
|
||||
Contributor shall promptly modify the LEGAL file in all copies
|
||||
Contributor makes available thereafter and shall take other steps
|
||||
(such as notifying appropriate mailing lists or newsgroups)
|
||||
reasonably calculated to inform those who received the Covered
|
||||
Code that new knowledge has been obtained.
|
||||
|
||||
(b) Contributor APIs.
|
||||
If Contributor's Modifications include an application programming
|
||||
interface and Contributor has knowledge of patent licenses which
|
||||
are reasonably necessary to implement that API, Contributor must
|
||||
also include this information in the LEGAL file.
|
||||
|
||||
(c) Representations.
|
||||
Contributor represents that, except as disclosed pursuant to
|
||||
Section 3.4(a) above, Contributor believes that Contributor's
|
||||
Modifications are Contributor's original creation(s) and/or
|
||||
Contributor has sufficient rights to grant the rights conveyed by
|
||||
this License.
|
||||
|
||||
3.5. Required Notices.
|
||||
You must duplicate the notice in Exhibit A in each file of the Source
|
||||
Code. If it is not possible to put such notice in a particular Source
|
||||
Code file due to its structure, then You must include such notice in a
|
||||
location (such as a relevant directory) where a user would be likely
|
||||
to look for such a notice. If You created one or more Modification(s)
|
||||
You may add your name as a Contributor to the notice described in
|
||||
Exhibit A. You must also duplicate this License in any documentation
|
||||
for the Source Code where You describe recipients' rights or ownership
|
||||
rights relating to Covered Code. You may choose to offer, and to
|
||||
charge a fee for, warranty, support, indemnity or liability
|
||||
obligations to one or more recipients of Covered Code. However, You
|
||||
may do so only on Your own behalf, and not on behalf of the Initial
|
||||
Developer or any Contributor. You must make it absolutely clear than
|
||||
any such warranty, support, indemnity or liability obligation is
|
||||
offered by You alone, and You hereby agree to indemnify the Initial
|
||||
Developer and every Contributor for any liability incurred by the
|
||||
Initial Developer or such Contributor as a result of warranty,
|
||||
support, indemnity or liability terms You offer.
|
||||
|
||||
3.6. Distribution of Executable Versions.
|
||||
You may distribute Covered Code in Executable form only if the
|
||||
requirements of Section 3.1-3.5 have been met for that Covered Code,
|
||||
and if You include a notice stating that the Source Code version of
|
||||
the Covered Code is available under the terms of this License,
|
||||
including a description of how and where You have fulfilled the
|
||||
obligations of Section 3.2. The notice must be conspicuously included
|
||||
in any notice in an Executable version, related documentation or
|
||||
collateral in which You describe recipients' rights relating to the
|
||||
Covered Code. You may distribute the Executable version of Covered
|
||||
Code or ownership rights under a license of Your choice, which may
|
||||
contain terms different from this License, provided that You are in
|
||||
compliance with the terms of this License and that the license for the
|
||||
Executable version does not attempt to limit or alter the recipient's
|
||||
rights in the Source Code version from the rights set forth in this
|
||||
License. If You distribute the Executable version under a different
|
||||
license You must make it absolutely clear that any terms which differ
|
||||
from this License are offered by You alone, not by the Initial
|
||||
Developer or any Contributor. You hereby agree to indemnify the
|
||||
Initial Developer and every Contributor for any liability incurred by
|
||||
the Initial Developer or such Contributor as a result of any such
|
||||
terms You offer.
|
||||
|
||||
3.7. Larger Works.
|
||||
You may create a Larger Work by combining Covered Code with other code
|
||||
not governed by the terms of this License and distribute the Larger
|
||||
Work as a single product. In such a case, You must make sure the
|
||||
requirements of this License are fulfilled for the Covered Code.
|
||||
|
||||
4. Inability to Comply Due to Statute or Regulation.
|
||||
|
||||
If it is impossible for You to comply with any of the terms of this
|
||||
License with respect to some or all of the Covered Code due to
|
||||
statute, judicial order, or regulation then You must: (a) comply with
|
||||
the terms of this License to the maximum extent possible; and (b)
|
||||
describe the limitations and the code they affect. Such description
|
||||
must be included in the LEGAL file described in Section 3.4 and must
|
||||
be included with all distributions of the Source Code. Except to the
|
||||
extent prohibited by statute or regulation, such description must be
|
||||
sufficiently detailed for a recipient of ordinary skill to be able to
|
||||
understand it.
|
||||
|
||||
5. Application of this License.
|
||||
|
||||
This License applies to code to which the Initial Developer has
|
||||
attached the notice in Exhibit A and to related Covered Code.
|
||||
|
||||
6. Versions of the License.
|
||||
|
||||
6.1. New Versions.
|
||||
Netscape Communications Corporation ("Netscape") may publish revised
|
||||
and/or new versions of the License from time to time. Each version
|
||||
will be given a distinguishing version number.
|
||||
|
||||
6.2. Effect of New Versions.
|
||||
Once Covered Code has been published under a particular version of the
|
||||
License, You may always continue to use it under the terms of that
|
||||
version. You may also choose to use such Covered Code under the terms
|
||||
of any subsequent version of the License published by Netscape. No one
|
||||
other than Netscape has the right to modify the terms applicable to
|
||||
Covered Code created under this License.
|
||||
|
||||
6.3. Derivative Works.
|
||||
If You create or use a modified version of this License (which you may
|
||||
only do in order to apply it to code which is not already Covered Code
|
||||
governed by this License), You must (a) rename Your license so that
|
||||
the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape",
|
||||
"MPL", "NPL" or any confusingly similar phrase do not appear in your
|
||||
license (except to note that your license differs from this License)
|
||||
and (b) otherwise make it clear that Your version of the license
|
||||
contains terms which differ from the Mozilla Public License and
|
||||
Netscape Public License. (Filling in the name of the Initial
|
||||
Developer, Original Code or Contributor in the notice described in
|
||||
Exhibit A shall not of themselves be deemed to be modifications of
|
||||
this License.)
|
||||
|
||||
7. DISCLAIMER OF WARRANTY.
|
||||
|
||||
COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
|
||||
WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF
|
||||
DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING.
|
||||
THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE
|
||||
IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT,
|
||||
YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE
|
||||
COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER
|
||||
OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
|
||||
ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
|
||||
|
||||
8. TERMINATION.
|
||||
|
||||
8.1. This License and the rights granted hereunder will terminate
|
||||
automatically if You fail to comply with terms herein and fail to cure
|
||||
such breach within 30 days of becoming aware of the breach. All
|
||||
sublicenses to the Covered Code which are properly granted shall
|
||||
survive any termination of this License. Provisions which, by their
|
||||
nature, must remain in effect beyond the termination of this License
|
||||
shall survive.
|
||||
|
||||
8.2. If You initiate litigation by asserting a patent infringement
|
||||
claim (excluding declatory judgment actions) against Initial Developer
|
||||
or a Contributor (the Initial Developer or Contributor against whom
|
||||
You file such action is referred to as "Participant") alleging that:
|
||||
|
||||
(a) such Participant's Contributor Version directly or indirectly
|
||||
infringes any patent, then any and all rights granted by such
|
||||
Participant to You under Sections 2.1 and/or 2.2 of this License
|
||||
shall, upon 60 days notice from Participant terminate prospectively,
|
||||
unless if within 60 days after receipt of notice You either: (i)
|
||||
agree in writing to pay Participant a mutually agreeable reasonable
|
||||
royalty for Your past and future use of Modifications made by such
|
||||
Participant, or (ii) withdraw Your litigation claim with respect to
|
||||
the Contributor Version against such Participant. If within 60 days
|
||||
of notice, a reasonable royalty and payment arrangement are not
|
||||
mutually agreed upon in writing by the parties or the litigation claim
|
||||
is not withdrawn, the rights granted by Participant to You under
|
||||
Sections 2.1 and/or 2.2 automatically terminate at the expiration of
|
||||
the 60 day notice period specified above.
|
||||
|
||||
(b) any software, hardware, or device, other than such Participant's
|
||||
Contributor Version, directly or indirectly infringes any patent, then
|
||||
any rights granted to You by such Participant under Sections 2.1(b)
|
||||
and 2.2(b) are revoked effective as of the date You first made, used,
|
||||
sold, distributed, or had made, Modifications made by that
|
||||
Participant.
|
||||
|
||||
8.3. If You assert a patent infringement claim against Participant
|
||||
alleging that such Participant's Contributor Version directly or
|
||||
indirectly infringes any patent where such claim is resolved (such as
|
||||
by license or settlement) prior to the initiation of patent
|
||||
infringement litigation, then the reasonable value of the licenses
|
||||
granted by such Participant under Sections 2.1 or 2.2 shall be taken
|
||||
into account in determining the amount or value of any payment or
|
||||
license.
|
||||
|
||||
8.4. In the event of termination under Sections 8.1 or 8.2 above,
|
||||
all end user license agreements (excluding distributors and resellers)
|
||||
which have been validly granted by You or any distributor hereunder
|
||||
prior to termination shall survive termination.
|
||||
|
||||
9. LIMITATION OF LIABILITY.
|
||||
|
||||
UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
|
||||
(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL
|
||||
DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE,
|
||||
OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR
|
||||
ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY
|
||||
CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL,
|
||||
WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
|
||||
COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
|
||||
INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
|
||||
LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY
|
||||
RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW
|
||||
PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
|
||||
EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO
|
||||
THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
|
||||
|
||||
10. U.S. GOVERNMENT END USERS.
|
||||
|
||||
The Covered Code is a "commercial item," as that term is defined in
|
||||
48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer
|
||||
software" and "commercial computer software documentation," as such
|
||||
terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48
|
||||
C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995),
|
||||
all U.S. Government End Users acquire Covered Code with only those
|
||||
rights set forth herein.
|
||||
|
||||
11. MISCELLANEOUS.
|
||||
|
||||
This License represents the complete agreement concerning subject
|
||||
matter hereof. If any provision of this License is held to be
|
||||
unenforceable, such provision shall be reformed only to the extent
|
||||
necessary to make it enforceable. This License shall be governed by
|
||||
California law provisions (except to the extent applicable law, if
|
||||
any, provides otherwise), excluding its conflict-of-law provisions.
|
||||
With respect to disputes in which at least one party is a citizen of,
|
||||
or an entity chartered or registered to do business in the United
|
||||
States of America, any litigation relating to this License shall be
|
||||
subject to the jurisdiction of the Federal Courts of the Northern
|
||||
District of California, with venue lying in Santa Clara County,
|
||||
California, with the losing party responsible for costs, including
|
||||
without limitation, court costs and reasonable attorneys' fees and
|
||||
expenses. The application of the United Nations Convention on
|
||||
Contracts for the International Sale of Goods is expressly excluded.
|
||||
Any law or regulation which provides that the language of a contract
|
||||
shall be construed against the drafter shall not apply to this
|
||||
License.
|
||||
|
||||
12. RESPONSIBILITY FOR CLAIMS.
|
||||
|
||||
As between Initial Developer and the Contributors, each party is
|
||||
responsible for claims and damages arising, directly or indirectly,
|
||||
out of its utilization of rights under this License and You agree to
|
||||
work with Initial Developer and Contributors to distribute such
|
||||
responsibility on an equitable basis. Nothing herein is intended or
|
||||
shall be deemed to constitute any admission of liability.
|
||||
|
||||
13. MULTIPLE-LICENSED CODE.
|
||||
|
||||
Initial Developer may designate portions of the Covered Code as
|
||||
"Multiple-Licensed". "Multiple-Licensed" means that the Initial
|
||||
Developer permits you to utilize portions of the Covered Code under
|
||||
Your choice of the NPL or the alternative licenses, if any, specified
|
||||
by the Initial Developer in the file described in Exhibit A.
|
||||
|
||||
EXHIBIT A-Netscape Public License.
|
||||
|
||||
"The contents of this file are subject to the Netscape Public
|
||||
License Version 1.1 (the "License"); you may not use this file
|
||||
except in compliance with the License. You may obtain a copy of
|
||||
the License at http://www.mozilla.org/NPL/
|
||||
|
||||
Software distributed under the License is distributed on an "AS
|
||||
IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
implied. See the License for the specific language governing
|
||||
rights and limitations under the License.
|
||||
|
||||
The Original Code is the Netscape Mailstone code, released
|
||||
March 17, 2000.
|
||||
|
||||
The Initial Developer of the Original Code is Netscape
|
||||
Communications Corporation. Portions created by Netscape are
|
||||
Copyright (C) 1999-2000 Netscape Communications Corporation. All
|
||||
Rights Reserved.
|
||||
|
||||
Contributor(s): Dan Christian <robodan@netscape.com>
|
||||
Marcel DePaolis <marcel@netscape.com>
|
||||
Jim Salter <jsalter@netscape.com>
|
||||
Mike Blakely, David Shak, Brain Williams
|
||||
|
||||
Alternatively, the contents of this file may be used under the
|
||||
terms of the GNU General Public license Version 2 or later
|
||||
(the "GPL"), in which case the provisions of GPL are
|
||||
applicable instead of those above. If you wish to allow use
|
||||
of your version of this file only under the terms of the GPL
|
||||
and not to allow others to use your version of this file
|
||||
under the NPL, indicate your decision by deleting the
|
||||
provisions above and replace them with the notice and other
|
||||
provisions required by the GPL. If you do not delete the
|
||||
provisions above, a recipient may use your version of this
|
||||
file under either the NPL or the GPL License."
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
AMENDMENTS
|
||||
|
||||
The Netscape Public License Version 1.1 ("NPL") consists of the
|
||||
Mozilla Public License Version 1.1 with the following Amendments,
|
||||
including Exhibit A-Netscape Public License. Files identified with
|
||||
"Exhibit A-Netscape Public License" are governed by the Netscape
|
||||
Public License Version 1.1.
|
||||
|
||||
Additional Terms applicable to the Netscape Public License.
|
||||
I. Effect.
|
||||
These additional terms described in this Netscape Public
|
||||
License -- Amendments shall apply to the Mozilla Communicator
|
||||
client code and to all Covered Code under this License.
|
||||
|
||||
II. "Netscape's Branded Code" means Covered Code that Netscape
|
||||
distributes and/or permits others to distribute under one or more
|
||||
trademark(s) which are controlled by Netscape but which are not
|
||||
licensed for use under this License.
|
||||
|
||||
III. Netscape and logo.
|
||||
This License does not grant any rights to use the trademarks
|
||||
"Netscape", the "Netscape N and horizon" logo or the "Netscape
|
||||
lighthouse" logo, "Netcenter", "Gecko", "Java" or "JavaScript",
|
||||
"Smart Browsing" even if such marks are included in the Original
|
||||
Code or Modifications.
|
||||
|
||||
IV. Inability to Comply Due to Contractual Obligation.
|
||||
Prior to licensing the Original Code under this License, Netscape
|
||||
has licensed third party code for use in Netscape's Branded Code.
|
||||
To the extent that Netscape is limited contractually from making
|
||||
such third party code available under this License, Netscape may
|
||||
choose to reintegrate such code into Covered Code without being
|
||||
required to distribute such code in Source Code form, even if
|
||||
such code would otherwise be considered "Modifications" under
|
||||
this License.
|
||||
|
||||
V. Use of Modifications and Covered Code by Initial Developer.
|
||||
V.1. In General.
|
||||
The obligations of Section 3 apply to Netscape, except to
|
||||
the extent specified in this Amendment, Section V.2 and V.3.
|
||||
|
||||
V.2. Other Products.
|
||||
Netscape may include Covered Code in products other than the
|
||||
Netscape's Branded Code which are released by Netscape
|
||||
during the two (2) years following the release date of the
|
||||
Original Code, without such additional products becoming
|
||||
subject to the terms of this License, and may license such
|
||||
additional products on different terms from those contained
|
||||
in this License.
|
||||
|
||||
V.3. Alternative Licensing.
|
||||
Netscape may license the Source Code of Netscape's Branded
|
||||
Code, including Modifications incorporated therein, without
|
||||
such Netscape Branded Code becoming subject to the terms of
|
||||
this License, and may license such Netscape Branded Code on
|
||||
different terms from those contained in this License.
|
||||
|
||||
VI. Litigation.
|
||||
Notwithstanding the limitations of Section 11 above, the
|
||||
provisions regarding litigation in Section 11(a), (b) and (c) of
|
||||
the License shall apply to all disputes relating to this License.
|
||||
|
|
@ -25,7 +25,9 @@ GNUPLOTFILES = gnuplot gnuplot_x11 gnuplot.1 gnuplot.gih Copyright
|
|||
|
||||
VERSION = 4.2
|
||||
TARBALL = mstone-$(VERSION)-$(NSARCH)$(OBJDIR_TAG).tar.gz
|
||||
ZIPFILE = mstone-$(VERSION)-$(NSARCH)$(OBJDIR_TAG).zip
|
||||
TARBALL_ALL = mstone-$(VERSION)-all-$(OBJDIR_TAG).tar.gz
|
||||
ZIPFILE_ALL = mstone-$(VERSION)-all-$(OBJDIR_TAG).zip
|
||||
|
||||
NTFILES = mstone.bat process.bat setup.bat
|
||||
|
||||
|
@ -59,13 +61,13 @@ mailclient::
|
|||
cd src; $(MAKE) BUILD_VARIANT=$(BUILD_VARIANT) OBJDIR=../$(OBJDIR) PKGDIR=../$(PKGDIR) all
|
||||
|
||||
# Use our top level makefiles to drive the component builds
|
||||
libgd::
|
||||
libgd $(OBJDIR)/gd/libgd.a::
|
||||
$(MAKE) -f gd.mk LIBGD_DIR=$(LIBGD_DIR) libgd
|
||||
|
||||
gnuplot::
|
||||
gnuplot $(OBJDIR)/gnuplot/gnuplot::
|
||||
$(MAKE) -f gnuplot.mk LIBGD_DIR=$(LIBGD_DIR) GNUPLOT_DIR=$(GNUPLOT_DIR) gnuplot
|
||||
|
||||
perl::
|
||||
perl $(OBJDIR)/perl/perl::
|
||||
$(MAKE) -f perl.mk PERL_DIR=$(PERL_DIR) PERL_REV=$(PERL_REV) perl
|
||||
|
||||
# Create packaging binary directories
|
||||
|
@ -90,14 +92,18 @@ $(PKGDIR)/gd:
|
|||
$(PKGDIR)/gnuplot:
|
||||
mkdir -p $(PKGDIR)/gnuplot
|
||||
|
||||
$(PKGDIR)/perl:
|
||||
mkdir -p $(PKGDIR)/perl
|
||||
|
||||
|
||||
# operating system independent share-files (at least for Unix)
|
||||
pkg-share-files:: mkpkgdirs
|
||||
@$(ECHO) "\n===== [`date`] making package share-files...\n"
|
||||
$(CP) mstone setup process $(PKGDIR)
|
||||
(cd $(PKGDIR); [ ! -f cleanup ] || rm -f cleanup; ln -s setup cleanup)
|
||||
(cd $(PKGDIR); [ ! -f checktime ] || rm -f checktime; ln -s setup checktime)
|
||||
(cd $(PKGDIR); [ ! -f timesync ] || rm -f timesync; ln -s setup timesync)
|
||||
(cd $(PKGDIR); [ ! -f setup ] || rm -f setup; ln -s mstone setup)
|
||||
(cd $(PKGDIR); [ ! -f cleanup ] || rm -f cleanup; ln -s mstone cleanup)
|
||||
(cd $(PKGDIR); [ ! -f checktime ] || rm -f checktime; ln -s mstone checktime)
|
||||
(cd $(PKGDIR); [ ! -f timesync ] || rm -f timesync; ln -s mstone timesync)
|
||||
$(CP) nsarch bin/*.pl $(PKGDIR)/bin
|
||||
$(CP) conf/*.wld conf/*.html $(PKGDIR)/conf
|
||||
$(CP) data/*.msg $(PKGDIR)/data
|
||||
|
@ -130,16 +136,18 @@ pkg-arch-files:: $(PKGDIR)/bin $(OBJDIR)/mailclient
|
|||
-$(STRIP) $(PKGDIR)/bin/mailclient
|
||||
@$(ECHO) "\n===== [`date`] making package arch-files done.\n"
|
||||
|
||||
pkg-perl-files:: $(OBJDIR)/perl/perl
|
||||
pkg-perl-files:: $(PKGDIR)/bin $(OBJDIR)/perl/perl
|
||||
@$(ECHO) "\n===== [`date`] making package perl-files...\n"
|
||||
@[ -d $(PKGDIR)/perl ] || mkdir -p $(PKGDIR)/perl
|
||||
$(MAKE) -f perl.mk PERL_DIR=$(PERL_DIR) PERL_REV=$(PERL_REV) BUILD_VARIANT=$(BUILD_VARIANT) OBJDIR=$(OBJDIR) PKGDIR=$(PKGDIR) package-perl
|
||||
$(MAKE) -f perl.mk PERL_DIR=$(PERL_DIR) PERL_REV=$(PERL_REV) \
|
||||
BUILD_VARIANT=$(BUILD_VARIANT) \
|
||||
OBJDIR=$(OBJDIR) PKGDIR=$(PKGDIR) package-perl
|
||||
find $(PKGDIR)/perl/lib -name .packlist -exec rm {} \; -print
|
||||
-$(STRIP) $(PKGDIR)/perl/bin/perl
|
||||
-$(STRIP) $(PKGDIR)/perl/bin/a2p
|
||||
@$(ECHO) "\n===== [`date`] making package perl-files done.\n"
|
||||
|
||||
# for combined packaging, this shouldnt be part of pkg-arch-files (special case)
|
||||
# for combined packaging, this should not be part of pkg-arch-files
|
||||
# perl is handled seperately do to its size
|
||||
ifneq (,$(PERL_DIR))
|
||||
pkg:: pkg-perl-files
|
||||
endif
|
||||
|
@ -159,30 +167,38 @@ build/$(TARBALL): pkg-share-files pkg-arch-files
|
|||
# We have to nuke some old parts, because permissions wont allow overwrites
|
||||
# Finally, dont ship perl development headers and libraries
|
||||
all_DBG all_OPT::
|
||||
@$(ECHO) "\n===== [`date`] unified packaging for $@...\n"
|
||||
@$(ECHO) "===== [`date`] unified packaging for $@..."
|
||||
$(MAKE) NSARCH=$@ OBJDIR_TAG='' PKGDIR=$(topsrcdir)/build/package/$@.OBJ/mstone pkg-share-files
|
||||
./ospkg.sh $@.OBJ $(notdir $(shell ls -d build/package/[A-Z]*$(subst all,,$@.OBJ)))
|
||||
[ -d $(topsrcdir)/build/package/$@.OBJ/mstone/bin/WINNT4.0 ] \
|
||||
&& cp -p $(NTFILES) $(topsrcdir)/build/package/$@.OBJ/mstone; :
|
||||
@$(ECHO) "\n===== [`date`] making unified compressed tar file...\n"
|
||||
-rm -f ./build/mstone-$(VERSION)-$@.tar.gz
|
||||
(cd ./build/package/$@.OBJ && tar cf - . \
|
||||
| gzip > ../../mstone-$(VERSION)-$@.tar.gz)
|
||||
@$(ECHO) "\n===== [`date`] making unified packaging for $@ done.\n"
|
||||
cd ./build/package/$@.OBJ && tar cf - . \
|
||||
| gzip > ../../mstone-$(VERSION)-$@.tar.gz
|
||||
-rm -f ./build/mstone-$(VERSION)-$@.zip
|
||||
cd ./build/package/$@.OBJ && zip -r -q ../../mstone-$(VERSION)-$@.zip .
|
||||
@$(ECHO) "===== [`date`] unified packaging for $@ done."
|
||||
|
||||
|
||||
########################################################################
|
||||
# Install and re-map short Linux name to standard Netscape convention
|
||||
# Copy all the packaged trees to the distribution site
|
||||
# Copy in the unified tarball and zip file
|
||||
# Link mstone to mailstone for Netscape back compatibility
|
||||
# Re-map short Linux name to standard Netscape convention
|
||||
dist::
|
||||
@[ "$(DIST)" != "" ] || ($(MAKE) usage && /bin/false)
|
||||
@[ ! -d "$(DIST)" ] || ($(ECHO) "Error: $(DIST) already exists" && \
|
||||
$(MAKE) usage && /bin/false)
|
||||
mkdir -p $(DIST)
|
||||
cd build/package; $(CP) -R * $(DIST)
|
||||
cp -p build/$(TARBALL_ALL) build/$(ZIPFILE_ALL) $(DIST)/
|
||||
(cd build/package; tar cf - *.OBJ) | (cd $(DIST); tar xf - )
|
||||
for l in $(DIST)/*_???.OBJ ; do \
|
||||
(cd $$l; ln -s mstone mailstone); done
|
||||
cd $(DIST); for l in Linux*_???.OBJ ; do \
|
||||
nn=`echo $$l | sed -e 's/_OPT/_glibc_PTH_OPT/' | sed -e 's/_DBG/_glibc_PTH_DBG/'`; \
|
||||
ln -s $$l $$nn; done
|
||||
|
||||
# since the default is debug mode, start a make with the right mode
|
||||
release::
|
||||
@$(ECHO) "\n===== [`date`] making release build...\n"
|
||||
$(MAKE) BUILD_VARIANT=release OBJDIR_TAG=_OPT targets
|
||||
|
@ -193,11 +209,13 @@ rpackage:: release
|
|||
$(MAKE) BUILD_VARIANT=release OBJDIR_TAG=_OPT pkg
|
||||
@$(ECHO) "\n===== [`date`] making release package done.\n"
|
||||
|
||||
# since the default is debug mode, this can just work off a dependency
|
||||
debug:: targets
|
||||
# @$(ECHO) "\n===== [`date`] making debug build...\n"
|
||||
# $(MAKE) BUILD_VARIANT=debug OBJDIR_TAG=_DBG targets
|
||||
# @$(ECHO) "\n===== [`date`] making debug build done.\n"
|
||||
|
||||
# since the default is debug mode, this can just work off a dependency
|
||||
dpackage:: pkg
|
||||
#dpackage:: debug
|
||||
# @$(ECHO) "\n===== [`date`] making debug package...\n"
|
||||
|
|
|
@ -197,7 +197,7 @@ sub configWorkload {
|
|||
}
|
||||
|
||||
# See if license file has been displayed
|
||||
unless (-f ".license" ) {
|
||||
if (($mode ne "cleanup") && (! -f ".license" )) {
|
||||
fileShow ("LICENSE");
|
||||
print "\nDo you agree to the terms of the license? (yes/no) ";
|
||||
my $ans = <STDIN>;
|
||||
|
@ -212,12 +212,12 @@ unless (-f ".license" ) {
|
|||
close (LIC);
|
||||
}
|
||||
|
||||
if ($mode =~ /config$/) { # re-run config
|
||||
if ($mode eq "config") { # re-run config
|
||||
configWorkload ();
|
||||
|
||||
print "\nMake any additional changes to $params{WORKLOAD} and then re-run 'setup'\n";
|
||||
exit 0;
|
||||
} else { # check if configured
|
||||
} elsif ($mode ne "cleanup") { # check if configured
|
||||
my $unconf = 0; # see if default values are in use
|
||||
foreach $section (@workload) {
|
||||
($section->{SERVER})
|
||||
|
@ -246,7 +246,7 @@ if ($mode =~ /config$/) { # re-run config
|
|||
}
|
||||
}
|
||||
|
||||
if ($mode =~ /timesync$/) {
|
||||
if ($mode eq "timesync") {
|
||||
if ($params{NT}) {
|
||||
print "Timesync has no effect on NT\n";
|
||||
exit 0;
|
||||
|
@ -255,7 +255,7 @@ if ($mode =~ /timesync$/) {
|
|||
$mon += 1; # adjust from 0 based to std
|
||||
$systime = sprintf ("%02d%02d%02d%02d%04d.%02d",
|
||||
$mon, $mday, $hour, $min, 1900+$year, $sec);
|
||||
} elsif ($mode =~ /checktime$/) {
|
||||
} elsif ($mode eq "checktime") {
|
||||
if ($params{NT}) { # if running on NT, then only single client
|
||||
print "Checktime not needed on NT\n";
|
||||
exit 0;
|
||||
|
@ -271,7 +271,7 @@ if ($mode =~ /timesync$/) {
|
|||
close MAKEIT;
|
||||
}
|
||||
}
|
||||
} elsif (($mode =~ /setup$/) || ($mode =~ /cleanup$/)) {
|
||||
} elsif (($mode eq "setup") || ($mode eq "cleanup")) {
|
||||
@msgs = <data/*.msg>;
|
||||
foreach (@files = @msgs) { s/data\/// }
|
||||
print "Found these message files:\n@files\n\n";
|
||||
|
@ -302,21 +302,21 @@ foreach $section (@workload) {
|
|||
$tempdir = $params{TEMPDIR};
|
||||
}
|
||||
# most time critical first
|
||||
if ($mode =~ /timesync$/) {
|
||||
if ($mode eq "timesync") {
|
||||
next if ($cli =~ /^localhost$/i); # dont reset our own time
|
||||
# run all these in parallel to minimize skew
|
||||
next if ($section->{ARCH} eq "NT4.0");
|
||||
forkproc ($rsh, $cli, "date $systime");
|
||||
}
|
||||
|
||||
elsif ($mode =~ /checktime$/) {
|
||||
elsif ($mode eq "checktime") {
|
||||
# run all these in parallel to minimize skew
|
||||
forkproc ($rsh, $cli, ($section->{ARCH} eq "NT4.0")
|
||||
? "time" : "date",
|
||||
"/dev/null", "$tmpbase/$cli.tim");
|
||||
}
|
||||
|
||||
elsif ($mode =~ /setup$/) {
|
||||
elsif ($mode eq "setup") {
|
||||
my ($clibin) = split /\s/, (($section->{COMMAND})
|
||||
? $section->{COMMAND}
|
||||
: $params{CLIENTCOMMAND});
|
||||
|
@ -352,7 +352,7 @@ foreach $section (@workload) {
|
|||
print "\n";
|
||||
}
|
||||
|
||||
elsif ($mode =~ /cleanup$/) {
|
||||
elsif ($mode eq "cleanup") {
|
||||
if ($params{DEBUG}) { # get debug files
|
||||
print "Cleaning up debug files on $cli\n";
|
||||
my $rcmd = ($section->{ARCH} eq "NT4.0") ? "DEL" : "$rmcmd";
|
||||
|
@ -389,7 +389,7 @@ foreach $section (@workload) {
|
|||
}
|
||||
|
||||
# wait for children to finish
|
||||
if (($mode =~ /timesync$/) || ($mode =~ /checktime$/)) {
|
||||
if (($mode eq "timesync") || ($mode eq "checktime")) {
|
||||
$pid = wait();
|
||||
while ($pid != -1) {
|
||||
$pid = wait();
|
||||
|
@ -397,7 +397,7 @@ if (($mode =~ /timesync$/) || ($mode =~ /checktime$/)) {
|
|||
}
|
||||
|
||||
# Print the results of the time checks
|
||||
if ($mode =~ /checktime$/) {
|
||||
if ($mode eq "checktime") {
|
||||
print "Time from each client:\n";
|
||||
foreach $section (@workload) {
|
||||
next unless ($section->{sectionTitle} =~ /CLIENT/o);
|
||||
|
|
170
mstone/mstone
170
mstone/mstone
|
@ -32,46 +32,156 @@
|
|||
# file under either the NPL or the GPL.
|
||||
#####################################################
|
||||
|
||||
# This just runs the right test with the right path to perl
|
||||
# Usage: mstone testname
|
||||
if [ -z "$1" -o "$1" = "-h" -o "$1" = "--help" ] ; then
|
||||
echo "Usage: $0 testname [arguments]"
|
||||
echo "Common arguments:"
|
||||
echo " -t time Test time. s=seconds, m=minutes, h=hours"
|
||||
echo " -r ramp_time Connection ramp up time. s=seconds, m=..."
|
||||
echo " -l load Number of test clients to use."
|
||||
echo " -b 'banner' Test description banner."
|
||||
echo " -n 'notes' Test notes."
|
||||
echo "Example:"
|
||||
echo " ./mstone pop -t 10m -r 90s -l 24 -b 'Pop reads (full store)'"
|
||||
exit 1
|
||||
# push or clean up mailclient and message files to client hosts
|
||||
# Usage: setup|cleanup|timesync|checktime|config [mode] [-w workload_file]
|
||||
#
|
||||
# Setup (or cleanup) OS specific versions of mailclient and utilities
|
||||
|
||||
gconf=conf/general.wld # default file for machines info
|
||||
|
||||
# figure out the host arch
|
||||
run_nsarch() {
|
||||
if [ ! -x bin/nsarch ] ; then
|
||||
echo "Installation error! Cannot locate $1 or nsarch.\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
OUROS=`bin/nsarch`
|
||||
# deal with new versions of OS falling back to versions we have
|
||||
if [ ! -d bin/$OUROS ] ; then
|
||||
shortos=`echo $OUROS | sed -e 's/[0-9].*//'`
|
||||
near=`ls -d bin/*/bin | grep $shortos`
|
||||
if [ -n "$near" ] ; then
|
||||
near=`echo $near | cut -f2 -d'/'`
|
||||
echo "No support for $OUROS, using $near"
|
||||
OUROS=$near
|
||||
else
|
||||
echo "No support for $OUROS and nothing similar"
|
||||
fi
|
||||
fi
|
||||
export OUROS
|
||||
}
|
||||
|
||||
# Setup perl to work from perl/bin/perl
|
||||
setup_perl() {
|
||||
[ -n "$OUROS" ] || run_nsarch $1
|
||||
if [ -d perl ] ; then # found it in our distribution
|
||||
(cd perl; ln -s arch/$OUROS bin)
|
||||
else
|
||||
local=`which perl | wc -w`
|
||||
if [ 1 -eq "$local" ] ; then
|
||||
[ -d perl/bin ] || mkdir -p perl/bin
|
||||
(cd perl/bin; ln -s `which perl` perl)
|
||||
else
|
||||
echo "No packaged version of perl and no local version"
|
||||
exit 1;
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# we always need this
|
||||
[ -d perl/bin ] || setup_perl # need perl, even for cleanup mode
|
||||
|
||||
# Get the default version of mailclient
|
||||
setup_mailclient() {
|
||||
[ -n "$OUROS" ] || have_nsarch $1
|
||||
(cd bin; ln -s $OUROS/bin/mailclient ./ )
|
||||
}
|
||||
|
||||
# setup_file source_dir directory filename
|
||||
# usually link in a directory.
|
||||
# if needed, make the directory and link a local executable.
|
||||
setup_dir_file() {
|
||||
[ -n "$OUROS" ] || run_nsarch $1
|
||||
if [ -d $1/$OUROS/$2 ] ; then # found it in our distribution
|
||||
ln -s $1/$OUROS/$2 $2
|
||||
else # look for a system copy
|
||||
local=`which $3 | wc -w`
|
||||
if [ 1 -eq "$local" ] ; then
|
||||
[ -d $2 ] || mkdir -p $2
|
||||
(cd $2; ln -s `which $3` $3)
|
||||
else
|
||||
echo "WARNING: No packaged version of $3 and no local version"
|
||||
echo " Operation may be severely limited"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
# Pick up mode as an argument
|
||||
if [ $# -gt 0 -a \( "$1" = timesync -o "$1" = checktime \
|
||||
-o "$1" = setup -o "$1" = cleanup -o "$1" = config \
|
||||
-o "$1" = mstone \) ] ; then
|
||||
mode=$1
|
||||
shift
|
||||
else # or the name we were called
|
||||
mode=$0
|
||||
sm=`echo $mode | cut -f2 -d/` # strip ./ from name
|
||||
if [ -n "$sm" ] ; then
|
||||
mode=$sm
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
testcase=$1 # get testname
|
||||
shift
|
||||
if [ "$mode" = setup ] ; then # setup mode
|
||||
# check to see if our binaries are configured right
|
||||
#echo "Checking links"
|
||||
[ -x gnuplot/gnuplot ] || setup_dir_file bin gnuplot gnuplot
|
||||
[ -x bin/mailclient ] || setup_mailclient
|
||||
|
||||
if [ ! -x perl/bin/perl -o ! -f .license ] ; then # see if setup was ever run
|
||||
echo "Critical files are missing. Run setup."
|
||||
exit 2;
|
||||
fi
|
||||
|
||||
if [ -f $testcase ] ; then # if they gave us the full path
|
||||
testfile=$testcase
|
||||
else
|
||||
[ -f conf/$testcase.wld ] && testfile="conf/$testcase.wld"
|
||||
[ -f conf/$testcase.pl ] && testfile="conf/$testcase.pl"
|
||||
# copy in an initial conf/general.wld, if needed
|
||||
[ ! -f $gconf -a -f ${gconf}.in ] && cp ${gconf}.in $gconf
|
||||
fi
|
||||
|
||||
# figure out an OS specific flags
|
||||
extra=""
|
||||
if [ `uname -s` = HP-UX ] ; then # HP uses remsh for remote exec
|
||||
extra="RSH=/usr/bin/remsh $extra"
|
||||
fi
|
||||
|
||||
if [ -n "`echo $testfile | grep '\.wld$'`" ] ; then
|
||||
if [ "$mode" != mstone ] ; then # other setup modes
|
||||
perl/bin/perl -Ibin -- bin/setup.pl $mode -w $gconf $extra "$@"
|
||||
else # run a mstone test
|
||||
# This just runs the test with the right path to perl
|
||||
# Usage: mstone testname
|
||||
if [ -z "$1" -o "$1" = "-h" -o "$1" = "--help" ] ; then
|
||||
echo "Usage: $0 testname [arguments]"
|
||||
echo "Common arguments:"
|
||||
echo " -t time Test time. s=seconds, m=minutes, h=hours"
|
||||
echo " -r ramp_time Connection ramp up time. s=seconds, m=..."
|
||||
echo " -l load Number of test clients to use."
|
||||
echo " -b 'banner' Test description banner."
|
||||
echo " -n 'notes' Test notes."
|
||||
echo "Example:"
|
||||
echo " ./mstone pop -t 10m -r 90s -l 24 -b 'Pop reads (full store)'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
testcase=$1 # get testname
|
||||
shift
|
||||
|
||||
if [ ! -x perl/bin/perl -o ! -f .license ] ; then # see if setup was ever run
|
||||
echo "Critical files are missing. Run setup."
|
||||
exit 2;
|
||||
fi
|
||||
|
||||
if [ -f $testcase ] ; then # if they gave us the full path
|
||||
testfile=$testcase
|
||||
elif [ -f conf/$testcase.wld ] ; then
|
||||
testfile="conf/$testcase.wld"
|
||||
else
|
||||
echo "Cannot find test: $testcase"
|
||||
fi
|
||||
|
||||
exec perl/bin/perl -Ibin -- bin/mailmaster.pl $extra -w $testfile "$@"
|
||||
elif [ -n "`echo $testfile | grep '\.pl$'`" ] ; then # BACK COMPAT 4.1
|
||||
exec perl/bin/perl -Ibin -- $testfile $extra "$@"
|
||||
# no need to return
|
||||
fi
|
||||
|
||||
echo "File $testcase is not a workload file"
|
||||
exit 1;
|
||||
if [ "$mode" = cleanup ] ; then # cleanup mode
|
||||
#echo "Check for old links"
|
||||
# remove any configured links. if these are directories, it will fail
|
||||
rm -f perl/bin gd gnuplot 2> /dev/null
|
||||
|
||||
# the built in [ on Solaris does not have -L
|
||||
/usr/bin/test -L bin/mailclient && rm -f bin/mailclient
|
||||
fi
|
||||
|
|
|
@ -42,15 +42,18 @@ do
|
|||
[ -d $pkgdir/perl ] || mkdir -p $pkgdir/perl
|
||||
cp -pf $srcdir/perl/Artistic $pkgdir/perl/
|
||||
|
||||
# we dont pull everything in, just the potentially useful parts
|
||||
for subdir in man/man1 \
|
||||
lib/$perlver lib/$perlver/$perlarch \
|
||||
lib/$perlver/Time lib/$perlver/Sys \
|
||||
lib/$perlver/Time lib/$perlver/Term lib/$perlver/Class \
|
||||
lib/$perlver/Sys lib/$perlver/Data lib/$perlver/Getopt \
|
||||
lib/$perlver/Test lib/$perlver/Text \
|
||||
lib/$perlver/File lib/$perlver/File/Spec \
|
||||
lib/$perlver/CGI lib/$perlver/Net \
|
||||
lib/$perlver/$perlarch/auto/DynaLoader \
|
||||
lib/$perlver/$perlarch/auto/Socket \
|
||||
lib/$perlver/$perlarch/auto/re \
|
||||
lib/$perlver/$perlarch/auto/POSIX
|
||||
lib/$perlver/$perlarch/auto/attrs
|
||||
do
|
||||
[ -d $srcdir/perl/$subdir ] || continue;
|
||||
[ -d $pkgdir/perl/$subdir ] || mkdir -p $pkgdir/perl/$subdir
|
||||
|
@ -58,6 +61,7 @@ do
|
|||
cp -pf $srcdir/perl/$subdir/*.* $pkgdir/perl/$subdir
|
||||
done
|
||||
|
||||
# where we put multi-os perl binaries
|
||||
perlbin=$pkgdir/perl/arch/$arch
|
||||
[ -d $perlbin ] || mkdir -p $perlbin
|
||||
cp -p $srcdir/perl/bin/* $perlbin/
|
||||
|
|
Загрузка…
Ссылка в новой задаче