diff options
author | Michael Stahl <mstahl@redhat.com> | 2012-01-28 20:18:21 +0100 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2012-01-28 20:18:21 +0100 |
commit | 97a0d15e61e991e84e6229ea90f6fc7fc301b379 (patch) | |
tree | 1420a4a22edf83393ce9921cc2bb90ad607d9042 | |
parent | f9aa949d90236c3e64450544c62e62d997a55b45 (diff) |
replace obsolete "master" branch with README that points at new repoHEADmaster-deletedmaster
1675 files changed, 23 insertions, 302345 deletions
diff --git a/COPYING b/COPYING deleted file mode 100644 index 94a9ed024..000000000 --- a/COPYING +++ /dev/null @@ -1,674 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU General Public License is a free, copyleft license for -software and other kinds of works. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. We, the Free Software Foundation, use the -GNU General Public License for most of our software; it applies also to -any other work released this way by its authors. You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you have -certain responsibilities if you distribute copies of the software, or if -you modify it: responsibilities to respect the freedom of others. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, receive -or can get the source code. And you must show them these terms so they -know their rights. - - Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - - For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - - Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the manufacturer -can do so. This is fundamentally incompatible with the aim of -protecting users' freedom to change the software. The systematic -pattern of such abuse occurs in the area of products for individuals to -use, which is precisely where it is most unacceptable. Therefore, we -have designed this version of the GPL to prohibit the practice for those -products. If such problems arise substantially in other domains, we -stand ready to extend this provision to those domains in future versions -of the GPL, as needed to protect the freedom of users. - - Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish to -avoid the special danger that patents applied to a free program could -make it effectively proprietary. To prevent this, the GPL assures that -patents cannot be used to render the program non-free. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Use with the GNU Affero General Public License. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the special requirements of the GNU Affero General Public License, -section 13, concerning interaction through a network will apply to the -combination as such. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - <one line to give the program's name and a brief idea of what it does.> - Copyright (C) <year> <name of author> - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. - -Also add information on how to contact you by electronic and paper mail. - - If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - - <program> Copyright (C) <year> <name of author> - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -<http://www.gnu.org/licenses/>. - - The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -<http://www.gnu.org/philosophy/why-not-lgpl.html>. diff --git a/COPYING.LGPL b/COPYING.LGPL deleted file mode 100644 index fc8a5de7e..000000000 --- a/COPYING.LGPL +++ /dev/null @@ -1,165 +0,0 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - - This version of the GNU Lesser General Public License incorporates -the terms and conditions of version 3 of the GNU General Public -License, supplemented by the additional permissions listed below. - - 0. Additional Definitions. - - As used herein, "this License" refers to version 3 of the GNU Lesser -General Public License, and the "GNU GPL" refers to version 3 of the GNU -General Public License. - - "The Library" refers to a covered work governed by this License, -other than an Application or a Combined Work as defined below. - - An "Application" is any work that makes use of an interface provided -by the Library, but which is not otherwise based on the Library. -Defining a subclass of a class defined by the Library is deemed a mode -of using an interface provided by the Library. - - A "Combined Work" is a work produced by combining or linking an -Application with the Library. The particular version of the Library -with which the Combined Work was made is also called the "Linked -Version". - - The "Minimal Corresponding Source" for a Combined Work means the -Corresponding Source for the Combined Work, excluding any source code -for portions of the Combined Work that, considered in isolation, are -based on the Application, and not on the Linked Version. - - The "Corresponding Application Code" for a Combined Work means the -object code and/or source code for the Application, including any data -and utility programs needed for reproducing the Combined Work from the -Application, but excluding the System Libraries of the Combined Work. - - 1. Exception to Section 3 of the GNU GPL. - - You may convey a covered work under sections 3 and 4 of this License -without being bound by section 3 of the GNU GPL. - - 2. Conveying Modified Versions. - - If you modify a copy of the Library, and, in your modifications, a -facility refers to a function or data to be supplied by an Application -that uses the facility (other than as an argument passed when the -facility is invoked), then you may convey a copy of the modified -version: - - a) under this License, provided that you make a good faith effort to - ensure that, in the event an Application does not supply the - function or data, the facility still operates, and performs - whatever part of its purpose remains meaningful, or - - b) under the GNU GPL, with none of the additional permissions of - this License applicable to that copy. - - 3. Object Code Incorporating Material from Library Header Files. - - The object code form of an Application may incorporate material from -a header file that is part of the Library. You may convey such object -code under terms of your choice, provided that, if the incorporated -material is not limited to numerical parameters, data structure -layouts and accessors, or small macros, inline functions and templates -(ten or fewer lines in length), you do both of the following: - - a) Give prominent notice with each copy of the object code that the - Library is used in it and that the Library and its use are - covered by this License. - - b) Accompany the object code with a copy of the GNU GPL and this license - document. - - 4. Combined Works. - - You may convey a Combined Work under terms of your choice that, -taken together, effectively do not restrict modification of the -portions of the Library contained in the Combined Work and reverse -engineering for debugging such modifications, if you also do each of -the following: - - a) Give prominent notice with each copy of the Combined Work that - the Library is used in it and that the Library and its use are - covered by this License. - - b) Accompany the Combined Work with a copy of the GNU GPL and this license - document. - - c) For a Combined Work that displays copyright notices during - execution, include the copyright notice for the Library among - these notices, as well as a reference directing the user to the - copies of the GNU GPL and this license document. - - d) Do one of the following: - - 0) Convey the Minimal Corresponding Source under the terms of this - License, and the Corresponding Application Code in a form - suitable for, and under terms that permit, the user to - recombine or relink the Application with a modified version of - the Linked Version to produce a modified Combined Work, in the - manner specified by section 6 of the GNU GPL for conveying - Corresponding Source. - - 1) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (a) uses at run time - a copy of the Library already present on the user's computer - system, and (b) will operate properly with a modified version - of the Library that is interface-compatible with the Linked - Version. - - e) Provide Installation Information, but only if you would otherwise - be required to provide such information under section 6 of the - GNU GPL, and only to the extent that such information is - necessary to install and execute a modified version of the - Combined Work produced by recombining or relinking the - Application with a modified version of the Linked Version. (If - you use option 4d0, the Installation Information must accompany - the Minimal Corresponding Source and Corresponding Application - Code. If you use option 4d1, you must provide the Installation - Information in the manner specified by section 6 of the GNU GPL - for conveying Corresponding Source.) - - 5. Combined Libraries. - - You may place library facilities that are a work based on the -Library side by side in a single library together with other library -facilities that are not Applications and are not covered by this -License, and convey such a combined library under terms of your -choice, if you do both of the following: - - a) Accompany the combined library with a copy of the same work based - on the Library, uncombined with any other library facilities, - conveyed under the terms of this License. - - b) Give prominent notice with the combined library that part of it - is a work based on the Library, and explaining where to find the - accompanying uncombined form of the same work. - - 6. Revised Versions of the GNU Lesser General Public License. - - The Free Software Foundation may publish revised and/or new versions -of the GNU Lesser General Public License from time to time. Such new -versions will be similar in spirit to the present version, but may -differ in detail to address new problems or concerns. - - Each version is given a distinguishing version number. If the -Library as you received it specifies that a certain numbered version -of the GNU Lesser General Public License "or any later version" -applies to it, you have the option of following the terms and -conditions either of that published version or of any later version -published by the Free Software Foundation. If the Library as you -received it does not specify a version number of the GNU Lesser -General Public License, you may choose any version of the GNU Lesser -General Public License ever published by the Free Software Foundation. - - If the Library as you received it specifies that a proxy can decide -whether future versions of the GNU Lesser General Public License shall -apply, that proxy's public statement of acceptance of any version is -permanent authorization for you to choose that version for the -Library. diff --git a/COPYING.MPL b/COPYING.MPL deleted file mode 100644 index 7714141d1..000000000 --- a/COPYING.MPL +++ /dev/null @@ -1,470 +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 -Mozilla Public License. - - ``The contents of this file are subject to the Mozilla 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/MPL/ - - 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 Initial Developer of the Original Code is ________________________. - Portions created by ______________________ are Copyright (C) ______ - _______________________. All Rights Reserved. - - Contributor(s): ______________________________________. - - Alternatively, the contents of this file may be used under the terms - of the _____ license (the "[___] License"), in which case the - provisions of [______] License are applicable instead of those - above. If you wish to allow use of your version of this file only - under the terms of the [____] License and not to allow others to use - your version of this file under the MPL, indicate your decision by - deleting the provisions above and replace them with the notice and - other provisions required by the [___] License. If you do not delete - the provisions above, a recipient may use your version of this file - under either the MPL or the [___] License." - - [NOTE: The text of this Exhibit A may differ slightly from the text of - the notices in the Source Code files of the Original Code. You should - use the text of this Exhibit A rather than the text found in the - Original Code Source Code for Your Modifications.] - diff --git a/GNUmakefile.mk b/GNUmakefile.mk deleted file mode 100644 index d2cbe23b1..000000000 --- a/GNUmakefile.mk +++ /dev/null @@ -1,38 +0,0 @@ -# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*- -#************************************************************************* -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# Copyright 2009 by Sun Microsystems, Inc. -# -# OpenOffice.org - a multi-platform office productivity suite -# -# This file is part of OpenOffice.org. -# -# OpenOffice.org is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License version 3 -# only, as published by the Free Software Foundation. -# -# OpenOffice.org is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License version 3 for more details -# (a copy is included in the LICENSE file that accompanied this code). -# -# You should have received a copy of the GNU Lesser General Public License -# version 3 along with OpenOffice.org. If not, see -# <http://www.openoffice.org/license.html> -# for a copy of the LGPLv3 License. -# -#************************************************************************* - -ifeq ($(strip $(SOLARENV)),) -$(error No environment set!) -endif - -GBUILDDIR := $(SOLARENV)/gbuild -include $(GBUILDDIR)/gbuild.mk - -$(foreach repo,$(gb_REPOS),$(eval $(call gb_Module_make_global_targets,$(wildcard $(repo)/RepositoryModule_*.mk)))) - -# vim: set noet sw=4 ts=4: diff --git a/Makefile.in b/Makefile.in deleted file mode 100644 index dcc7b86d4..000000000 --- a/Makefile.in +++ /dev/null @@ -1,203 +0,0 @@ -# @configure_input@ - -SHELL=/usr/bin/env bash - -ifeq ($(USE_GMAKE),) -GBUILD_OPT:= -else -GBUILD_OPT:=--gmake -endif - -ifeq (@CROSS_COMPILING@,YES) -all: Makefile dmake/dmake@EXEEXT_FOR_BUILD@ src.downloaded cross-build-toolset -else -all: Makefile dmake/dmake@EXEEXT_FOR_BUILD@ src.downloaded -endif - @. ./Env.Host.sh && \ - cd instsetoo_native && \ - build.pl $(GBUILD_OPT) -P@BUILD_NCPUS@ --all -- -P@BUILD_MAX_JOBS@ - -ifeq (@CROSS_COMPILING@,YES) -cross-build-toolset: -# Build necessary modules for the *build* platform, i.e. those needed -# by tools run at build time. Sure, in many of these modules only a -# part of the produced binaries are actually used then in the build. -# Once everything is handled by gbuild, this can hopefully be streamlined. - . ./Env.Build.sh && \ - for D in \ - solenv \ - soltools \ - boost \ - external \ - cppunit \ - xml2cmp \ - lucene \ - sal \ - cosv \ - udm \ - autodoc \ - store \ - salhelper \ - registry \ - idlc \ - icu \ - codemaker \ - udkapi \ - expat \ - libxml2 \ - xml2cmp \ - libxslt \ - offapi \ - oovbaapi \ - cppu \ - cppuhelper \ - rdbmaker \ - cpputools \ - xmlreader \ - i18nutil \ - ridljar \ - jurt \ - jvmaccess \ - bridges \ - ucbhelper \ - comphelper \ - jvmfwk \ - regexp \ - berkeleydb \ - sax \ - stoc \ - i18npool \ - unodevtools \ - gettext \ - dictionaries \ - o3tl \ - basegfx \ - tools \ - idl \ - l10ntools \ - rsc \ - setup_native \ - icc \ - unoil \ - javaunohelper \ - unotools \ - xmlhelp \ - shell; do \ - if grep -q gb_Module_add_targets $$D/Module_$$D.mk 2>/dev/null; then \ - (cd $$D && make -sr -j@BUILD_MAX_JOBS@) || exit 1; \ - else \ - (cd $$D && build.pl $(GBUILD_OPT) -P@BUILD_NCPUS@ -- -P@BUILD_MAX_JOBS@ && deliver.pl) || exit 1; \ - fi; \ - done -endif - -install: - @. ./Env.Host.sh && \ - echo "Installing in @INSTALLDIR@..." && \ - ooinstall "@INSTALLDIR@" && \ - echo "" && \ - echo "Installation finished, you can now execute:" && \ - echo "@INSTALLDIR@/program/soffice" - -distro-pack-install: install - ./bin/distro-install-clean-up - ./bin/distro-install-desktop-integration - ./bin/distro-install-sdk - ./bin/distro-install-file-lists - -dev-install: - @. ./Env.Host.sh && \ - cd smoketestoo_native && \ - export SAL_USE_VCLPLUGIN="svp" && \ - build.pl $(GBUILD_OPT) -P@BUILD_NCPUS@ --all:instsetoo_native -- -P@BUILD_MAX_JOBS@ && \ - cd @abs_builddir@ && ln -s $$SOLARVER/$$INPATH/installation/opt/ install && \ - echo "" && \ - $$SOLARENV/bin/linkoo $$SRC_ROOT/install $$SRC_ROOT && \ - echo && echo "Developer installation finished, you can now execute:" && echo && \ - if test `uname -s` = Darwin; then \ - echo open install/LibreOffice.app; \ - else \ - echo "cd @abs_builddir@/install/program" && \ - echo ". ./ooenv" && \ - echo "./soffice.bin"; \ - fi - -distclean: - -rm config.cache - -rm config.log -ifeq (@BUILD_DMAKE@,YES) - -$(GNUMAKE) -C dmake distclean -endif - -clean: - . ./Env.Host.sh && \ - rm -rf */$$INPATH && \ - rm -rf solver/*/$$INPATH && \ - rm -rf workdir && \ - rm -rf install -ifeq (@BUILD_DMAKE@,YES) - . ./Env.Host.sh && \ - (if [ -f dmake/Makefile ] ; then $$GNUMAKE -C dmake clean; fi) && \ - rm -f solenv/*/bin/dmake* -endif -ifeq (@CROSS_COMPILING@,YES) - . ./Env.Host.sh && \ - rm -rf */$$INPATH_FOR_BUILD && \ - rm -rf solver/*/$$INPATH_FOR_BUILD -endif - -dmake/dmake@EXEEXT_FOR_BUILD@: - ./bootstrap - -src.downloaded: ooo.lst download -ifeq (@DO_FETCH_TARBALLS@,YES) - @. ./Env.Host.sh && \ - $$SRC_ROOT/download $$SRC_ROOT/ooo.lst && touch $@ -else - @echo "Automatic fetching of external tarballs is disabled." -endif - -fetch: src.downloaded - -Makefile: configure.in ooo.lst.in set_soenv.in Makefile.in - ./autogen.sh - -check: Makefile dmake/dmake@EXEEXT_FOR_BUILD@ fetch - @. ./Env.Host.sh && \ - cd smoketestoo_native && \ - export SAL_USE_VCLPLUGIN="svp" && \ - build.pl $(GBUILD_OPT) -P@BUILD_NCPUS@ --all -- -P@BUILD_MAX_JOBS@ - @. ./Env.Host.sh && $$SOLARENV/bin/subsequenttests - -id: - @. ./Env.Host.sh && \ - create-ids - -tags: - @. ./Env.Host.sh && \ - create-tags - -docs: - @. ./Env.Host.sh && \ - mkdocs.sh $$SRC_ROOT/docs $$SOLARENV/inc/doxygen.cfg - -findunusedcode: -# experimental callcatcher target -# http://www.skynet.ie/~caolan/Packages/callcatcher.html - @which callcatcher > /dev/null 2>&1 || \ - (echo "callcatcher not installed" && false) - @. ./Env.Host.sh && \ - source <(sed -e s,$$INPATH,callcatcher,g ./Env.Host.sh) && \ - . ./solenv/bin/callcatchEnv.Set.sh && \ - cd instsetoo_native && \ - build.pl $(GBUILD_OPT) --all - @. ./Env.Host.sh && \ - source <(sed -e s,$$INPATH,callcatcher,g ./Env.Host.sh) && \ - callanalyse \ - $$WORKDIR/LinkTarget/*/* \ - */$$OUTPATH/bin/* \ - */$$OUTPATH/lib/* > unusedcode.all -#because non-c++ symbols could be dlsymed lets make a list of class level -#unused methods which don't require much effort to determine if they need -#to be just removed, or put behind appropiate platform or debug level ifdefs - @grep ::.*\( unusedcode.all | grep -v cppu::bootstrap > unusedcode.easy diff --git a/Module_tail_build.mk b/Module_tail_build.mk deleted file mode 100644 index 6002046a3..000000000 --- a/Module_tail_build.mk +++ /dev/null @@ -1,47 +0,0 @@ -# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*- -# -# Version: MPL 1.1 / GPLv3+ / LGPLv3+ -# -# The contents of this file are subject to the Mozilla 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/MPL/ -# -# 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 Initial Developer of the Original Code is -# Norbert Thiebaud <nthiebaud@gmail.com> (C) 2011, All Rights Reserved. -# -# Alternatively, the contents of this file may be used under the terms of -# either the GNU General Public License Version 3 or later (the "GPLv3+"), or -# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), -# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable -# instead of those above. - - -$(eval $(call gb_Module_Module,tail_end)) - -$(eval $(call gb_Module_add_moduledirs,tail_end,\ - chart2 \ - cui \ - dbaccess \ - fileaccess \ - formula \ - hwpfilter \ - lotuswordpro \ - padmin \ - reportdesign \ - sc \ - sd \ - slideshow \ - starmath \ - sw \ - unoxml \ - wizards \ - writerfilter \ -)) - -# vim: set noet sw=4 ts=4: @@ -0,0 +1,20 @@ + +This git repository is part of the "bootstrap" family of Libreoffice repos. +It is obsolete and its only useful content are the LibreOffice 3.3 +and 3.4 release branches. + +If you are interested in the latest and greatest development branch "master", +or in release branches of LibreOffice versions newer than 3.4, please +check out the "core" git repository, as described on the Wiki: + + http://wiki.documentfoundation.org/Development/Native_Build + +If you want to build the 3.3 or 3.4 release, you need to switch to the +corresponding release branch: + + ./g checkout libreoffice-3-4 + +If for some reason you want to look at obsolete in-development code, +check out the "master-backup" branch in this repository; this is most likely +to be a complete waste of time though. + diff --git a/README.cross b/README.cross deleted file mode 100644 index 095a419bb..000000000 --- a/README.cross +++ /dev/null @@ -1,258 +0,0 @@ -Cross-compiling LibreOffice -=========================== - -Notes on cross-compiling LibreOffice, written by Tor Lillqvist -<tlillqvist@novell.com> <tml@iki.fi> in May, 2011. - -Cross-compilation of LibreOffice is not possible yet. Some initial -work is done, "baby steps", but a lot remains. This work is highly -experimental and done mostly in my own spare time just for the hacking -pleasure. No promise, explicit or implied, is given that it will ever -be finished. - -Searching for information about cross-compilation of OpenOffice.org -(the predecessor of LibreOffice) you will find information about what -actually was not cross-compilation, but using QEMU. - -My cross-compilation experimentation is going on for four platforms: -Windows, iOS, Android and PowerPC Mac OS X. I work on the master -branch of LibreOffice. Some other people have talked about setting up -a separate branch for Android work, or even separate clones at -github. I am not interested in that. - - -General -------- - -In GNU Autoconf terminology, "build" is the platform on which you are -running a build on some software and "host" is the platform on which -the software you are building will run. Only in the specific case of -building compilers and other programming tools is the term "target" -used to indicate the platform for which the tools your are building -will produce code. As LibreOffice is not a compiler, the "target" term -should not be used in the context of cross-compilation. - -(For a case where all three of "build", "host" and "target" are -different: consider a gcc cross-compiler running on Windows, producing -code for Android, where the cross-compiler itself was built on -Linux. (This is a real case.) An interesting tidbit is that such -configurations are called "Canadian Cross".) - -Even though the LibreOffice build mechanism is highly unorthodox, the -configure script takes the normal --build and --host options like any -GNU Autoconf -based configure script. To cross-compile, you basically -need just to specify a suitable --host option and things should work -out nicely. In practise, some more details might be needed. See -examples below. - - -What is so hard, then? ----------------------- - -Despite the fact that the configure script takes normal --build and ---host options, that is just the beginning. In practise a lot of work -was necessary to separate tests for "host" and "build" platforms in -the configure script. See the git log for details. And the reasonably -"standard" configure.in is just the top level; when we get down to the -actual makefilery used to build the bits of LibreOffice, it gets much -worse. - - -Windows -------- - -There is some support in LibreOffice already (from OpenOffice.org) for -building it locally on Windows but with the GNU tool-chain, i.e. what -is commonly known as MinGW. But as far as I know, that work has never -attempted cross-compilation. - -This OOo-originated MinGW support attempts to support both running -Cygwin gcc in its -mno-cygwin mode, and a native MinGW compiler. The --mno-cygwin mechanism in the Cygwin gcc is rapidly being obsoleted, if -it isn't already, and I have not attempted to check that it keeps -working. Ditto for native MinGW; if one compiles natively on Windows, -why not use Microsoft's compiler, as OOo/LO has been build for Windows -all the time using that and it works fine. - -In my opinion, the only case where it makes sense to use MinGW is for -cross-compilation. There is just too much crack on Windows anyway, and -it is a semi-miracle (well, make that the result of years of work) -that the MSVC build under Cygwin works as nicely as it does. - -MinGW is available as cross-build toolchains pre-packaged in more or -less official packages for many Linux distros including Debian, Fedora -and openSUSE. Personally I use the mingw32 packages in the openSUSE -Build Service, running on openSUSE. - -It is somewhat unclear how well thought-out the conditionals and code -for MinGW inside the OOo-originated code in LibreOffice actually -is. The little I have seen of it seems a bit randomish, with -copy-pasting having been preferred to factoring out differences. - -The autogen.lastrun I use for my MinGW cross-compilation experimentation is: - -CC=ccache i686-w64-mingw32-gcc -CXX=ccache i686-w64-mingw32-g++ -CC_FOR_BUILD=ccache gcc -CXX_FOR_BUILD=ccache g++ ---build=x86_64-unknown-linux-gnu ---host=i686-w64-mingw32 ---with-distro=LibreOfficeWin32 ---disable-binfilter ---disable-build-mozilla ---disable-directx ---disable-ext-nlpsolver ---disable-ext-pdfimport ---disable-ext-presenter-console ---disable-ext-presenter-minimizer ---disable-ext-report-builder ---disable-ext-scripting-beanshell ---disable-ext-scripting-javascript ---disable-ext-wiki-publisher ---disable-ext-wiki-publisher ---disable-mozilla ---disable-zenity ---enable-python=system ---with-external-tar=/mnt/hemulen/ooo/git/master/src ---with-num-cpus=1 ---with-max-jobs=1 ---with-system-altlinuxhyph ---with-system-boost ---with-system-cairo ---with-system-cppunit ---with-system-curl ---with-system-db ---with-system-expat ---with-system-gettext ---with-system-hunspell ---with-system-icu ---with-system-libpng ---with-system-libwpd ---with-system-libwpg ---with-system-libwps ---with-system-libxml ---with-system-libxslt ---with-system-lpsolve ---with-system-mythes ---with-system-neon ---with-system-openssl ---with-system-redland ---with-vendor=no - - -iOS ---- - -iOS is the operating system of Apple's mobile devices. Clearly for a -device like the iPad it would be totally unacceptable to run a normal -LibreOffice application with a overlapping windows and mouse-oriented -GUI widgets. No work has been done (at least publicly) to design a -touch GUI for LibreOffice, so the work on cross-compiling LibreOffice -for iOS is extremely experimental, and of course partly pointless;) -But it is interesting and fun nonetheless. - -Obviously it will make sense to build only a part of LibreOffice's -code for iOS. Most likely all GUI-oriented code should be left out, -and some iOS app that eventually wants to use the remaining bits will -handle all its GUI in a platform-dependent manner. How well it will be -possible to do such a split remains to be seen. As I said, this is -highly experimental and just in its baby steps phase. - -Technically, one important special aspect of iOS is that apps are not -allowed to load own dynamic libraries. (System libraries are used in -the form of dynamic libraries, just like on MacOSX, of which iOS is a -variant.) So all the libraries in LibreOffice that normally are shared -libraries (DLLs on Windows, shared objects (.so) on Linux, dynamic -libraries on MacOSX (.dylib)) need to be built as static archives -instead. Obviously this will have some interesting consequences for -how UNO is implemented and used. None of that has been spared much -thought yet. - -The Apple tool-chain for iOS cross-building is available only for -MacOSX, so that is where I have been doing it. - -Here is my autogen.lastrun for iOS (device): -CXX=ccache /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk -CC=ccache /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk -CC_FOR_BUILD=ccache /Xcode3/usr/bin/gcc-4.0 -CXX_FOR_BUILD=ccache /Xcode3/usr/bin/g++-4.0 ---with-distro=LibreOfficeiOS ---with-external-tar=/Volumes/ooo/git/master/src ---with-num-cpus=1 ---with-max-jobs=1 - -And here for the iOS simulator: -CXX=ccache /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk -CC=ccache /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk -CC_FOR_BUILD=ccache /Xcode3/usr/bin/gcc-4.0 -CXX_FOR_BUILD=ccache /Xcode3/usr/bin/g++-4.0 ---with-distro=LibreOfficeiOS ---with-external-tar=/Volumes/ooo/git/master/src ---with-num-cpus=1 ---with-max-jobs=1 ---disable-librsvg ---enable-debug - - -Android -------- - -I don't know much about Android, but from a technical point of view it -is a kind of Linux, of course. As far as I know it is allowed for an -Android app to use shared objects, but if it isn't, then just the same -approach as used on iOS will need to be used. - -As for the GUI, the same holds as said above for iOS. - -I have done my Android cross-compilation work on Linux (openSUSE in -particular), but it could as well be done on MacOSX. The Android -cross-buld tool-chain (the "Native Development Kit", or NDK) is -available for Linux, MacOSX and Windows. (Trying to cross-compile from -Windows will probably drive you insane.) - -Here is my autogen.lastrun for Android: -SYSBASE=/home/tml/android-ndk-r5c/platforms/android-9/arch-arm -CC=ccache /home/tml/android-ndk-r5c/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc --sysroot /home/tml/android-ndk-r5c/platforms/android-9/arch-arm -CXX=ccache /home/tml/android-ndk-r5c/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-g++ --sysroot /home/tml/android-ndk-r5c/platforms/android-9/arch-arm -I /home/tml/android-ndk-r5c/sources/cxx-stl/gnu-libstdc++/include -I/home/tml/android-ndk-r5c/sources/cxx-stl/gnu-libstdc++/libs/armeabi-v7a/include -L/home/tml/android-ndk-r5c/sources/cxx-stl/gnu-libstdc++/libs/armeabi-v7a -fexceptions -frtti -AR=/home/tml/android-ndk-r5c/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-ar -NM=/home/tml/android-ndk-r5c/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-nm -OBJDUMP=/home/tml/android-ndk-r5c/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-objdump -RANLIB=/home/tml/android-ndk-r5c/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-ranlib -STRIP=/home/tml/android-ndk-r5c/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-strip -CC_FOR_BUILD=ccache gcc -CXX_FOR_BUILD=ccache g++ ---build=x86_64-unknown-linux-gnu ---disable-zenity ---with-distro=LibreOfficeAndroid ---with-external-tar=/mnt/hemulen/ooo/git/master/src ---disable-python ---with-num-cpus=1 ---with-max-jobs=1 - - -PowerPC Mac OS X ----------------- - -Cross-compiling for PowerPC Mac OS X from Intel Mac OS X will probably -be easy. The APIs available should after all be closely identical to -those on Intel Mac OS X, and LibreOffice builds fine natively on -PowerPC Mac already. I have just started experimenting with it. My -autogen.lastrun looks like this: - -CC=ccache /Xcode3/usr/bin/gcc-4.0 -arch ppc -CXX=ccache /Xcode3/usr/bin/g++-4.0 -arch ppc -CC_FOR_BUILD=ccache /Xcode3/usr/bin/gcc-4.0 -CXX_FOR_BUILD=ccache /Xcode3/usr/bin/g++-4.0 ---build=i386-apple-darwin10.7.0 ---host=powerpc-apple-darwin10 ---disable-mozilla ---disable-build-mozilla ---with-external-tar=/Volumes/ooo/git/master/src - - - -That's all, thank you, and have a nice day. People with commit access, -feel free to edit this document, and add yourself below. Sorry for -writing now initially from such a personal point of view. - ---Tor Lillqvist <tlillqvist@novell.com>, <tml@iki.fi> diff --git a/Repository.mk b/Repository.mk deleted file mode 100644 index 590fd7ff6..000000000 --- a/Repository.mk +++ /dev/null @@ -1,221 +0,0 @@ -# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*- -#************************************************************************* -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# Copyright 2009 by Sun Microsystems, Inc. -# -# OpenOffice.org - a multi-platform office productivity suite -# -# This file is part of OpenOffice.org. -# -# OpenOffice.org is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License version 3 -# only, as published by the Free Software Foundation. -# -# OpenOffice.org is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License version 3 for more details -# (a copy is included in the LICENSE file that accompanied this code). -# -# You should have received a copy of the GNU Lesser General Public License -# version 3 along with OpenOffice.org. If not, see -# <http://www.openoffice.org/license.html> -# for a copy of the LGPLv3 License. -# -#************************************************************************* - -$(eval $(call gb_Helper_register_repository,SRCDIR)) - - -$(eval $(call gb_Helper_register_executables,NONE, \ - bmp \ - bmpsum \ - g2g \ - mkunroll \ - rscdep \ - so_checksum \ -)) - -$(eval $(call gb_Helper_register_executables,OOO, \ - spadmin.bin \ -)) - -$(eval $(call gb_Helper_register_libraries,OOOLIBS, \ - adabas \ - adabasui \ - agg \ - analysis \ - animcore \ - basctl \ - basebmp \ - canvastools \ - date \ - forui \ - odbc \ - odbcbase \ - oox \ - ooxml \ - sdbc \ - AppleRemote \ - avmedia \ - basegfx \ - chartcontroller \ - chartmodel \ - charttools \ - chartview \ - cppcanvas \ - cui \ - dba \ - dbaxml \ - dbmm \ - dbtools \ - dbu \ - desktop_detector \ - doctok \ - drawinglayer \ - editeng \ - for \ - frm \ - fwe \ - fwi \ - fwk \ - fwl \ - fwm \ - hwp \ - i18npaper \ - i18nregexp \ - lng \ - lwpft \ - msfilter \ - msword \ - msworks \ - qstart_gtk \ - resourcemodel \ - rpt \ - rptui \ - rptxml \ - rtftok \ - sax \ - sb \ - sc \ - scd \ - scfilt \ - scui \ - sd \ - sdbt \ - sdd \ - sdfilt \ - sdui \ - sfx \ - sm \ - smd \ - solver \ - sot \ - spa \ - svl \ - svt \ - svx \ - svxcore \ - sw \ - swd \ - swui \ - textconversiondlgs \ - tk \ - tl \ - unordf \ - unoxml \ - utl \ - vbahelper \ - vcl \ - vclplug_gen \ - vclplug_gtk \ - vclplug_gtk3 \ - vclplug_kde \ - vclplug_kde4 \ - vclplug_svp \ - visioimport \ - wpft \ - wpgimport \ - writerfilter \ - xcr \ - xo \ - xof \ -)) - -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \ - xmlreader \ -)) - -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - test \ - fileacc \ -)) - -ifeq ($(OS),IOS) -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - sal_textenc \ -)) -endif - -$(eval $(call gb_Helper_register_libraries,RTLIBS, \ - comphelper \ - i18nisolang1 \ - i18nutil \ - jvmaccess \ - ucbhelper \ -)) - -$(eval $(call gb_Helper_register_libraries,RTVERLIBS, \ - cppuhelper \ - salhelper \ -)) - -$(eval $(call gb_Helper_register_libraries,UNOLIBS_OOO, \ - cairocanvas \ - canvasfactory \ - directx5canvas \ - directx9canvas \ - expwrap \ - fastsax \ - fsstorage \ - gdipluscanvas \ - hatchwindowfactory \ - lomenubar \ - msforms \ - mtfrenderer \ - nullcanvas \ - OGLTrans \ - passwordcontainer \ - productregistration \ - simplecanvas \ - slideshow \ - vbaobj \ - vbaswobj \ - vclcanvas \ - writerfilter_uno \ - writerfilter_debug \ -)) - - -$(eval $(call gb_Helper_register_libraries,UNOVERLIBS, \ - cppu \ - jvmfwk \ - sal \ -)) - -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - app \ - basegfx_s \ - libeay32 \ - ssleay32 \ - ooopathutils \ - sample \ - salcpprt \ - toolshelpers \ - vclmain \ - writerperfect \ -)) - -# vim: set noet sw=4 ts=4: diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk deleted file mode 100644 index 03151b80e..000000000 --- a/RepositoryExternal.mk +++ /dev/null @@ -1,661 +0,0 @@ -# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*- -#************************************************************************* -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# Copyright 2009 by Sun Microsystems, Inc. -# -# OpenOffice.org - a multi-platform office productivity suite -# -# This file is part of OpenOffice.org. -# -# OpenOffice.org is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License version 3 -# only, as published by the Free Software Foundation. -# -# OpenOffice.org is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License version 3 for more details -# (a copy is included in the LICENSE file that accompanied this code). -# -# You should have received a copy of the GNU Lesser General Public License -# version 3 along with OpenOffice.org. If not, see -# <http://www.openoffice.org/license.html> -# for a copy of the LGPLv3 License. -# -#************************************************************************* - -# this file describes all the external libraries -# depending on the configure options these may be taken from the system, -# or the internal/bundled copy may be built. - -# for every external, a function gb_LinkTarget_use__FOO is defined, -# once for the system case, once for the internal case. - -# in the system case, no libraries should be registered, but the target-local -# variable LIBS should be set to FOO_LIBS, and INCLUDES to FOO_CFLAGS. - -ifeq ($(SYSTEM_CPPUNIT),YES) - -define gb_LinkTarget__use_cppunit -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(CPPUNIT_CFLAGS) \ -) - -$(call gb_LinkTarget_add_libs,$(1),\ - $(CPPUNIT_LIBS) \ -) - -endef - -else - -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\ - cppunit \ -)) - -define gb_LinkTarget__use_cppunit -$(call gb_LinkTarget_add_linked_libs,$(1),\ - cppunit \ -) - -endef - -endif - -ifeq ($(SYSTEM_ZLIB),YES) - -define gb_LinkTarget__use_zlib -$(call gb_LinkTarget_add_defs,$(1),\ - -DSYSTEM_ZLIB \ -) -$(call gb_LinkTarget_add_libs,$(1),-lz) - -endef - -else # !SYSTEM_ZLIB - -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - zlib \ -)) - -define gb_LinkTarget__use_zlib -$(call gb_LinkTarget_add_linked_static_libs,$(1),\ - zlib \ -) - -endef - -endif # SYSTEM_ZLIB - - -ifeq ($(SYSTEM_JPEG),YES) - -define gb_LinkTarget__use_jpeg -$(call gb_LinkTarget_add_libs,$(1),-ljpeg) -$(call gb_LinkTarget_set_ldflags,$(1),\ - $$(filter-out -L/usr/lib/jvm%,$$(T_LDFLAGS)) \ -) - -endef - -else # !SYSTEM_JPEG - -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - jpeglib \ -)) - -define gb_LinkTarget__use_jpeg -$(call gb_LinkTarget_add_linked_static_libs,$(1),\ - jpeglib \ -) - -endef - -endif # SYSTEM_JPEG - - -ifeq ($(SYSTEM_EXPAT),YES) - -define gb_LinkTarget__use_expat -$(if $(2),,$(error gb_LinkTarget__use_expat needs additional parameter)) - -$(call gb_LinkTarget_add_defs,$(1),\ - -DSYSTEM_EXPAT \ -) - -$(call gb_LinkTarget_add_libs,$(1),-lexpat) - -endef - -else # !SYSTEM_EXPAT - -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - ascii_expat_xmlparse \ - expat_xmlparse \ - expat_xmltok \ -)) - -define gb_LinkTarget__use_expat -$(if $(2),,$(error gb_LinkTarget__use_expat needs additional parameter)) - -$(if $(filter-out ascii_expat_xmlparse,$(2)),\ - $(call gb_LinkTarget_add_defs,$(1),\ - -DXML_UNICODE \ -)) - -$(call gb_LinkTarget_add_linked_static_libs,$(1),\ - $(2) \ - expat_xmltok \ -) - -endef - -endif # SYSTEM_EXPAT - -# now define 2 wrappers that select which internal static library to use... -define gb_LinkTarget__use_expat_utf8 -$(call gb_LinkTarget__use_expat,$(1),ascii_expat_xmlparse) - -endef - -define gb_LinkTarget__use_expat_utf16 -$(call gb_LinkTarget__use_expat,$(1),expat_xmlparse) - -endef - - -ifeq ($(SYSTEM_LIBXML),YES) - -define gb_LinkTarget__use_libxml2 -$(call gb_LinkTarget_add_defs,$(1),\ - -DSYSTEM_LIBXML \ -) -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(LIBXML_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(LIBXML_LIBS)) - -endef - -else # !SYSTEM_LIBXML - -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \ - xml2 \ -)) - -define gb_LinkTarget__use_libxml2 -$(call gb_LinkTarget_add_linked_libs,$(1),\ - xml2 \ -) - -endef - -endif # SYSTEM_LIBXML - - -ifeq ($(SYSTEM_LIBXSLT),YES) - -define gb_LinkTarget__use_libxslt -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(LIBXSLT_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(LIBXSLT_LIBS)) - -endef - -else # !SYSTEM_LIBXSLT - -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - xslt \ -)) - -define gb_LinkTarget__use_libxslt -$(call gb_LinkTarget_add_linked_libs,$(1),\ - xslt \ -) - -endef - -endif # SYSTEM_LIBXSLT - - -ifeq ($(SYSTEM_REDLAND),YES) - -define gb_LinkTarget__use_librdf -$(call gb_LinkTarget_add_defs,$(1),\ - -DSYSTEM_REDLAND \ -) -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(REDLAND_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(REDLAND_LIBS)) - -endef - -else # !SYSTEM_REDLAND - -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - rdf \ -)) - -define gb_LinkTarget__use_librdf -$(call gb_LinkTarget_add_linked_libs,$(1),\ - rdf \ -) - -endef - -endif # SYSTEM_REDLAND - - -ifeq ($(SYSTEM_CAIRO),YES) - -# FREETYPE_CLAGS from environment if ENABLE_CAIRO is used -define gb_LinkTarget__use_cairo -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(FREETYPE_CFLAGS) \ - $(CAIRO_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(CAIRO_LIBS)) - -endef - -else # !SYSTEM_CAIRO - -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - cairo \ -)) -ifneq ($(OS),WNT) -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - pixman-1 \ -)) -endif # WNT - -define gb_LinkTarget__use_cairo -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - -I$(OUTDIR)/inc/cairo \ - $(FREETYPE_CFLAGS) \ -) -$(call gb_LinkTarget_add_linked_libs,$(1),\ - cairo \ -) -ifneq ($(OS),WNT) -ifeq ($(OS),MACOSX) -$(call gb_LinkTarget_add_static_libs,$(1),\ - pixman-1 \ -) -else -$(call gb_LinkTarget_add_linked_libs,$(1),\ - pixman-1 \ -) -endif -endif - -endef - -endif # SYSTEM_CAIRO - -define gb_LinkTarget__use_freetype -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(FREETYPE_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(FREETYPE_LIBS)) - -endef - -define gb_LinkTarget__use_fontconfig -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(FONTCONFIG_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS)) - -endef - -ifeq ($(SYSTEM_GRAPHITE),YES) - -define gb_LinkTarget__use_graphite -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(GRAPHITE_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS)) - -endef - -else # !SYSTEM_GRAPHITE - -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - graphite2_off \ -)) -define gb_LinkTarget__use_graphite -$(call gb_LinkTarget_add_linked_static_libs,$(1),\ - graphite2_off \ -) - -endef - -endif # SYSTEM_GRAPHITE - - -ifeq ($(SYSTEM_ICU),YES) - -define gb_LinkTarget__use_icui18n -$(call gb_LinkTarget_add_libs,$(1),-licui18n) -endef -define gb_LinkTarget__use_icule -$(call gb_LinkTarget_add_libs,$(1),-licule) - -endef -define gb_LinkTarget__use_icuuc -$(call gb_LinkTarget_add_libs,$(1),-licuuc) - -endef - -else # !SYSTEM_ICU - -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - icui18n \ - icule \ - icuuc \ -)) - -define gb_LinkTarget__use_icui18n -$(call gb_LinkTarget_add_linked_libs,$(1),\ - icui18n \ -) -endef -define gb_LinkTarget__use_icule -$(call gb_LinkTarget_add_linked_libs,$(1),\ - icule \ -) - -endef -define gb_LinkTarget__use_icuuc -$(call gb_LinkTarget_add_linked_libs,$(1),\ - icuuc \ -) - -endef - -endif # SYSTEM_ICU - - -ifeq ($(SYSTEM_OPENSSL),YES) - -define gb_LinkTarget__use_openssl -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(OPENSSL_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(OPENSSL_LIBS)) - -endef - -else # !SYSTEM_OPENSSL - -ifeq ($(OS),WNT) -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - crypto \ - ssl \ -)) -else -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - crypto \ - ssl \ -)) -endif - -define gb_LinkTarget__use_openssl -ifeq ($(OS),WNT) -$(call gb_LinkTarget_add_linked_libs,$(1),\ - crypto \ - ssl \ -) -else -$(call gb_LinkTarget_add_linked_static_libs,$(1),\ - crypto \ - ssl \ -) -ifeq ($(OS),SOLARIS) -$(call gb_LinkTarget_add_libs,$(1),\ - -lnsl \ - -lsocket \ -) -endif -endif - -endef - -endif # SYSTEM_OPENSSL - - -ifeq ($(SYSTEM_LIBVISIO),YES) - -define gb_LinkTarget__use_visio -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(LIBVISIO_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(LIBVISIO_LIBS)) - -endef - -else # !SYSTEM_LIBVISIO - -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - visiolib \ -)) - -define gb_LinkTarget__use_visio -$(call gb_LinkTarget_add_linked_static_libs,$(1),\ - visiolib \ -) - -endef - -endif # SYSTEM_LIBVISIO - - -ifeq ($(SYSTEM_LIBWPD),YES) - -define gb_LinkTarget__use_wpd -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(LIBWPD_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(LIBWPD_LIBS)) - -endef - -else # !SYSTEM_LIBWPD - -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - wpdlib \ -)) - -define gb_LinkTarget__use_wpd -$(call gb_LinkTarget_add_linked_static_libs,$(1),\ - wpdlib \ -) - -endef - -endif # SYSTEM_LIBWPD - - -ifeq ($(SYSTEM_LIBWPG),YES) - -define gb_LinkTarget__use_wpg -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(LIBWPG_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(LIBWPG_LIBS)) - -endef - -else # !SYSTEM_LIBWPG - -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - wpglib \ -)) - -define gb_LinkTarget__use_wpg -$(call gb_LinkTarget_add_linked_static_libs,$(1),\ - wpglib \ -) - -endef - -endif # SYSTEM_LIBWPG - - -ifeq ($(SYSTEM_LIBWPS),YES) - -define gb_LinkTarget__use_wps -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(LIBWPS_CFLAGS) \ -) -$(call gb_LinkTarget_add_libs,$(1),$(LIBWPS_LIBS)) - -endef - -else # !SYSTEM_LIBWPS - -$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \ - wpslib \ -)) - -define gb_LinkTarget__use_wps -$(call gb_LinkTarget_add_linked_static_libs,$(1),\ - wpslib \ -) - -endef - -endif # SYSTEM_LIBWPS - - -ifeq ($(SYSTEM_LPSOLVE),YES) - -define gb_LinkTarget__use_lpsolve55 -$(call gb_LinkTarget_add_libs,$(1),-llpsolve55) - -endef - -else # !SYSTEM_LPSOLVE - -$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \ - lpsolve55 \ -)) - -define gb_LinkTarget__use_lpsolve55 -$(call gb_LinkTarget_add_linked_libs,$(1),\ - lpsolve55 \ -) - -endef - -endif # SYSTEM_LPSOLVE - - -define gb_LinkTarget__use_gtk -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(GTK_CFLAGS) \ -) - -$(call gb_LinkTarget_add_libs,$(1),$(GTK_LIBS)) - -endef - -define gb_LinkTarget__use_gthread -$(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS)) - -endef - -define gb_LinkTarget__use_dbusmenugtk -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(DBUSMENUGTK_CFLAGS) \ -) - -$(call gb_LinkTarget_add_libs,$(1),$(DBUSMENUGTK_LIBS)) - -endef - -# MacOSX-only frameworks -# (in alphabetical order) - -define gb_LinkTarget__use_carbon -$(call gb_LinkTarget_add_libs,$(1), \ - -framework Carbon \ -) - -endef - -define gb_LinkTarget__use_cocoa -$(call gb_LinkTarget_add_libs,$(1), \ - -framework Cocoa \ -) - -endef - -define gb_LinkTarget__use_quicktime -$(call gb_LinkTarget_add_libs,$(1), \ - -framework QuickTime \ -) - -endef - -# Common MacOSX and iOS frameworks - -define gb_LinkTarget__use_corefoundation -$(call gb_LinkTarget_add_libs,$(1), \ - -framework CoreFoundation \ -) - -endef - -define gb_LinkTarget__use_coregraphics -$(call gb_Library_add_libs,$(1), \ - -framework CoreGraphics \ -) - -endef - -define gb_LinkTarget__use_coretext -$(call gb_Library_add_libs,$(1), \ - -framework CoreText \ -) - -endef - -define gb_LinkTarget__use_foundation -$(call gb_LinkTarget_add_libs,$(1), \ - -framework Foundation \ -) - -endef - -# iOS-only frameworks - -define gb_LinkTarget__use_uikit -$(call gb_LinkTarget_add_libs,$(1), \ - -framework UIKit \ -) - -endef - -# vim: set noet sw=4 ts=4: diff --git a/RepositoryFixes.mk b/RepositoryFixes.mk deleted file mode 100644 index eb390a5bb..000000000 --- a/RepositoryFixes.mk +++ /dev/null @@ -1,163 +0,0 @@ -# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*- -#************************************************************************* -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# Copyright 2000, 2010 Oracle and/or its affiliates. -# -# OpenOffice.org - a multi-platform office productivity suite -# -# This file is part of OpenOffice.org. -# -# OpenOffice.org is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License version 3 -# only, as published by the Free Software Foundation. -# -# OpenOffice.org is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License version 3 for more details -# (a copy is included in the LICENSE file that accompanied this code). -# -# You should have received a copy of the GNU Lesser General Public License -# version 3 along with OpenOffice.org. If not, see -# <http://www.openoffice.org/license.html> -# for a copy of the LGPLv3 License. -# -#************************************************************************* - -# fixes for all the libraries that are named with too much creativity and do -# not follow any of the established nameschemes - -# Make has no support for 'or' clauses in conditionals, -# we use a filter expression instead. -ifneq (,$(filter LINUX-GCC MACOSX-GCC WNT-GCC DRAGONFLY-GCC OPENBSD-GCC FREEBSD-GCC NETBSD-GCC IOS-GCC ANDROID-GCC, $(OS)-$(COM))) -# Could we in fact just check for $(COM) == "GCC" here? -gb_Library_FILENAMES := $(patsubst comphelper:libcomphelper%,comphelper:libcomphelp%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst cppuhelper:libcppuhelper%,cppuhelper:libuno_cppuhelper%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst jvmfwk:libuno_jvmfwk%,jvmfwk:libjvmfwk%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst salhelper:libsalhelper%,salhelper:libuno_salhelper%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst ucbhelper:libucbhelper%,ucbhelper:libucbhelper4%,$(gb_Library_FILENAMES)) -endif - -ifeq ($(OS),SOLARIS) -gb_Library_FILENAMES := $(patsubst comphelper:libcomphelper%,comphelper:libcomphelp%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst cppuhelper:libcppuhelper%,cppuhelper:libuno_cppuhelper%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst ucbhelper:libucbhelper%,ucbhelper:libucbhelper4%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst jvmfwk:libuno_jvmfwk%,jvmfwk:libjvmfwk%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst salhelper:libsalhelper%,salhelper:libuno_salhelper%,$(gb_Library_FILENAMES)) -endif - -ifeq ($(OS),WNT) - -ifeq ($(COM),GCC) -gb_Library_FILENAMES := $(patsubst sb:isb%,sb:basic%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst sfx:isfx%,sfx:sfx%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst svt:isvt%,svt:svtool%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst tl:itl%,tl:itools%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst vbahelper:ivbahelper%,vbahelper:vbahelper%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst crypto:icrypto%,crypto:crypto%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst ssl:issl%,ssl:ssl%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst xml2:ixml2%,xml2:libxml2$(gb_Library_IARCEXT),$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst xslt:ixslt%,xslt:libxslt$(gb_Library_IARCEXT),$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst rdf:irdf%,rdf:librdf.dll$(gb_Library_IARCEXT),$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst z:iz%,z:zlib%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst graphite2_off:%.dll.a,graphite2_off:%.a,$(gb_Library_FILENAMES)) -gb_StaticLibrary_FILENAMES := $(patsubst graphite:graphite%,graphite:graphite_dll%,$(gb_StaticLibrary_FILENAMES)) - - -# handle libraries in msvc format that don't use an "i" prefix for their import library -# these are libraries built by OOo, but only a few of them -# all other libraries built by OOo and all platform libraries (exceptions see below) are used without an import library -# we link against their dlls in gcc format directly - -# Libraries not provided by mingw(-w64), available only in the Windows -# SDK. So if these actually are liked with somewhere, we can't -# cross-compile that module then using MinGW. That needs to be fixed -# then, and we need to use these libraries through run-time lookup of -# APIs. Or something. -gb_Library_SDKLIBFILENAMES:=\ - unicows \ - -# some Windows platform libraries are missing in mingw library set -# we have to use them from the PSDK by linking against their ilibs -gb_Library_ILIBFILENAMES:=\ - unicows \ - uuid \ - winmm \ - -gb_Library_DLLFILENAMES := $(filter-out $(foreach lib,$(gb_Library_SDKLIBFILENAMES),$(lib):%),$(gb_Library_DLLFILENAMES)) -gb_Library_DLLFILENAMES += $(foreach lib,$(gb_Library_SDKLIBFILENAMES),$(lib):$(WINDOWS_SDK_HOME)/lib/$(lib).lib) - -gb_Library_DLLFILENAMES := $(patsubst comphelper:comphelper%,comphelper:comphelp%,$(gb_Library_DLLFILENAMES)) -gb_Library_DLLFILENAMES := $(patsubst crypto:crypto%,crypto:libeay32%,$(gb_Library_DLLFILENAMES)) -gb_Library_DLLFILENAMES := $(patsubst icuuc:icuuc%,icuuc:icuuc40%,$(gb_Library_DLLFILENAMES)) -gb_Library_DLLFILENAMES := $(patsubst ssl:ssl%,ssl:ssleay32%,$(gb_Library_DLLFILENAMES)) -gb_Library_DLLFILENAMES := $(patsubst ucbhelper:ucbhelper%,ucbhelper:ucbhelper4%,$(gb_Library_DLLFILENAMES)) -gb_Library_DLLFILENAMES := $(patsubst z:z%,z:zlib%,$(gb_Library_DLLFILENAMES)) - -else #ifneq ($(USE_MINGW),) - -gb_Library_FILENAMES := $(patsubst cairo:icairo%,cairo:cairo%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst comphelper:icomphelper%,comphelper:icomphelp%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst cppunit:icppunit%,cppunit:icppunit_dll%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst crypto:libcrypto%,crypto:libcrypto_static%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst cui:icui%,cui:icuin%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst i18nisolang1:ii18nisolang1%,i18nisolang1:ii18nisolang%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst lpsolve55:ilpsolve55%,lpsolve55:lpsolve55%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst sb:isb%,sb:basic%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst sfx:isfx%,sfx:sfx%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst ssl:libssl%,ssl:libssl_static%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst svt:isvt%,svt:svtool%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst tl:itl%,tl:itools%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst vbahelper:ivbahelper%,vbahelper:vbahelper%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst crypto:icrypto%,crypto:libeay32%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst ssl:issl%,ssl:ssleay32%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst xml2:ixml2%,xml2:libxml2%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst xslt:ixslt%,xslt:libxslt%,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst rdf:irdf%,rdf:librdf%,$(gb_Library_FILENAMES)) -gb_StaticLibrary_FILENAMES := $(patsubst graphite:graphite%,graphite:graphite_dll%,$(gb_StaticLibrary_FILENAMES)) - - -# change the names of all import libraries that don't have an "i" prefix as in our standard naming schema -gb_Library_NOILIBFILENAMES := $(gb_Library_PLAINLIBS_NONE) -gb_Library_NOILIBFILENAMES += icule icuuc \ - graphite2_off \ - msvcprt \ - shlwapi \ - version \ - -gb_Library_FILENAMES := $(filter-out $(foreach lib,$(gb_Library_NOILIBFILENAMES),$(lib):%),$(gb_Library_FILENAMES)) -gb_Library_FILENAMES += $(foreach lib,$(gb_Library_NOILIBFILENAMES),$(lib):$(lib)$(gb_Library_PLAINEXT)) -gb_Library_FILENAMES := $(patsubst z:z%,z:zlib%,$(gb_Library_FILENAMES)) - -ifneq ($(gb_PRODUCT),$(true)) -gb_Library_FILENAMES := $(patsubst msvcrt:msvcrt%,msvcrt:msvcrtd%,$(gb_Library_FILENAMES)) -endif - -gb_Library_DLLFILENAMES := $(patsubst comphelper:comphelper%,comphelper:comphelp%,$(gb_Library_DLLFILENAMES)) -gb_Library_DLLFILENAMES := $(patsubst icuuc:icuuc%,icuuc:icuuc40%,$(gb_Library_DLLFILENAMES)) -gb_Library_DLLFILENAMES := $(patsubst ucbhelper:ucbhelper%,ucbhelper:ucbhelper4%,$(gb_Library_DLLFILENAMES)) -gb_Library_DLLFILENAMES := $(patsubst z:z%,z:zlib%,$(gb_Library_DLLFILENAMES)) - -endif # ifneq ($(USE_MINGW),) - -endif # ifeq ($(OS),WNT) - -# Some external libraries get built as static libraries for Android -# because we haven't bothered fixing their configury to recognize that -# shared libraries can be built for the platform. -ifeq ($(OS),ANDROID) -gb_Library_FILENAMES := $(patsubst cppunit:%.so,cppunit:%.a,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst xml2:%.so,xml2:%.a,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst rdf:%.so,rdf:%.a,$(gb_Library_FILENAMES)) -gb_Library_FILENAMES := $(patsubst xslt:%.so,xslt:%.a,$(gb_Library_FILENAMES)) - -endif - - -ifeq ($(SYSTEM_CAIRO),YES) -gb_Library_TARGETS := $(filter-out cairo,$(gb_Library_TARGETS)) -endif - -# vim: set noet sw=4 ts=4: diff --git a/RepositoryModule_ooo.mk b/RepositoryModule_ooo.mk deleted file mode 100644 index e8b5533e2..000000000 --- a/RepositoryModule_ooo.mk +++ /dev/null @@ -1,99 +0,0 @@ -# -*- Mode: makefile; tab-width: 4; indent-tabs-mode: t -*- -#************************************************************************* -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# Copyright 2000, 2010 Oracle and/or its affiliates. -# -# OpenOffice.org - a multi-platform office productivity suite -# -# This file is part of OpenOffice.org. -# -# OpenOffice.org is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License version 3 -# only, as published by the Free Software Foundation. -# -# OpenOffice.org is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License version 3 for more details -# (a copy is included in the LICENSE file that accompanied this code). -# -# You should have received a copy of the GNU Lesser General Public License -# version 3 along with OpenOffice.org. If not, see -# <http://www.openoffice.org/license.html> -# for a copy of the LGPLv3 License. -# -#************************************************************************* - -$(eval $(call gb_Module_Module,ooo)) - -$(eval $(call gb_Module_add_moduledirs,ooo,\ - animations \ - basctl \ - basebmp \ - basegfx \ - basic \ - canvas \ - chart2 \ - comphelper \ - cppcanvas \ - cui \ - dbaccess \ - drawinglayer \ - editeng \ - fileaccess \ - forms \ - formula \ - framework \ - hwpfilter \ - i18nutil \ - idl \ - linguistic \ - lotuswordpro \ - o3tl \ - offapi \ - oovbaapi \ - oox \ - padmin \ - psprint_config \ - regexp \ - reportdesign \ - sax \ - sc \ - scaddins \ - sccomp \ - sd \ - sfx2 \ - slideshow \ - sot \ - starmath \ - svl \ - svtools \ - svx \ - sw \ - toolkit \ - tools \ - ucbhelper \ - udkapi \ - unotools \ - unoxml \ - vbahelper \ - vcl \ - wizards \ - writerfilter \ - writerperfect \ - xmloff \ - xmlreader \ - xmlscript \ -)) - -# these have only migrated subsequentcheck for now -$(eval $(call gb_Module_add_moduledirs,ooo,\ - configmgr \ - qadevOOo \ - sal \ - ucb \ -)) - -# vim: set noet ts=4 sw=4: diff --git a/TEMPLATE.SOURCECODE.HEADER b/TEMPLATE.SOURCECODE.HEADER deleted file mode 100644 index 974b3219b..000000000 --- a/TEMPLATE.SOURCECODE.HEADER +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Version: MPL 1.1 / GPLv3+ / LGPLv3+ - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License or as specified alternatively below. You may obtain a copy of - * the License at http://www.mozilla.org/MPL/ - * - * 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 Initial Developer of the Original Code is - * [ insert your name / company etc. here eg. Jim Bob <jim@bob.org> ] - * Portions created by the Initial Developer are Copyright (C) 2010 the - * Initial Developer. All Rights Reserved. - * - * Major Contributor(s): - * Ted <ted@bear.com> - * Portions created by the Ted are Copyright (C) 2010 Ted. All Rights Reserved. - * - * For minor contributions see the git repository. - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 3 or later (the "GPLv3+"), or - * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), - * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable - * instead of those above. - */ diff --git a/acinclude.m4 b/acinclude.m4 deleted file mode 100644 index a42a0f1ce..000000000 --- a/acinclude.m4 +++ /dev/null @@ -1,120 +0,0 @@ -dnl @synopsis AX_FUNC_WHICH_GETSPNAM_R -dnl -dnl Determines which historical variant of the getspnam_r() call -dnl (taking four or five arguments) is available on the system -dnl and sets NEW_SHADOW_API=YES if there are five arguments. -dnl -dnl Originally named "AX_FUNC_WHICH_GETHOSTBYNAME_R". Rewritten -dnl for AX_FUNC_WHICH_GETSPNAM_R -dnl -dnl @author Caolan McNamara <caolan@skynet.ie> -dnl @author Daniel Richard G. <skunk@iskunk.org> -dnl @version 2006-05-01 -dnl @license LGPL - -AC_DEFUN([AX_FUNC_WHICH_GETSPNAM_R], [ - - AC_LANG_PUSH(C) - AC_MSG_CHECKING([how many arguments getspnam_r() takes]) - - AC_CACHE_VAL(ac_cv_func_which_getspnam_r, [ - -################################################################ - -ac_cv_func_which_getspnam_r=unknown - -# -# ONE ARGUMENT (sanity check) -# - -# This should fail, as there is no variant of getspnam_r() that takes -# a single argument. If it actually compiles, then we can assume that -# netdb.h is not declaring the function, and the compiler is thereby -# assuming an implicit prototype. In which case, we're out of luck. -# -AC_COMPILE_IFELSE( - AC_LANG_PROGRAM( - [[ - #include <sys/types.h> - #include <shadow.h> - ]], - [[ - const char *name = "myname"; - getspnam_r(name) /* ; */ - ]]), - ac_cv_func_which_getspnam_r=no) - -# -# FIVE ARGUMENTS -# - -if test "$ac_cv_func_which_getspnam_r" = "unknown"; then - -AC_COMPILE_IFELSE( - AC_LANG_PROGRAM( - [[ - #include <sys/types.h> - #include <shadow.h> - ]], - [[ - char buffer[[]] = { '\0' }; - struct spwd spwdStruct; - const char *name = "myname"; - getspnam_r(name, &spwdStruct, buffer, sizeof buffer, 0) /* ; */ - ]]), - ac_cv_func_which_getspnam_r=five) - -fi - -# -# FOUR ARGUMENTS -# - -if test "$ac_cv_func_which_getspnam_r" = "unknown"; then - -AC_COMPILE_IFELSE( - AC_LANG_PROGRAM( - [[ - #include <sys/types.h> - #include <shadow.h> - ]], - [[ - char buffer[[]] = { '\0' }; - struct spwd spwdStruct; - const char *name = "myname"; - getspnam_r(name, &spwdStruct, buffer, sizeof buffer) /* ; */ - ]]), - ac_cv_func_which_getspnam_r=four) - -fi - -################################################################ - -]) dnl end AC_CACHE_VAL - -case "$ac_cv_func_which_getspnam_r" in - five) - AC_MSG_RESULT([five]) - NEW_SHADOW_API=YES - ;; - - four) - AC_MSG_RESULT([four]) - ;; - - no) - AC_MSG_RESULT([cannot find function declaration in shadow.h]) - ;; - - unknown) - AC_MSG_RESULT([can't tell]) - ;; - - *) - AC_MSG_ERROR([internal error]) - ;; -esac - -AC_LANG_POP(C) - -]) dnl end AC_DEFUN diff --git a/autogen.sh b/autogen.sh index 30b1ae409..9adcc8385 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,161 +1,3 @@ -: - eval 'exec perl -S $0 ${1+"$@"}' - if 0; - -use strict; - -sub clean() -{ - system ("rm -Rf autom4te.cache"); - system ("rm -f missing install-sh mkinstalldirs libtool ltmain.sh"); - print "cleaned the build tree\n"; -} - -my $aclocal; - -# check we have various vital tools -sub sanity_checks($) -{ - my $system = shift; - my @path = split (':', $ENV{'PATH'}); - my %required = - ( - 'pkg-config' => "pkg-config is required to be installed", - 'autoconf' => "autoconf is required", - $aclocal => "$aclocal is required", - ); - - for my $elem (@path) { - for my $app (keys %required) { - if (-f "$elem/$app") { - delete $required{$app}; - } - } - } - if ((keys %required) > 0) { - print ("Various low-level dependencies are missing, please install them:\n"); - for my $app (keys %required) { - print "\t $app: " . $required{$app} . "\n"; - } - exit (1); - } -} - -# one argument per line -sub read_args($) -{ - my $file = shift; - my $fh; - my @lst; - open ($fh, $file) || die "can't open file: $file"; - while (<$fh>) { - chomp(); - # migrate from the old system - if ( substr($_, 0, 1) eq "'" ) { - print "Migrating options from the old autogen.lastrun format, using:\n"; - my @opts; - @opts = split(/'/); - foreach my $opt (@opts) { - if ( substr($opt, 0, 1) eq "-" ) { - push @lst, $opt; - print " $opt\n"; - } - } - } else { - push @lst, $_; - } - } - close ($fh); - # print "read args from file '$file': @lst\n"; - return @lst; -} - -sub invalid_distro($$) -{ - my ($config, $distro) = @_; - print STDERR "Can't find distro option set: $config\nThis is not necessarily a problem.\n"; - print STDERR "Distros with distro option sets are:\n"; - my $dirh; - opendir ($dirh, "distro-configs"); - while (($_ = readdir ($dirh))) { - /(.*)\.conf$/ || next; - print STDERR "\t$1\n"; - } - closedir ($dirh); -} - -my @cmdline_args = (); -if (!@ARGV) { - my $lastrun = "autogen.lastrun"; - @cmdline_args = read_args ($lastrun) if (-f $lastrun); -} else { - @cmdline_args = @ARGV; -} - -my @args; -for my $arg (@cmdline_args) { - if ($arg eq '--clean') { - clean(); - } elsif ($arg =~ m/--with-distro=(.*)$/) { - my $config = "distro-configs/$1.conf"; - if (! -f $config) { - invalid_distro ($config, $1); - } else { - push @args, read_args ($config); - } - } else { - push @args, $arg; - } -} -for my $arg (@args) { - if ($arg =~ /^([A-Z]+)=(.*)/) { - $ENV{$1} = $2; - } -} - -# Alloc $ACLOCAL to specify which aclocal to use -$aclocal = $ENV{ACLOCAL} ? $ENV{ACLOCAL} : 'aclocal'; - -my $system = `uname -s`; -chomp $system; - -sanity_checks ($system) unless($system eq 'Darwin'); - -my $aclocal_flags = $ENV{ACLOCAL_FLAGS}; - -$aclocal_flags = "-I ./m4/mac" if (($aclocal_flags eq "") && ($system eq 'Darwin')); - -$ENV{AUTOMAKE_EXTRA_FLAGS} = '--warnings=no-portability' if (!($system eq 'Darwin')); - -system ("$aclocal $aclocal_flags") && die "Failed to run aclocal"; -unlink ("configure"); -system ("autoconf") && die "Failed to run autoconf"; -die "failed to generate configure" if (! -x "configure"); - -if (defined $ENV{NOCONFIGURE}) { - print "Skipping configure process."; -} else { - # Save autogen.lastrun only if we did get some arguments on the command-line - if (@ARGV) { - if ($#cmdline_args > 0) { - # print "writing args to autogen.lastrun\n"; - my $fh; - open ($fh, ">autogen.lastrun") || die "can't open autogen.lastrun: $!"; - for my $arg (@cmdline_args) { - print $fh "$arg\n"; - } - close ($fh); - } - } - print "running ./configure with '" . join ("' '", @args), "'\n"; - system ("./configure", @args); -} - -# Local Variables: -# mode: perl -# cperl-indent-level: 4 -# tab-width: 4 -# indent-tabs-mode: nil -# End: - -# vim:set shiftwidth=4 softtabstop=4 expandtab: # +#!/bin/sh +cat README +exit 1 diff --git a/bin/bash-completion.in b/bin/bash-completion.in deleted file mode 100644 index 77087c593..000000000 --- a/bin/bash-completion.in +++ /dev/null @@ -1,90 +0,0 @@ -# Programmable bash_completion file for the main office applications -# It is based on /etc/profile.d/complete.bash from SUSE Linux 10.1 - -_def=; _dir=; _file=; _nosp= -if complete -o default _nullcommand &> /dev/null ; then - _def="-o default" - _dir="-o dirnames" - _file="-o filenames" -fi -_minusdd="-d ${_dir}" -_minusdf="-d ${_file}" -if complete -o nospace _nullcommand &> /dev/null ; then - _nosp="-o nospace" - _minusdd="${_nosp} ${_dir}" - _minusdf="${_nosp} ${_dir}" -fi -complete -r _nullcommand &> /dev/null - -# General expanding shell function -@OFFICE_SHELL_FUNCTION@ () -{ - # bash `complete' is broken because you can not combine - # -d, -f, and -X pattern without missing directories. - local c=${COMP_WORDS[COMP_CWORD]} - local a="${COMP_LINE}" - local e s g=0 cd dc t="" - local IFS - - shopt -q extglob && g=1 - test $g -eq 0 && shopt -s extglob - # Don't be fooled by the bash parser if extglob is off by default - cd='*-?(c)d*' - dc='*-d?(c)*' - - case "${1##*/}" in -@BASH_COMPLETION_SUFFIXES_CHECKS@ - *) e='!*' - esac - - case "$(complete -p ${1##*/} 2> /dev/null)" in - *-d*) ;; - *) s="-S/" - esac - - IFS=' -' - case "$c" in - \$\(*\)) eval COMPREPLY=\(${c}\) ;; - \$\(*) COMPREPLY=($(compgen -c -P '$(' -S ')' -- ${c#??})) ;; - \`*\`) eval COMPREPLY=\(${c}\) ;; - \`*) COMPREPLY=($(compgen -c -P '\`' -S '\`' -- ${c#?})) ;; - \$\{*\}) eval COMPREPLY=\(${c}\) ;; - \$\{*) COMPREPLY=($(compgen -v -P '${' -S '}' -- ${c#??})) ;; - \$*) COMPREPLY=($(compgen -v -P '$' -- ${c#?})) ;; - \~*/*) COMPREPLY=($(compgen -f -X "$e" -- ${c})) ;; - \~*) COMPREPLY=($(compgen -u ${s} -- ${c})) ;; - *@*) COMPREPLY=($(compgen -A hostname -P '@' -S ':' -- ${c#*@})) ;; - *[*?[]*) COMPREPLY=($(compgen -G "${c}")) ;; - *[?*+\!@]\(*\)*) - if test $g -eq 0 ; then - COMPREPLY=($(compgen -f -X "$e" -- $c)) - test $g -eq 0 && shopt -u extglob - return - fi - COMPREPLY=($(compgen -G "${c}")) ;; - *) - if test "$c" = ".." ; then - COMPREPLY=($(compgen -d -X "$e" -S / ${_nosp} -- $c)) - else - for s in $(compgen -f -X "$e" -- $c) ; do - if test -d $s ; then - COMPREPLY=(${COMPREPLY[@]} $(compgen -f -X "$e" -S / -- $s)) - elif test -z "$t" ; then - COMPREPLY=(${COMPREPLY[@]} $s) - else - case "$(file -b $s 2> /dev/null)" in - $t) COMPREPLY=(${COMPREPLY[@]} $s) ;; - esac - fi - done - fi ;; - esac - test $g -eq 0 && shopt -u extglob -} - - -complete -d -X '.[^./]*' -F @OFFICE_SHELL_FUNCTION@ ${_file} \ -@BASH_COMPLETION_OOO_APPS@ - -unset _def _dir _file _nosp _minusdd _minusdf diff --git a/bin/create_bootstrap_links b/bin/create_bootstrap_links deleted file mode 100755 index a42f7b803..000000000 --- a/bin/create_bootstrap_links +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env bash - -BIN_DIR=$(dirname $0) -REPOS=$(cat ${BIN_DIR?}/repo-list) -cd ${BIN_DIR?}/.. -BOOTSTRAP_DIR=$(pwd) - -for repo in $REPOS ; do - for link in $(ls clone/${repo}) ; do - if [ ! -e "$link" ] ; then - echo "Creating missing link $link" - ln -s "clone/${repo}/$link" "$link" - fi - done -done diff --git a/bin/distro-install-clean-up b/bin/distro-install-clean-up deleted file mode 100755 index df7ac9d91..000000000 --- a/bin/distro-install-clean-up +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/sh - -. ./*[Ee]nv.[Ss]et.sh - -echo "Cleaning up ..."; - -remove_help_localization() -{ - lang=$1 - - # nothing to be done if the localization is en-US if it does not exist - # or if it is already removed - test "$lang" = "en-US" -o \ - ! -e $DESTDIR$INSTALLDIR/help/$lang -o \ - -L $DESTDIR$INSTALLDIR/help/$lang && return; - - echo "... remove \"$lang\"" - - rm -rf $DESTDIR$INSTALLDIR/help/$lang - grep -v "$INSTALLDIR/help/$lang" $DESTDIR/gid_Module_Root.$lang >$DESTDIR/gid_Module_Root.$lang.new - mv -f $DESTDIR/gid_Module_Root.$lang.new $DESTDIR/gid_Module_Root.$lang - # FIXME: the following code could be used without the condition - # and should replace the lines above after only the milestones - # providing gid_Module_Helppack_Help and fixed gid_Module_Root.$lang - # are supported - # Note: The problem with gid_Module_Root.$lang is that it still includes - # %dir */help/* entries. - # Note: It was still necessary on ppc with gcj (OOo-2.0.2). Strange. Have to - # investigate it later. - if test -f $DESTDIR/gid_Module_Helppack_Help.$lang ; then - grep -v "$INSTALLDIR/help/$lang" $DESTDIR/gid_Module_Helppack_Help.$lang >$DESTDIR/gid_Module_Helppack_Help.$lang.new - mv -f $DESTDIR/gid_Module_Helppack_Help.$lang.new $DESTDIR/gid_Module_Helppack_Help.$lang - fi - - # Note: We created a compat symlink in the past. It is no longer necessary. - # We do not want it because RPM has problems with update when we remove - # poor localizations in never packages -} - -# Check if the English help is installed and is in the main package (is first on the list) -# Note that Java-disabled builds do not create help at all. -if test -f $DESTDIR$INSTALLDIR/help/en/sbasic.cfg -a \ - "`for lang in $WITH_LANG_LIST ; do echo $lang ; break ; done`" = "en-US" ; then - - echo "Removing duplicated English help..." - - for lang in $WITH_LANG_LIST ; do - test ! -f $DESTDIR$INSTALLDIR/help/en/sbasic.cfg -o ! -f $DESTDIR$INSTALLDIR/help/$lang/sbasic.cfg && continue; - if diff $DESTDIR$INSTALLDIR/help/en/sbasic.cfg $DESTDIR$INSTALLDIR/help/$lang/sbasic.cfg >/dev/null 2>&1 ; then - remove_help_localization $lang - fi - done - - echo "Removing poor help localizations..." - - for lang in $WITH_POOR_HELP_LOCALIZATIONS ; do - remove_help_localization $lang - done -fi - -echo "Fixing permissions..." -for dir in $DOCDIR $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/examples ; do - if test -d $dir -a -w $dir ; then - find "$dir" -type f \( -name "*.txt" -o -name "*.java" -o -name "*.xml" -o \ - -name "*.xcu" -o -name "*.xcs" -o -name "*.html" -o \ - -name "*.pdf" -o -name "*.ps" -o -name "*.gif" -o \ - -name "*.png" -o -name "*.jpg" -o -name "Makefile" -o \ - -name "manifest.mf" \) -exec chmod 644 {} \; - fi -done - -if test "z$DESTDIR" != "z" ; then - echo "Checking for DESTDIR inside installed files..." - found_destdir= - for file in `find $DESTDIR -type f` ; do - grep -q "$DESTDIR" $file && echo "$file: includes the string \"$DESTDIR\"" && found_destdir=1 - done - if test "z$found_destdir" != "z" ; then - echo "!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!" - echo "The path DESTDIR:$DESTDIR was found inside some" - echo "installed files. It is probably a bug." - echo - echo "Especially, if the DESTDIR is set to \$RPM_BUILD_ROOT" - echo "when creating RPM packages. Even it could be a security hole" - echo "if the application searches /var/tmp for binaries or" - echo "config files because the directory is world-writable." - echo "!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!" - fi -fi diff --git a/bin/distro-install-desktop-integration b/bin/distro-install-desktop-integration deleted file mode 100755 index 6bacb1b7c..000000000 --- a/bin/distro-install-desktop-integration +++ /dev/null @@ -1,181 +0,0 @@ -#!/bin/sh - -. ./*[Ee]nv.[Ss]et.sh - -PRODUCTVERSION_NODOT=`echo $PRODUCTVERSION | sed -e "s/\.//"` - -mkdir -p $DESTDIR$PREFIXDIR/bin - - -create_wrapper() -{ - echo "Install $PREFIXDIR/bin/$1" - - mkdir -p $DESTDIR$PREFIXDIR/bin - cat <<EOT >$DESTDIR$PREFIXDIR/bin/$1 -#!/bin/sh -$INSTALLDIR/program/$2 $3 "\$@" -EOT - chmod 755 $DESTDIR$PREFIXDIR/bin/$1 - # put into file list - test -f "$DESTDIR/$4" && echo "$PREFIXDIR/bin/$1" >>$DESTDIR/$4 -} - -create_man_link() -{ - echo "Install $MANDIR/man1/$1.1.gz" - - mkdir -p $DESTDIR$MANDIR/man1 - echo ".so man1/$2.1" >| $DESTDIR$MANDIR/man1/$1.1 - gzip -f $DESTDIR$MANDIR/man1/$1.1 - test -f "$DESTDIR/$3" && echo "$MANDIR/man1/$1.1.gz" >>"$DESTDIR/$3" -} - -install_man() -{ - echo "Install $MANDIR/man1/$1.1.gz" - - mkdir -p $DESTDIR$MANDIR/man1 - cp sysui/desktop/man/$1.1 $DESTDIR$MANDIR/man1 || exit 1; - gzip -f $DESTDIR$MANDIR/man1/$1.1 - test -f "$DESTDIR/$2" && echo "$MANDIR/man1/$1.1.gz" >>"$DESTDIR/$2" -} - - -add_wrapper() -{ - lowrapper_name="$1" - target_binary="$2" - target_option_1="$3" - used_man_page="$4" - desktop_file="$5" - file_list="$6" - - # do we want compat oowrapper? - oowrapper_name="" - if test "$WITH_COMPAT_OOWRAPPERS" == 'YES' ; then - oowrapper_name=`echo "$lowrapper_name" | sed -e "s/^lo/oo/"` - # "oo" prefix only for wrappers stating with "lo" prefix - test "$oowrapper_name" = "$lowrapper_name" && oowrapper_name= - fi - - # wrappers - create_wrapper "$lowrapper_name" "$target_binary" "$target_option_1" "$file_list" - test -n "$oowrapper_name" && create_wrapper "$oowrapper_name" "$target_binary" "$target_option_1" "$file_list" - - # man pages - if test "$used_man_page" = "$lowrapper_name" ; then - # need to install the manual page - install_man "$lowrapper_name" "$file_list" - else - # just link the manual page - create_man_link "$lowrapper_name" "$used_man_page" "$file_list" - fi - test -n "$oowrapper_name" && create_man_link "$oowrapper_name" "$used_man_page" "$file_list" - - # add desktop file to the right file list - test -n "$desktop_file" -a -f "$DESTDIR/$file_list" && echo "/usr/share/applications/$desktop_file" >>"$DESTDIR/$file_list" -} - -# install desktop integration from plain packages -sysui_temp=`mktemp -d /tmp/distro-pack-desktop-integration-XXXXXX` -cp -a sysui/unxlng*/misc/libreoffice/* "$sysui_temp" -cp -a sysui/desktop/share/create_tree.sh "$sysui_temp" -builddir=`pwd` -cd $sysui_temp -# we want non-versioned stuff in the distro packages -for file in * ; do - sed -e "s/\($INSTALLDIRNAME\)$PRODUCTVERSION_NODOT/\1/" \ - -e "s/\($INSTALLDIRNAME\)$PRODUCTVERSION/\1/" \ - -e "s/\($PRODUCTNAME\) $PRODUCTVERSION/\1/" \ - "$file" >"$file.new" - mv "$file.new" "$file" -done -# call in subshell to do not malfrom PRODUCTVERSION, ... -( - export OFFICE_PREFIX=$LIBDIR - export PREFIX=$INSTALLDIRNAME - export ICON_PREFIX=$INSTALLDIRNAME - export ICON_SOURCE_DIR=$builddir/sysui/desktop/icons - export PRODUCTVERSION= - export KDEMAINDIR=/usr - export GNOMEDIR=/usr - export GNOME_MIME_THEME=hicolor - /bin/bash ./create_tree.sh -) -cd - -rm -rf $sysui_temp - -# we do not want some stuff from the plain packages -rm -f $DESTDIR/$PREFIXDIR/bin/$INSTALLDIRNAME* -rm -f $DESTDIR/usr/share/applications/libreoffice-javafilter.desktop -rm -f $DESTDIR/usr/share/applications/libreoffice-printeradmin.desktop -if test -d $DESTDIR/opt ; then - rm -f $DESTDIR/opt/$INSTALLDIRNAME - rmdir --ignore-fail-on-non-empty $DESTDIR/opt -fi - -# we want non-versioned desktop files -cd $DESTDIR/$INSTALLDIR/share/xdg -# we want non-versioned stuff in the distro packages -for file in *.desktop ; do - sed -e "s/\($INSTALLDIRNAME\)$PRODUCTVERSION_NODOT/\1/" \ - -e "s/\($INSTALLDIRNAME\)$PRODUCTVERSION/\1/" \ - -e "s/\($PRODUCTNAME\) $PRODUCTVERSION/\1/" \ - "$file" >"$file.new" - mv -f "$file.new" "$file" -done -cd - - -# put the stuff installed by create_tree.sh into the right file lists -# desktop files will be added by the corresponding add_wrapper command -if test -f $DESTDIR/gid_Module_Root_Brand ; then - for dir in /usr/share/application-registry \ - /usr/share/mimelnk/application \ - /usr/share/mime/packages \ - /usr/share/mime-info \ - /usr/share/icons ; do - find "$DESTDIR$dir" \( -type f -o -type l \) -printf "$dir/%P\n" >>$DESTDIR/gid_Module_Root_Brand - done -fi - -# wrappers and man pages -# FIXME: do not have desktop file and MIME icon for unopkg -add_wrapper lobase soffice "--base" "libreoffice" "libreoffice-base.desktop" "gid_Module_Brand_Prg_Base" -add_wrapper localc soffice "--calc" "libreoffice" "libreoffice-calc.desktop" "gid_Module_Brand_Prg_Calc" -add_wrapper lodraw soffice "--draw" "libreoffice" "libreoffice-draw.desktop" "gid_Module_Brand_Prg_Draw" -add_wrapper lomath soffice "--math" "libreoffice" "libreoffice-math.desktop" "gid_Module_Brand_Prg_Math" -add_wrapper loimpress soffice "--impress" "libreoffice" "libreoffice-impress.desktop" "gid_Module_Brand_Prg_Impress" -add_wrapper loweb soffice "--web" "libreoffice" "" "gid_Module_Brand_Prg_Wrt" -add_wrapper lowriter soffice "--writer" "libreoffice" "libreoffice-writer.desktop" "gid_Module_Brand_Prg_Wrt" -add_wrapper lofromtemplate soffice ".uno:NewDoc" "libreoffice" "" "gid_Module_Root_Brand" -add_wrapper libreoffice soffice "" "libreoffice" "libreoffice-startcenter.desktop" "gid_Module_Root_Brand" -add_wrapper loffice soffice "" "libreoffice" "" "gid_Module_Root_Brand" -add_wrapper unopkg unopkg "" "unopkg" "" "gid_Module_Root_Brand" - -# /usr/bin/ooffice symlink is necessary by java UNO components to find -# the UNO installation using $PATH, see -# http://udk.openoffice.org/common/man/spec/transparentofficecomponents.html -# Note: if you want to support parallel installation of more OOo versions -# you cannot include this link directly into the package -# For example, the Novell package mark this symlink as %ghost -# and update it in %post and %postun -ln -sf $INSTALLDIR/program/soffice $DESTDIR$PREFIXDIR/bin/soffice -test -f $DESTDIR/gid_Module_Root_Brand && echo "$PREFIXDIR/bin/soffice" >>$DESTDIR/gid_Module_Root_Brand - -# create bash completion -mkdir -p $DESTDIR/etc/bash_completion.d -./bin/generate-bash-completion bin/bash-completion.in $DESTDIR/etc/bash_completion.d/$INSTALLDIRNAME.sh -test -f $DESTDIR/gid_Module_Root_Brand && echo "/etc/bash_completion.d/$INSTALLDIRNAME.sh" >>$DESTDIR/gid_Module_Root_Brand -if test "$WITH_COMPAT_OOWRAPPERS" = "YES" ; then - ./bin/generate-bash-completion --compat-oowrappers bin/bash-completion.in $DESTDIR/etc/bash_completion.d/ooffice.sh - test -f $DESTDIR/gid_Module_Root_Brand && echo "/etc/bash_completion.d/ooffice.sh" >>$DESTDIR/gid_Module_Root_Brand -fi - -echo "Install $OOINSTDIR/basis$VERSION/program/java-set-classpath"; -mkdir -p $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/program -sed -e "s|@INSTALLDIR@|$INSTALLDIR|g" bin/java-set-classpath.in >| "$DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/program/java-set-classpath" || exit 1; -chmod 755 "$DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/program/java-set-classpath" -test -f $DESTDIR/gid_Module_Root_Brand && echo "$INSTALLDIR/basis$PRODUCTVERSION/program/java-set-classpath" >>$DESTDIR/gid_Module_Root_Brand - -exit 0 diff --git a/bin/distro-install-file-lists b/bin/distro-install-file-lists deleted file mode 100755 index f3a8bbf67..000000000 --- a/bin/distro-install-file-lists +++ /dev/null @@ -1,555 +0,0 @@ -#!/bin/sh - -. ./*[Ee]nv.[Ss]et.sh - -BUILDDIR=`pwd` -FILELISTSDIR="$BUILDDIR/file-lists" - -# remove installed file even from the file list -# Params: file_list file_to_remove -remove_file() -{ - rm -f "$DESTDIR/$2" - perl -pi -e "s|^$2$||" "$1" -} - -# move one file from one list of files to a second one -# Params: target_file_list source_file_list file_to_move -mv_file_between_flists() -{ - if grep "^$3\$" $2 >/dev/null 2>&1 ; then - # \$3 can be regular expression - grep "^$3\$" $2 >>$1 - perl -pi -e "s|^$3$||" $2 - fi -} -# add the directories from the source list of files to the target list of -# file which are used in the target list of files but are missing there -# Params: target_file_list source_file_list -add_used_directories() -{ - sort -u -r $2 | sed -n "s|^%dir \(.*\)\$|s%^\\\\(\1\\\\).*%\\\\1%p|p" >$2.pattern - sed -n -f $2.pattern $1 | sort -u | sed "s|^|%dir |" >>$1 - rm $2.pattern - sort -u $1 >$1.unique - mv $1.unique $1 -} - -# remove a duplicity between two filelist -# Params: filelist_with_original filelist_with_duplicity duplicit_path -remove_duplicity_from_flists() -{ - if grep "$3" "$1" >/dev/null 2>&1 && \ - grep "$3" "$2" >/dev/null 2>&1 ; then - perl -pi -e "s|^$3$||" $2 - fi -} - -# merges one file list into another one -# Params: source_filelist dest_filelist replace_dest -merge_flists() -{ - if test -f "$1" ; then - cat "$1" >>"$2" - sort -u "$2" >"$2".sorted - mv "$2".sorted "$2" - fi -} - -if ! test -f $DESTDIR/gid_Module_Root; then - echo "Error: Failed to generate package file lists"; - echo " Have you defined DESTDIR?" - exit 1; -fi - - -rm -rf "$FILELISTSDIR" -mkdir -p "$FILELISTSDIR" - -cd $DESTDIR - -if test "z$OOO_VENDOR" != "zDebian" ; then - - echo "Generating package file lists for $OOO_VENDOR..." - - rm -f common_list.txt - for module in gid_Module_Root gid_Module_Root_Brand \ - gid_Module_Root_Files_Images \ - gid_Module_Root_Files_[0-9] \ - gid_Module_Root_Hack \ - gid_Module_Oo_Linguistic \ - gid_Module_Root_Ure_Hidden ; do - merge_flists $module $FILELISTSDIR/common_list.txt - done - - if test "$SPLIT_APP_MODULES" = "YES" ; then - merge_flists gid_Module_Prg_Base_Bin $FILELISTSDIR/base_list.txt - merge_flists gid_Module_Prg_Calc_Bin $FILELISTSDIR/calc_list.txt - merge_flists gid_Module_Prg_Draw_Bin $FILELISTSDIR/draw_list.txt - merge_flists gid_Module_Prg_Math_Bin $FILELISTSDIR/math_list.txt - merge_flists gid_Module_Prg_Impress_Bin $FILELISTSDIR/impress_list.txt - merge_flists gid_Module_Prg_Wrt_Bin $FILELISTSDIR/writer_list.txt - merge_flists gid_Module_Brand_Prg_Base $FILELISTSDIR/base_list.txt - merge_flists gid_Module_Brand_Prg_Calc $FILELISTSDIR/calc_list.txt - merge_flists gid_Module_Brand_Prg_Draw $FILELISTSDIR/draw_list.txt - merge_flists gid_Module_Brand_Prg_Math $FILELISTSDIR/math_list.txt - merge_flists gid_Module_Brand_Prg_Impress $FILELISTSDIR/impress_list.txt - merge_flists gid_Module_Brand_Prg_Wrt $FILELISTSDIR/writer_list.txt - # FIXME: small; low dependencies; why optional module? - merge_flists gid_Module_Optional_OGLTrans $FILELISTSDIR/impress_list.txt - else - merge_flists gid_Module_Prg_Base_Bin $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Prg_Calc_Bin $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Prg_Draw_Bin $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Prg_Math_Bin $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Prg_Impress_Bin $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Prg_Wrt_Bin $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Brand_Prg_Base $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Brand_Prg_Calc $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Brand_Prg_Draw $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Brand_Prg_Math $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Brand_Prg_Impress $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Brand_Prg_Wrt $FILELISTSDIR/common_list.txt - # FIXME: small; low dependencies; why optional module? - merge_flists gid_Module_Optional_OGLTrans $FILELISTSDIR/common_list.txt - fi - - if test "$SPLIT_OPT_FEATURES" = "YES" ; then - if test "z$OOO_VENDOR" = "zMandriva" ; then - merge_flists gid_Module_Optional_Binfilter $FILELISTSDIR/filter-binfilter_list.txt - merge_flists gid_Module_Langpack_Binfilter_en_US $FILELISTSDIR/filter-binfilter_list.txt - merge_flists gid_Module_Optional_Grfflt $FILELISTSDIR/draw_list.txt - merge_flists gid_Module_Optional_Headless $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Javafilter $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Pymailmerge $FILELISTSDIR/pyuno_list.txt - merge_flists gid_Module_Optional_Pyuno $FILELISTSDIR/pyuno_list.txt - merge_flists gid_Module_Optional_Testtool $FILELISTSDIR/testtool_list.txt - merge_flists gid_Module_Optional_Xsltfiltersamples $FILELISTSDIR/common_list.txt - else - merge_flists gid_Module_Optional_Binfilter $FILELISTSDIR/filters_list.txt - merge_flists gid_Module_Optional_Grfflt $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Headless $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Javafilter $FILELISTSDIR/filters_list.txt - merge_flists gid_Module_Optional_Pymailmerge $FILELISTSDIR/mailmerge_list.txt - merge_flists gid_Module_Optional_Pyuno $FILELISTSDIR/pyuno_list.txt - merge_flists gid_Module_Optional_Testtool $FILELISTSDIR/testtool_list.txt - merge_flists gid_Module_Optional_Xsltfiltersamples $FILELISTSDIR/filters_list.txt - fi - else - merge_flists gid_Module_Optional_Binfilter $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Langpack_Binfilter $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Grfflt $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Headless $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Javafilter $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Pymailmerge $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Pyuno $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Testtool $FILELISTSDIR/common_list.txt - merge_flists gid_Module_Optional_Xsltfiltersamples $FILELISTSDIR/common_list.txt - fi - - # lang packs - for lang in `echo $WITH_LANG_LIST | sed -e s/-/_/g`; do - lang_lists= - if test "$OOO_VENDOR" = "Mandriva" -o \( "$OOO_VENDOR" = "Novell, Inc." -a "$SPLIT_APP_MODULES" = "YES" \) ; then - test -f gid_Module_Langpack_Basis_$lang && lang_lists="$lang_lists gid_Module_Langpack_Basis_$lang" || : - test -f gid_Module_Langpack_Brand_$lang && lang_lists="$lang_lists gid_Module_Langpack_Brand_$lang" || : - test -f gid_Module_Langpack_Resource_$lang && lang_lists="$lang_lists gid_Module_Langpack_Resource_$lang" || : - test -f gid_Module_Langpack_Impress_$lang && lang_lists="$lang_lists gid_Module_Langpack_Impress_$lang" || : - test -f gid_Module_Langpack_Draw_$lang && lang_lists="$lang_lists gid_Module_Langpack_Draw_$lang" || : - test -f gid_Module_Langpack_Math_$lang && lang_lists="$lang_lists gid_Module_Langpack_Math_$lang" || : - test -f gid_Module_Langpack_Calc_$lang && lang_lists="$lang_lists gid_Module_Langpack_Calc_$lang" || : - test -f gid_Module_Langpack_Base_$lang && lang_lists="$lang_lists gid_Module_Langpack_Base_$lang" || : - test -f gid_Module_Langpack_Writer_$lang && lang_lists="$lang_lists gid_Module_Langpack_Writer_$lang" || : - test -f gid_Module_Langpack_Binfilter_$lang && lang_lists="$lang_lists gid_Module_Langpack_Binfilter_$lang" || : - # Place helps on dedicated packages. - test -f gid_Module_Helppack_Help_$lang && sort -u gid_Module_Helppack_Help_$lang > $FILELISTSDIR/help_${lang}_list.txt || : - else - test -f gid_Module_Langpack_Basis_$lang && lang_lists="$lang_lists gid_Module_Langpack_Basis_$lang" || : - test -f gid_Module_Langpack_Brand_$lang && lang_lists="$lang_lists gid_Module_Langpack_Brand_$lang" || : - test -f gid_Module_Langpack_Resource_$lang && lang_lists="$lang_lists gid_Module_Langpack_Resource_$lang" || : - test -f gid_Module_Langpack_Impress_$lang && lang_lists="$lang_lists gid_Module_Langpack_Impress_$lang" || : - test -f gid_Module_Langpack_Draw_$lang && lang_lists="$lang_lists gid_Module_Langpack_Draw_$lang" || : - test -f gid_Module_Langpack_Math_$lang && lang_lists="$lang_lists gid_Module_Langpack_Math_$lang" || : - test -f gid_Module_Langpack_Calc_$lang && lang_lists="$lang_lists gid_Module_Langpack_Calc_$lang" || : - test -f gid_Module_Langpack_Base_$lang && lang_lists="$lang_lists gid_Module_Langpack_Base_$lang" || : - test -f gid_Module_Langpack_Writer_$lang && lang_lists="$lang_lists gid_Module_Langpack_Writer_$lang" || : - test -f gid_Module_Langpack_Binfilter_$lang && lang_lists="$lang_lists gid_Module_Langpack_Binfilter_$lang" || : - test -f gid_Module_Helppack_Help_$lang && lang_lists="$lang_lists gid_Module_Helppack_Help_$lang" || : - fi - if test -n "$lang_lists" ; then - # all files are installed below $INSTALLDIR/basis; we want to own also $INSTALLDIR - echo "%dir $INSTALLDIR" >$FILELISTSDIR/lang_${lang}_list.txt - cat $lang_lists | sort -u >>$FILELISTSDIR/lang_${lang}_list.txt - fi - # some help files are in _Langpack_{Writer,Impress,...}_<lang> - # move them from -l10n to -help - if test "$OOO_VENDOR" = "Mandriva" -o \( "$OOO_VENDOR" = "Novell, Inc." -a "$SPLIT_APP_MODULES" = "YES" \) ; then - for lang in `echo $WITH_LANG_LIST | sed -e s/-/_/g`; do - test -f $FILELISTSDIR/help_${lang}_list.txt || continue; - mv_file_between_flists $FILELISTSDIR/help_${lang}_list.txt $FILELISTSDIR/lang_${lang}_list.txt $INSTALLDIR/basis$PRODUCTVERSION/help/.* - add_used_directories $FILELISTSDIR/help_${lang}_list.txt $FILELISTSDIR/lang_${lang}_list.txt - done - fi - done - - if test -f $FILELISTSDIR/lang_en_US_list.txt -a "$OOO_VENDOR" = "Novell, Inc." -a "$SPLIT_APP_MODULES" != "YES" ; then - cat $FILELISTSDIR/lang_en_US_list.txt >>$FILELISTSDIR/common_list.txt - rm $FILELISTSDIR/lang_en_US_list.txt - fi - - if test -f gid_Module_Root_SDK ; then - cp gid_Module_Root_SDK $FILELISTSDIR/sdk_list.txt - fi - - cd $FILELISTSDIR - - # kde subpackage - test -f $DESTDIR/gid_Module_Optional_Kde && cp $DESTDIR/gid_Module_Optional_Kde kde_list.txt || : - mv_file_between_flists kde_list.txt common_list.txt $INSTALLDIR/program/kdefilepicker - mv_file_between_flists kde_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/fps_kde.uno.so - mv_file_between_flists kde_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/libvclplug_kdel..so - mv_file_between_flists kde_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/libkabdrv1.so - add_used_directories kde_list.txt common_list.txt - - # create kde4 subpackage - mv_file_between_flists kde4_list.txt kde_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/kde4be1.uno.so - mv_file_between_flists kde4_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/libvclplug_kde4l..so - mv_file_between_flists kde4_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/fps_kde4.uno.so - add_used_directories kde4_list.txt common_list.txt - - # gnome subpackage - test -f $DESTDIR/gid_Module_Optional_Gnome && cp $DESTDIR/gid_Module_Optional_Gnome gnome_list.txt || : - mv_file_between_flists gnome_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/libevoab2.so - mv_file_between_flists gnome_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/fps_gnome.uno.so - mv_file_between_flists gnome_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/libvclplug_gtk[0-9]*l..so - mv_file_between_flists common_list.txt gnome_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/ucpgvfs1.uno.so - add_used_directories gnome_list.txt common_list.txt - - # mono subpackage - mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/cli_.*.dll - mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/cli_.*.dll.config - mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/policy.*.cli_.*.dll - mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/ure/lib/cli_.*.dll - mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/ure/lib/cli_.*.dll.config - mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/ure/lib/policy.*.cli_.*.dll - mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/ure/lib/libcli_.*.so - add_used_directories mono_list.txt common_list.txt - # add the files from GAC if it was installed - test -f mono_gac && cat mono_gac >>mono_list.txt - - # mailmerge - if test "$SPLIT_OPT_FEATURES" = "YES" ; then - if test "z$OOO_VENDOR" = "zMandriva" ; then - flist=pyuno_list.txt - else - flist=mailmerge_list.txt - fi - mv_file_between_flists $flist common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/mailmerge.py - add_used_directories $flist common_list.txt - fi - - if test "z$OOO_VENDOR" = "zNovell" ; then - # officebean subpackage - mv_file_between_flists officebean_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/classes/officebean.jar - mv_file_between_flists officebean_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/libofficebean.so - add_used_directories officebean_list.txt common_list.txt - fi - - if test -f sdk_list.txt ; then - # in this case we move all entries including directories - mv_file_between_flists sdk_doc_list.txt sdk_list.txt "%dir $DOCDIRBASE/sdk/docs.*" - mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$DOCDIRBASE/sdk/docs.*" - mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$DOCDIRBASE/sdk/examples" - mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$DOCDIRBASE/sdk/index.html" - mv_file_between_flists sdk_doc_list.txt sdk_list.txt "%dir $INSTALLDIR/basis$PRODUCTVERSION/sdk/examples.*" - mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$INSTALLDIR/basis$PRODUCTVERSION/sdk/docs" - mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$INSTALLDIR/basis$PRODUCTVERSION/sdk/examples.*" - mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$INSTALLDIR/basis$PRODUCTVERSION/sdk/index.html" - add_used_directories sdk_doc_list.txt sdk_list.txt - fi - - if test "$OOO_VENDOR" = "Novell, Inc." -a "$SPLIT_APP_MODULES" = "YES" ; then - # move the prebuilt icons into a hacky temporary package - # we want to repack them into a noarch package as soon as possible - # without the build dependency on the huge devel package - mv_file_between_flists icon_themes_prebuilt.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images_classic8.zip - mv_file_between_flists icon_themes_prebuilt.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images_crystal.zip - mv_file_between_flists icon_themes_prebuilt.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images_hicontrast.zip - mv_file_between_flists icon_themes_prebuilt.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images_industrial.zip - mv_file_between_flists icon_themes_prebuilt.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images_tango.zip - mv_file_between_flists icon_themes_prebuilt.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images.zip - fi - - # Mandriva packaging - if test "$OOO_VENDOR" = "Mandriva"; then - # Not used - remove_file common_list.txt $INSTALLDIR/share/gallery/htmltheme.orig - remove_file common_list.txt $INSTALLDIR/share/dict/ooo/dictionary.lst - - # And these are in -draw package - mv_file_between_flists draw_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/registry/modules/org/openoffice/TypeDetection/Filter/fcfg_drawgraphics_filters.xcu - mv_file_between_flists draw_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/registry/modules/org/openoffice/TypeDetection/Filter/fcfg_drawgraphics_types.xcu - - # And these are in -impress package - mv_file_between_flists impress_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/registry/modules/org/openoffice/TypeDetection/Filter/fcfg_impressgraphics_filters.xcu - mv_file_between_flists impress_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/registry/modules/org/openoffice/TypeDetection/Types/fcfg_impressgraphics_types.xcu - - # Split out the gallery - mv_file_between_flists gallery_list.txt common_list.txt "$INSTALLDIR/basis$PRODUCTVERSION/share/gallery.*" - test -r galleries.txt && cat galleries.txt >> gallery_list.txt - - # Split out dtd-officedocument1.0 - mv_file_between_flists dtd_list.txt common_list.txt "$INSTALLDIR/share/dtd/officedocument.*" - - # Split out java stuff - mv_file_between_flists java_common_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/JREProperties.class - mv_file_between_flists java_common_list.txt common_list.txt "$INSTALLDIR/basis$PRODUCTVERSION/program/classes.*" - mv_file_between_flists java_common_list.txt common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/libofficebean.so - mv_file_between_flists java_common_list.txt common_list.txt "$INSTALLDIR/basis$PRODUCTVERSION/share/Scripts/java.*" - mv_file_between_flists java_common_list.txt filter-binfilter_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/classes/aportisdoc.jar - mv_file_between_flists java_common_list.txt filter-binfilter_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/classes/pocketword.jar - mv_file_between_flists java_common_list.txt filter-binfilter_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/classes/pexcel.jar - mv_file_between_flists java_common_list.txt writer_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/classes/writer2latex.jar - - # Move arch-dependent/dup files from common to core - for f in \ - ".*\.so" \ - ".*\.so\..*" \ - "program/.*\.rdb" \ - program/configimport.bin \ - program/javaldx \ - program/msfontextract \ - program/nsplugin \ - program/oosplash.bin \ - program/pagein \ - program/pagein-calc \ - program/pagein-common \ - program/pagein-draw \ - program/pagein-impress \ - program/pagein-writer \ - program/pkgchk.bin \ - program/pluginapp.bin \ - program/setofficelang.bin \ - program/soffice.bin \ - program/spadmin.bin \ - program/uno.bin \ - program/unopkg.bin \ - program/uri-encode - do - mv_file_between_flists core_list.txt common_list.txt "$INSTALLDIR/basis$PRODUCTVERSION/$f" - done - - # Put gtk/gnome stuff into gnome package - mv_file_between_flists gnome_list.txt core_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/gnome-open-url.bin - mv_file_between_flists gnome_list.txt core_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/fps_gnome.uno.so - mv_file_between_flists gnome_list.txt core_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/ucpgvfs1.uno.so - mv_file_between_flists gnome_list.txt core_list.txt $INSTALLDIR/basis$PRODUCTVERSION/program/libeggtray680li.so - - # Ship ooqstart for gnome in gnome package - mv_file_between_flists gnome_list.txt core_list.txt "$INSTALLDIR/program/libqstart_gtk680.*" - - # themes are included in other packages - # don't use remove_file as we don't want them removed from the buildroot. - mv_file_between_flists /dev/null common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images_crystal.zip - mv_file_between_flists /dev/null common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images_hicontrast.zip - mv_file_between_flists /dev/null common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images_industrial.zip - mv_file_between_flists /dev/null common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images_tango.zip - mv_file_between_flists /dev/null common_list.txt $INSTALLDIR/basis$PRODUCTVERSION/share/config/images.zip - fi - - # remove known duplicities to do not have files packaged in two packages - # the Bulgarian fixes can be removed after the issue #54110 is fixed - remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/basis$PRODUCTVERSION/presets/config/arrowhd.soe - remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/basis$PRODUCTVERSION/presets/config/classic.sog - remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/basis$PRODUCTVERSION/presets/config/hatching.soh - remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/basis$PRODUCTVERSION/presets/config/modern.sog - remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/basis$PRODUCTVERSION/presets/config/palette.soc - remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/basis$PRODUCTVERSION/presets/config/styles.sod - # the British fixes can be removed after the issue #54113 is fixed - remove_duplicity_from_flists common_list.txt lang_en-GB_list.txt $INSTALLDIR/basis$PRODUCTVERSION/presets/config/standard.sog - -else - - echo "Creating package directories..." - - test -d pkg && rm -r pkg || : - - # Create package tree (needed by Debian's dpkg) - # create_package_directory <list_file> <directory_name> - create_package_directory() - { - listfile=$1 - directory="$2" - perl -nl \ - -e " if(/^%dir (.*)/) - {system('mkdir', '-p', '-m', '755', \"$directory\".\$1);} - else - {rename('./'.\$_, \"$directory\".\$_);} - " \ - $listfile - } - - create_package_directory gid_Module_Root_Ure_Hidden pkg/ure - - create_package_directory gid_Module_Root pkg/libreoffice-common - create_package_directory gid_Module_Root_Brand pkg/libreoffice-common - create_package_directory gid_Module_Root_Files_Images pkg/libreoffice-common - create_package_directory gid_Module_Oo_Linguistic pkg/libreoffice-common - create_package_directory gid_Module_Optional_Xsltfiltersamples pkg/libreoffice-common - create_package_directory gid_Module_Optional_Javafilter pkg/libreoffice-common - if [ -f gid_Module_Optional_Binfilter ]; then - create_package_directory gid_Module_Optional_Binfilter pkg/libreoffice-filter-binfilter - fi - create_package_directory gid_Module_Optional_Grfflt pkg/libreoffice-draw - create_package_directory gid_Module_Prg_Calc_Bin pkg/libreoffice-calc - create_package_directory gid_Module_Prg_Math_Bin pkg/libreoffice-math - create_package_directory gid_Module_Prg_Draw_Bin pkg/libreoffice-draw - create_package_directory gid_Module_Prg_Wrt_Bin pkg/libreoffice-writer - create_package_directory gid_Module_Prg_Impress_Bin pkg/libreoffice-impress - create_package_directory gid_Module_Prg_Base_Bin pkg/libreoffice-base - create_package_directory gid_Module_Brand_Prg_Calc pkg/libreoffice-calc - create_package_directory gid_Module_Brand_Prg_Math pkg/libreoffice-math - create_package_directory gid_Module_Brand_Prg_Draw pkg/libreoffice-draw - create_package_directory gid_Module_Brand_Prg_Wrt pkg/libreoffice-writer - create_package_directory gid_Module_Brand_Prg_Impress pkg/libreoffice-impress - create_package_directory gid_Module_Brand_Prg_Base pkg/libreoffice-base - create_package_directory gid_Module_Optional_Pyuno pkg/python-uno - create_package_directory gid_Module_Optional_Gnome pkg/libreoffice-gnome - create_package_directory gid_Module_Optional_Kde pkg/libreoffice-kde - - create_package_directory gid_Module_Root_Files_2 pkg/libreoffice-common - create_package_directory gid_Module_Root_Files_3 pkg/libreoffice-common - create_package_directory gid_Module_Root_Files_4 pkg/libreoffice-common - create_package_directory gid_Module_Root_Files_5 pkg/libreoffice-common - create_package_directory gid_Module_Root_Files_6 pkg/libreoffice-common - create_package_directory gid_Module_Root_Files_7 pkg/libreoffice-common - create_package_directory gid_Module_Optional_Testtool pkg/libreoffice-qa-tools - if [ -e gid_Module_Optional_Pymailmerge ]; then - create_package_directory gid_Module_Optional_Pymailmerge pkg/libreoffice-emailmerge - else # post m26 - mkdir -p pkg/libreoffice-emailmerge/$INSTALLDIR/basis$PRODUCTVERSION/program - mv pkg/libreoffice-common/$INSTALLDIR/basis$PRODUCTVERSION/program/mailmerge.py \ - pkg/libreoffice-emailmerge/$INSTALLDIR/basis$PRODUCTVERSION/program/mailmerge.py - fi - create_package_directory gid_Module_Optional_OGLTrans pkg/libreoffice-ogltrans - - create_package_directory gid_Module_Root_SDK pkg/libreoffice-dev - - for l in `echo $WITH_LANG_LIST`; do - for p in Impress Draw Math Calc Base Writer; do - create_package_directory gid_Module_Langpack_${p}_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l - done - create_package_directory gid_Module_Langpack_Basis_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l - create_package_directory gid_Module_Langpack_Brand_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l - create_package_directory gid_Module_Langpack_Resource_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l - create_package_directory gid_Module_Helppack_Help_`echo $l | sed -e s/-/_/g` pkg/libreoffice-help-$l - if [ -f gid_Module_Optional_Binfilter ]; then - if [ "$l" = "en-US" ]; then - create_package_directory gid_Module_Langpack_Binfilter_en_US pkg/libreoffice-filter-binfilter - else - create_package_directory gid_Module_Langpack_Binfilter_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l - fi - fi - # some help files are in _Langpack_{Writer,Impress,...}_<lang> - # move them from -l10n to -help - if [ "$l" = "en-US" ]; then d=en; else d=$l; fi - mv pkg/libreoffice-l10n-$l/$INSTALLDIR/basis$PRODUCTVERSION/help/$d/* \ - pkg/libreoffice-help-$l/$INSTALLDIR/basis$PRODUCTVERSION/help/$d && \ - rmdir pkg/libreoffice-l10n-$l/$INSTALLDIR/basis$PRODUCTVERSION/help/$d - done - - # move_wrappers <directory_name> <name> [...] - move_wrappers() - { - directory=$1 - shift - mkdir -m755 -p "$directory"/usr/bin - while test -n "$1"; do - mv usr/*bin/"$1$BINSUFFIX" "$directory"/usr/bin - shift - done - } - move_wrappers pkg/libreoffice-common soffice unopkg - if test "$COMPAT_OOWRAPPERS" = "YES" ; then - move_wrappers pkg/libreoffice-common ooffice oofromtemplate - move_wrappers pkg/libreoffice-base oobase - move_wrappers pkg/libreoffice-writer oowriter ooweb - move_wrappers pkg/libreoffice-calc oocalc - move_wrappers pkg/libreoffice-impress ooimpress - move_wrappers pkg/libreoffice-math oomath - move_wrappers pkg/libreoffice-draw oodraw - fi - move_wrappers pkg/libreoffice-common libreoffice lofromtemplate - move_wrappers pkg/libreoffice-base lobase - move_wrappers pkg/libreoffice-writer lowriter loweb - move_wrappers pkg/libreoffice-calc localc - move_wrappers pkg/libreoffice-impress loimpress - move_wrappers pkg/libreoffice-math lomath - move_wrappers pkg/libreoffice-draw lodraw - - # Move all libraries, binaries, *.rdb from -common to -core - for d in $INSTALLDIR/basis$PRODUCTVERSION/program $INSTALLDIR/program; do \ - if [ ! -d $DESTDIR/pkg/libreoffice-core/$d ]; then \ - mkdir -p $DESTDIR/pkg/libreoffice-core/$d; \ - fi && - ( cd pkg/libreoffice-common/$d - find -maxdepth 1 \ - -regex '\./\(.*\.so.*\|.*\.bin\|pagein\|nsplugin\|kdefilepicker\|msfontextract\|.*\.rdb\|javaldx\|uri-encode\)' \ - -exec mv {} $DESTDIR/pkg/libreoffice-core/$d \; - ); \ - done - - # install additional ooo-build scripts & misc stuff - mkdir -p pkg/libreoffice-common/usr/share/man/man1 - if test "$COMPAT_OOWRAPPERS" = "YES" ; then - mv usr/share/man/man1/openoffice$BINSUFFIX.1 \ - pkg/libreoffice-common/usr/share/man/man1 - fi - mv usr/share/man/man1/libreoffice$BINSUFFIX.1 \ - pkg/libreoffice-common/usr/share/man/man1 - mkdir -p pkg/libreoffice-common/etc/bash_completion.d - if test "$COMPAT_OOWRAPPERS" = "YES" ; then - mv etc/bash_completion.d/ooffice$BINSUFFIX.sh \ - pkg/libreoffice-common/etc/bash_completion.d - fi - mv etc/bash_completion.d/libreoffice$BINSUFFIX.sh \ - pkg/libreoffice-common/etc/bash_completion.d - mv .$INSTALLDIR/basis$PRODUCTVERSION/program/java-set-classpath \ - pkg/libreoffice-common/$INSTALLDIR/program - if echo $WITH_LANG_LIST | grep -q en-US; then - for i in forms/resume.ott officorr/project-proposal.ott; do \ - mkdir -p pkg/libreoffice-common/$INSTALLDIR/basis$PRODUCTVERSION/share/template/en-US/`dirname $i`; \ - mv .$INSTALLDIR/basis$PRODUCTVERSION/share/template/en-US/$i \ - pkg/libreoffice-common/$INSTALLDIR/basis$PRODUCTVERSION/share/template/en-US/$i; \ - done; \ - fi - # Warn for any remaining files - find . -path './pkg' -prune -o -not -name 'gid_Module_*' -not -type d -exec echo "File not packaged: {}" \; -fi - -# mark the config files -RPM_CONFIG_FILE_TAGS= -if test "$OOO_VENDOR" = "Novell, Inc." -o "$OOO_VENDOR" = "RedHat"; then - RPM_CONFIG_FILE_TAGS="%config" -elif test "$OOO_VENDOR" = "PLD" ; then - RPM_CONFIG_FILE_TAGS="%config(noreplace) %verify(not md5 size mtime)" -fi - -if test "z$RPM_CONFIG_FILE_TAGS" != "z" ; then - cd $FILELISTSDIR - perl -pi -e "s|^($INSTALLDIR/help/.*\.xsl)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/help/.*\.css)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/program/[a-zA-Z0-9_\.]*rc)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/program/.*\.xsl)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/share/config/[a-zA-Z0-9]*rc)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/share/dict/ooo/.*\.lst)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/share/psprint/.*\.conf)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/share/registry/.*\.xcu)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/share/registry/.*\.properties)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/share/registry/.*\.xcs)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - -e "s|^($INSTALLDIR/user/config/.*\.so.)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \ - *_list.txt -fi - -mkdir -p $FILELISTSDIR/orig -mv -f $DESTDIR/gid_Module_* $FILELISTSDIR/orig diff --git a/bin/distro-install-sdk b/bin/distro-install-sdk deleted file mode 100755 index 3dca2affe..000000000 --- a/bin/distro-install-sdk +++ /dev/null @@ -1,86 +0,0 @@ -#!/bin/sh - -. ./*[Ee]nv.[Ss]et.sh - -if test -d $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk ; then - - echo "SDK installation clean up" - - # bin potential .orig files - find $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk -name "*.orig" -exec rm -f {} \; - - # move some SDK directories to the right place according to FHS - # note that examples must stay in $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk because there are used - # relative paths to $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/setting and it does not work via - # a symlink - mkdir -p $DESTDIR$PREFIXDIR/include - mkdir -p $DESTDIR$DATADIR/idl - mkdir -p $DESTDIR$DATADIR/$INSTALLDIRNAME/sdk - mkdir -p $DESTDIR$DOCDIR/sdk - mv $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/include $DESTDIR$PREFIXDIR/include/$INSTALLDIRNAME - if [ -d $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/classes ]; then - mv $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/classes $DESTDIR$DATADIR/$INSTALLDIRNAME/sdk/classes - fi - mv $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/idl $DESTDIR$DATADIR/idl/$INSTALLDIRNAME - mv $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/docs $DESTDIR$DOCDIR/sdk - mv $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/share/readme $DESTDIR$DOCDIR/sdk/readme - mv $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/index.html $DESTDIR$DOCDIR/sdk - - # compat symlinks - ln -sf $PREFIXDIR/include/$INSTALLDIRNAME $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/include - ln -sf $DATADIR/$INSTALLDIRNAME/sdk/classes $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/classes - ln -sf $DATADIR/idl/$INSTALLDIRNAME $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/idl - ln -sf $DOCDIR/sdk/docs $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/ - ln -sf $DOCDIR/sdk/index.html $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/index.html - ln -sf $INSTALLDIR/basis$PRODUCTVERSION/sdk/examples $DESTDIR$DOCDIR/sdk/examples - - # fix file list - sed -e "s|^\(%dir \)\?$INSTALLDIR/basis$PRODUCTVERSION/sdk/include|\1$PREFIXDIR/include/$INSTALLDIRNAME|" \ - -e "s|^\(%dir \)\?$INSTALLDIR/basis$PRODUCTVERSION/sdk/classes|\1$DATADIR/$INSTALLDIRNAME/sdk/classes|" \ - -e "s|^\(%dir \)\?$INSTALLDIR/basis$PRODUCTVERSION/sdk/idl|\1$DATADIR/idl/$INSTALLDIRNAME|" \ - -e "s|^\(%dir \)\?$INSTALLDIR/basis$PRODUCTVERSION/sdk/docs|\1$DOCDIR/sdk/docs|" \ - -e "s|^\(%dir \)\?$INSTALLDIR/basis$PRODUCTVERSION/sdk/share/readme|\1$DOCDIR/sdk/readme|" \ - -e "s|^$INSTALLDIR/basis$PRODUCTVERSION/sdk/index.html$|$DOCDIR/sdk/index.html|" \ - -e "s|^\(%dir \)\?$INSTALLDIR/basis$PRODUCTVERSION/sdk/share.*$||" \ - -e "/\.orig$/D" \ - -e "/^$/D" \ - $DESTDIR/gid_Module_Root_SDK | sort -u \ - >$DESTDIR/gid_Module_Root_SDK.new - mv $DESTDIR/gid_Module_Root_SDK.new $DESTDIR/gid_Module_Root_SDK - # - echo "%dir $DATADIR/$INSTALLDIRNAME/sdk" >>$DESTDIR/gid_Module_Root_SDK - echo "%dir $DATADIR/$INSTALLDIRNAME" >>$DESTDIR/gid_Module_Root_SDK - echo "%dir $DATADIR/idl" >>$DESTDIR/gid_Module_Root_SDK - echo "%dir $DOCDIR/sdk/docs" >>$DESTDIR/gid_Module_Root_SDK - echo "%dir $DOCDIR/sdk" >>$DESTDIR/gid_Module_Root_SDK - echo "%dir $DOCDIR" >>$DESTDIR/gid_Module_Root_SDK - echo "$INSTALLDIR/basis$PRODUCTVERSION/sdk/include" >>$DESTDIR/gid_Module_Root_SDK - echo "$INSTALLDIR/basis$PRODUCTVERSION/sdk/classes" >>$DESTDIR/gid_Module_Root_SDK - echo "$INSTALLDIR/basis$PRODUCTVERSION/sdk/idl" >>$DESTDIR/gid_Module_Root_SDK - echo "$INSTALLDIR/basis$PRODUCTVERSION/sdk/docs" >>$DESTDIR/gid_Module_Root_SDK - echo "$INSTALLDIR/basis$PRODUCTVERSION/sdk/index.html" >>$DESTDIR/gid_Module_Root_SDK - echo "$DOCDIR/sdk/examples" >>$DESTDIR/gid_Module_Root_SDK - - # generate default profiles - for file in setsdkenv_unix.csh setsdkenv_unix.sh ; do - sed -e "s,@OO_SDK_NAME@,openoffice.org${PRODUCTVERSION}_sdk," \ - -e "s,@OO_SDK_HOME@,$INSTALLDIR/basis$PRODUCTVERSION/sdk," \ - -e "s,@OFFICE_HOME@,$INSTALLDIR," \ - -e "s,@OFFICE_BASE_HOME@,$INSTALLDIR/basis$PRODUCTVERSION," \ - -e "s,@OO_SDK_URE_HOME@,$INSTALLDIR/basis$PRODUCTVERSION/ure-link," \ - -e "s,@OO_SDK_MAKE_HOME@,/usr/bin," \ - -e "s,@OO_SDK_ZIP_HOME@,/usr/bin," \ - -e "s,@OO_SDK_CPP_HOME@,/usr/bin," \ - -e "s,@OO_SDK_CC_55_OR_HIGHER@,," \ - -e "s,@OO_SDK_JAVA_HOME@,$JAVA_HOME," \ - -e "s,@OO_SDK_OUTPUT_DIR@,\$HOME," \ - -e "s,@SDK_AUTO_DEPLOYMENT@,NO," \ - $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/$file.in \ - > $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/$file - chmod 755 $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/$file - echo $INSTALLDIR/basis$PRODUCTVERSION/sdk/$file >>$DESTDIR/gid_Module_Root_SDK - done - - # FIXME: I rather set this file to be non-world-writttable for now, i#64812 - chmod go-w $DESTDIR$INSTALLDIR/basis$PRODUCTVERSION/sdk/settings/component.uno.map -fi diff --git a/bin/doubleNewlines.pl b/bin/doubleNewlines.pl deleted file mode 100755 index c1f66e57e..000000000 --- a/bin/doubleNewlines.pl +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/perl -################################################################################ -# Version: MPL 1.1 / GPLv3+ / LGPLv3+ -# -# The contents of this file are subject to the Mozilla Public License Version -# 1.1 (the "License"); you may not use this file except in compliance with -# the License or as specified alternatively below. You may obtain a copy of -# the License at http://www.mozilla.org/MPL/ -# -# 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 Initial Developer of the Original Code is -# Michael Koch <miko@gmx.ch> -# -# Major Contributor(s): -# <name> -# -# For minor contributions see the git repository. -# -# Alternatively, the contents of this file may be used under the terms of -# either the GNU General Public License Version 3 or later (the "GPLv3+"), or -# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), -# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable -# instead of those above. -################################################################################ -# Usage: "Usage: doubleNewlines.pl <directory>" -# It is possible to enter more than one directory separated by spaces. -# Instead of a directory you can also use one or more files as arguments. -################################################################################ - -use strict; -use warnings; - -use File::Find; -use Cwd 'abs_path'; - -my $total = 0; - -die "Usage: doubleNewlines.pl <directory>\n" unless (@ARGV); - -# if path is relative, make it absolute -foreach (@ARGV){ - $_ = abs_path($_); -} - -print "Following code files (.hxx and .cxx) are suspicious:\n"; -find(\&processFile, @ARGV); # processes all files in dir and subdirs -print "Found $total suspicious files.\n"; - -sub processFile { - my $file = $File::Find::name; - return unless $file =~ /(.cxx$)|(.hxx$)/; - open FILE, $file or die "Can't open '$file': $!"; - my $lines = join '', <FILE>; - if ($lines =~ /(\n{2,}.+){10}/) { # ten consecutive occurrences of [empty line(s) - code line)] - my $relPath = substr($file, index($file, "clone")+6); # relative path beginning with repo name - print "$relPath\n"; - $total++; - } -} diff --git a/bin/find-german-comments b/bin/find-german-comments deleted file mode 100755 index 1538c6d57..000000000 --- a/bin/find-german-comments +++ /dev/null @@ -1,162 +0,0 @@ -#!/usr/bin/env python -######################################################################## -# -# Copyright (c) 2010 Jonas Jensen, Miklos Vajna -# -# Permission is hereby granted, free of charge, to any person -# obtaining a copy of this software and associated documentation -# files (the "Software"), to deal in the Software without -# restriction, including without limitation the rights to use, -# copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following -# conditions: -# -# The above copyright notice and this permission notice shall be -# included in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -######################################################################## - - -import sys, re, subprocess, os, optparse, string - -class Parser: - """ - This parser extracts comments from source files, tries to guess - their language and then prints out the german ones. - """ - def __init__(self): - self.strip = string.punctuation + " \n" - op = optparse.OptionParser() - op.set_usage("%prog [options] <rootdir>\n\n" + - "Searches for german comments in cxx/hxx source files inside a given root\n" + - "directory recursively.") - op.add_option("-v", "--verbose", action="store_true", dest="verbose", default=False, - help="Turn on verbose mode (print progress to stderr)") - self.options, args = op.parse_args() - try: - dir = args[0] - except IndexError: - dir = "." - self.check_source_files(dir) - - def get_comments(self, filename): - """ - Extracts the source code comments. - """ - linenum = 0 - if self.options.verbose: - sys.stderr.write("processing file '%s'...\n" % filename) - sock = open(filename) - # add an empty line to trigger the output of collected oneliner - # comment group - lines = sock.readlines() + ["\n"] - sock.close() - - in_comment = False - buf = [] - count = 1 - for i in lines: - if "//" in i and not in_comment: - # if we find a new //-style comment, then we - # just append it to a previous one if: there is - # only whitespace before the // mark that is - # necessary to make comments longer, giving - # more reliable output - if not len(re.sub("(.*)//.*", r"\1", i).strip(self.strip)): - s = re.sub(".*// ?", "", i).strip(self.strip) - if len(s): - buf.append(s) - else: - # otherwise it's an independent //-style comment in the next line - yield (count, "\n ".join(buf)) - buf = [re.sub(".*// ?", "", i.strip(self.strip))] - elif "//" not in i and not in_comment and len(buf) > 0: - # first normal line after a // block - yield (count, "\n ".join(buf)) - buf = [] - elif "/*" in i and "*/" not in i and not in_comment: - # start of a real multiline comment - in_comment = True - linenum = count - s = re.sub(".*/\*+", "", i.strip(self.strip)) - if len(s): - buf.append(s.strip(self.strip)) - elif in_comment and not "*/" in i: - # in multiline comment - s = re.sub("^( |\|)*\*?", "", i) - if len(s.strip(self.strip)): - buf.append(s.strip(self.strip)) - elif "*/" in i and in_comment: - # end of multiline comment - in_comment = False - s = re.sub(r"\*+/.*", "", i.strip(self.strip)) - if len(s): - buf.append(s) - yield (count, "\n ".join(buf)) - buf = [] - elif "/*" in i and "*/" in i: - # c-style oneliner comment - yield (count, re.sub(".*/\*(.*)\*/.*", r"\1", i).strip(self.strip)) - count += 1 - - def get_lang(self, s): - """ the output is 'german' or 'english' or 'german or english'. when - unsure, just don't warn, there are strings where you just can't - teremine the results reliably, like '#110680#' """ - cwd = os.getcwd() - # change to our directory - os.chdir(os.path.split(os.path.abspath(sys.argv[0]))[0]) - sock = subprocess.Popen(["text_cat/text_cat", "-d", "text_cat/LM"], stdin=subprocess.PIPE, stdout=subprocess.PIPE) - sock.stdin.write(s) - sock.stdin.close() - lang = sock.stdout.read().strip() - sock.stdout.close() - os.chdir(cwd) - return lang - - def is_german(self, s): - """ - determines if a string is german or not - """ - # for short strings we can't do reliable recognition, so skip - # short strings and less than 4 words - s = s.replace('\n', ' ') - if len(s) < 32 or len(s.split()) < 4: - return False - return "german" == self.get_lang(s) - - def check_file(self, path): - """ - checks each comment in a file - """ - for linenum, s in self.get_comments(path): - if self.is_german(s): - print "%s:%s: %s" % (path, linenum, s) - - def check_source_files(self, dir): - """ - checks each _tracked_ file in a directory recursively - """ - sock = os.popen(r"git ls-files '%s' |egrep '\.(c|h)xx$'" % dir) - lines = sock.readlines() - sock.close() - for path in lines: - self.check_file(path.strip()) - -try: - Parser() -except KeyboardInterrupt: - print "Interrupted!" - sys.exit(0) - -# vim:set shiftwidth=4 softtabstop=4 expandtab: diff --git a/bin/find-undocumented-classes b/bin/find-undocumented-classes deleted file mode 100755 index 8bab72bc9..000000000 --- a/bin/find-undocumented-classes +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash - -# finds undocumented classes in the current directory (recursive) - -type -p doxygen >/dev/null || exit - -filter= -quiet=n -if [ "$1" = "-q" ]; then - filter=">/dev/null" - quiet=y - shift -fi - -doxygen=$(mktemp -d) -eval doxygen -g $doxygen/doxygen.cfg $filter -sed -i "/HTML_OUTPUT/s|html|$doxygen/html|" $doxygen/doxygen.cfg -sed -i '/GENERATE_LATEX/s/= YES/= NO/' $doxygen/doxygen.cfg -sed -i '/RECURSIVE/s/= NO/= YES/' $doxygen/doxygen.cfg -# do we have any arguments? -if [ -n "$*" ]; then - sed -i "/^INPUT[^_]/s|=.*|= $*|" $doxygen/doxygen.cfg -fi -eval doxygen $doxygen/doxygen.cfg $filter 2> $doxygen/errors.txt -if [ "$quiet" == "n" ]; then - echo - echo "The following classes are undocumented:" - echo -fi -cat $doxygen/errors.txt|grep -i 'Warning: Compound.*is not documented' -rm -rf $doxygen - -# vim:set shiftwidth=4 softtabstop=4 expandtab: diff --git a/bin/generate-bash-completion b/bin/generate-bash-completion deleted file mode 100755 index ed34b1808..000000000 --- a/bin/generate-bash-completion +++ /dev/null @@ -1,234 +0,0 @@ -#!/usr/bin/env perl -# script to generate LibreOffice bash_completion file for the main applications -# written by Rene Engelhard <rene@debian.org>, Public Domain -# updated for libreoffice-build by Petr Mladek <pmladek@suse.cz>, Public Domain -# yes, this script probably is not real good code :) but still easier -# to maintain than adding those entries statically many times in -# a file... - -use strict; - -my @DRAWDOCS=("sxd", "std", "dxf", "emf", "eps", "met", "pct", "sgf", "sgv", "sda", - "sdd", "vor", "svm", "wmf", "bmp", "gif", "jpg", "jpeg", "jfif", "fif", - "jpe", "pcd", "pcx", "pgm", "png", "ppm", "psd", "ras", "tga", "tif", - "tiff", "xbm", "xpm", "odg", "otg", "fodg", "odc", "odi", "sds", - "wpg", "svg"); - -my @IMPRESSDOCS=("sxi", "sti", "ppt", "pps", "pot", "sxd", "sda", "sdd", "sdp", - "vor", "cgm", "odp", "otp", "fodp", "ppsm", "ppsx", "pptm", "pptx", - "potm", "potx"); - -my @TEMPLATES=("stw", "dot", "vor", "stc", "xlt", "sti", "pot", "std", "stw", - "dotm", "dotx", "potm", "potx", "xltm", "xltx"); - -my @MATHDOCS=("sxm", "smf", "mml", "odf"); - -my @MASTERDOCS=("sxg", "odm", "sgl"); - -my @WRITERDOCS=("doc", "dot", "rtf", "sxw", "stw", "sdw", "vor", "txt", "htm?", - "xml", "wp", "wpd", "wps", "odt", "ott", "fodt", "docm", "docx", - "dotm", "dotx"); - -my @WEBDOCS=("htm", "html", "stw", "txt", "vor", "oth"); - -my @BASEDOCS=("odb"); - -my @CALCDOCS=("sxc", "stc", "dif", "dbf", "xls", "xlw", "xlt", "rtf", "sdc", "vor", - "slk", "txt", "htm", "html", "wk1", "wks", "123", "xml", "ods", "ots", - "fods", "csv", "xlsb", "xlsm", "xlsx", "xltm", "xltx"); - -my @EXTENSIONS=("oxt"); - -# default names of lowrappers -# use "" if you want to disable any wrapper -my %APPS = ( - office => "libreoffice", - master => "", - base => "lobase", - calc => "localc", - draw => "lodraw", - impress => "loimpress", - math => "lomath", - template => "lofromtemplate", - unopkg => "unopkg", - web => "loweb", - writer => "lowriter", -); - -my $office_shell_function = "_loexp_"; - -sub usage() -{ - print "Script to Generate bash completion for LO wrappers\n\n"; - - print "Usage: $0 --help\n"; - print " $0 [--binsuffix=suffix]\n"; - print "\t\t[--compat-oowrappers]\n"; - print "\t\t[--office=wrapper_name]\n"; - print "\t\t[--master=wrapper_name]\n"; - print "\t\t[--base=wrapper_name]\n"; - print "\t\t[--calc=wrapper_name]\n"; - print "\t\t[--draw=wrapper_name]\n"; - print "\t\t[--impress=wrapper_name]\n"; - print "\t\t[--math=wrapper_name]\n"; - print "\t\t[--template=wrapper_name]\n"; - print "\t\t[--unopkg=wrapper_name]\n"; - print "\t\t[--web=wrapper_name]\n"; - print "\t\t[--writer=wrapper_name]\n"; - print "\t\tinput_file\n"; - print "\t\toutput_file\n\n"; - - print "Options:\n"; - print "\t--help\t\tprint this help\n"; - print "\t--binsuffix\tdefines a suffix that is added after each wrapper\n"; - print "\t--compat-oowrappers\tset wrapper names to the old default oo* wrapper names\n"; - - print "The other options allows to redefine the wrapper names.\n"; - print "The value \"\" can be used to disable any wrapper.\n\n"; -} - -my $infilename; -my $outfilename; -my $binsuffix = ''; - -my $opt; -foreach my $arg (@ARGV) { - if ( $arg =~ /--help/ ) { - usage(); - exit 0; - } elsif ( $arg =~ /--compat-oowrappers/ ) { - $APPS{'office'} = "ooffice"; - $APPS{'master'} = ""; - $APPS{'base'} = "oobase"; - $APPS{'calc'} = "oocalc"; - $APPS{'draw'} = "oodraw"; - $APPS{'impress'} = "ooimpress"; - $APPS{'math'} = "oomath"; - $APPS{'template'} = "oofromtemplate"; - $APPS{'unopkg'} = "unopkg"; - $APPS{'web'} = "ooweb"; - $APPS{'writer'} = "oowriter"; - $office_shell_function = "_ooexp_"; - } elsif ( $arg =~ /--binsuffix=(.*)/ ) { - $binsuffix = "$1"; - } elsif ( $arg =~ /--office=(.*)/ ) { - $APPS{'office'} = "$1"; - } elsif ( $arg =~ /--master=(.*)/ ) { - $APPS{'master'} = "$1"; - } elsif ( $arg =~ /--base=(.*)/ ) { - $APPS{'base'} = "$1"; - } elsif ( $arg =~ /--calc=(.*)/ ) { - $APPS{'calc'} = "$1"; - } elsif ( $arg =~ /--draw=(.*)/ ) { - $APPS{'draw'} = "$1"; - } elsif ( $arg =~ /--impress=(.*)/ ) { - $APPS{'impress'} = "$1" - } elsif ( $arg =~ /--math=(.*)/ ) { - $APPS{'math'} = "$1"; - } elsif ( $arg =~ /--template=(.*)/ ) { - $APPS{'template'} = "$1"; - } elsif ( $arg =~ /--unopkg=(.*)/ ) { - $APPS{'unopkg'} = "$1"; - } elsif ( $arg =~ /--web=(.*)/ ) { - $APPS{'web'} = "$1"; - } elsif ( $arg =~ /--writer=(.*)/ ) { - $APPS{'writer'} = "$1" - } elsif ( $arg =~ /^-.*/ ) { - printf STDERR "Error: invalid option \"$arg\", try --help\n"; - exit 1; - } elsif ( $outfilename ) { - printf STDERR "Error: too much arguments, try --help\n"; - exit 1; - } else { - if ($infilename) { - $outfilename = "$arg"; - } else { - $infilename = "$arg"; - } - } -} - -unless ( $infilename ) { - printf STDERR "Error: undefined input file, try --help\n"; - exit 1; -} - -unless ( $outfilename ) { - printf STDERR "Error: undefined output file, try --help\n"; - exit 1; -} - -#add binsuffix -foreach my $app (keys %APPS) { - $APPS{$app} .= "$binsuffix" unless ( "$APPS{$app}" eq "" ); -} - -sub print_suffixes_check { - my $app = shift(@_); - my $first_suffix = shift(@_); - - ($first_suffix) || die "Error: No suffix defined for $app\n"; - - print BCOUTFILE " $app)\t\te=\'!*.+(" . $first_suffix . "|" . uc($first_suffix); - foreach my $suffix (@_) { - print BCOUTFILE "|" . $suffix; - print BCOUTFILE "|" . uc($suffix); - } - print BCOUTFILE ")\' ;;\n"; -} - -sub print_suffixes_checks { - foreach my $app (keys %APPS) { - # skip the disabled wrapper - next if ( $APPS{$app} eq "" ); - - if ($app eq "draw" ) { print_suffixes_check ($APPS{$app}, @DRAWDOCS); } - if ($app eq "writer") { print_suffixes_check ($APPS{$app}, @WRITERDOCS, @MASTERDOCS); } - if ($app eq "web") { print_suffixes_check ($APPS{$app}, @WEBDOCS); } - if ($app eq "math") { print_suffixes_check ($APPS{$app}, @MATHDOCS); } - if ($app eq "impress") { print_suffixes_check ($APPS{$app}, @IMPRESSDOCS); } - if ($app eq "base") { print_suffixes_check ($APPS{$app}, @BASEDOCS); } - if ($app eq "calc") { print_suffixes_check ($APPS{$app}, @CALCDOCS); } - if ($app eq "master") { print_suffixes_check ($APPS{$app}, @MASTERDOCS); } - if ($app eq "template") { print_suffixes_check ($APPS{$app}, @TEMPLATES); } - # libreoffice should contain all... - if ($app eq "office") { print_suffixes_check ($APPS{$app}, @DRAWDOCS, @WRITERDOCS, @MATHDOCS, @IMPRESSDOCS, @BASEDOCS, @CALCDOCS, @MASTERDOCS, @TEMPLATES, @WEBDOCS); } - # unopkg is a standalone tool - if ($app eq "unopkg") { print_suffixes_check ($APPS{$app}, @EXTENSIONS); } - } -} - -sub print_apps { - my $app_to_print; - foreach my $app (keys %APPS) { - # skip the disabled wrapper - next if ( $APPS{$app} eq "" ); - - print BCOUTFILE "\t\t\t\t\t$app_to_print \\\n" if ($app_to_print); - $app_to_print = $APPS{$app}; - } - # the last app will be printed without the final backslash - ($app_to_print) || die "Error: No LO wrapper was selected\n"; - print BCOUTFILE "\t\t\t\t\t$app_to_print\n"; -} - - -open (BCINFILE, "$infilename") || die "Error: can't open $infilename for reading: $!\n"; -open (BCOUTFILE, "> $outfilename") || die "Error: can't open $outfilename for writing: $!\n"; - -while (my $line = <BCINFILE>) { - chomp $line; - - $line =~ s/\@OFFICE_SHELL_FUNCTION\@/$office_shell_function/; - - if ($line =~ m/\@BASH_COMPLETION_SUFFIXES_CHECKS\@/) { - print_suffixes_checks(); - } elsif ($line =~ m/\@BASH_COMPLETION_OOO_APPS\@/) { - print_apps(); - } else { - print BCOUTFILE "$line\n"; - } -} - -close (BCINFILE); -close (BCOUTFILE); diff --git a/bin/git-new-workdir b/bin/git-new-workdir deleted file mode 100755 index 3ad2c0cea..000000000 --- a/bin/git-new-workdir +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/sh - -usage () { - echo "usage:" $@ - exit 127 -} - -die () { - echo $@ - exit 128 -} - -if test $# -lt 2 || test $# -gt 3 -then - usage "$0 <repository> <new_workdir> [<branch>]" -fi - -orig_git=$1 -new_workdir=$2 -branch=$3 - -# want to make sure that what is pointed to has a .git directory ... -git_dir=$(cd "$orig_git" 2>/dev/null && - git rev-parse --git-dir 2>/dev/null) || - die "Not a git repository: \"$orig_git\"" - -case "$git_dir" in -.git) - git_dir="$orig_git/.git" - ;; -.) - git_dir=$orig_git - ;; -esac - -# don't link to a configured bare repository -isbare=$(git --git-dir="$git_dir" config --bool --get core.bare) -if test ztrue = z$isbare -then - die "\"$git_dir\" has core.bare set to true," \ - " remove from \"$git_dir/config\" to use $0" -fi - -# don't link to a workdir -if test -L "$git_dir/config" -then - die "\"$orig_git\" is a working directory only, please specify" \ - "a complete repository." -fi - -# don't recreate a workdir over an existing repository -if test -e "$new_workdir" -then - die "destination directory '$new_workdir' already exists." -fi - -# make sure the links use full paths -git_dir=$(cd "$git_dir"; pwd) - -# create the workdir -mkdir -p "$new_workdir/.git" || die "unable to create \"$new_workdir\"!" - -# create the links to the original repo. explicitly exclude index, HEAD and -# logs/HEAD from the list since they are purely related to the current working -# directory, and should not be shared. -for x in config refs logs/refs objects info hooks packed-refs remotes rr-cache svn -do - case $x in - */*) - mkdir -p "$(dirname "$new_workdir/.git/$x")" - ;; - esac - ln -s "$git_dir/$x" "$new_workdir/.git/$x" -done - -# now setup the workdir -cd "$new_workdir" -# copy the HEAD from the original repository as a default branch -cp "$git_dir/HEAD" .git/HEAD -# checkout the branch (either the same as HEAD from the original repository, or -# the one that was asked for) -git checkout -f $branch diff --git a/bin/git-ps1 b/bin/git-ps1 deleted file mode 100755 index 8a0980091..000000000 --- a/bin/git-ps1 +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env bash -r= -b= -g="$(git rev-parse --git-dir 2>/dev/null)" - -if [ -n "$g" ]; then - if [ -d "$g/../.dotest" ] - then - if test -f "$g/../.dotest/rebasing" - then - r="|REBASE" - elif test -f "$g/../.dotest/applying" - then - r="|AM" - else - r="|AM/REBASE" - fi - b="$(git symbolic-ref HEAD 2>/dev/null)" - elif [ -f "$g/.dotest-merge/interactive" ] - then - r="|REBASE-i" - b="$(cat "$g/.dotest-merge/head-name")" - elif [ -d "$g/.dotest-merge" ] - then - r="|REBASE-m" - b="$(cat "$g/.dotest-merge/head-name")" - elif [ -f "$g/MERGE_HEAD" ] - then - r="|MERGING" - b="$(git symbolic-ref HEAD 2>/dev/null)" - else - if [ -f "$g/BISECT_LOG" ] - then - r="|BISECTING" - fi - if ! b="$(git symbolic-ref HEAD 2>/dev/null)" - then - if ! b="$(git describe --exact-match HEAD 2>/dev/null)" - then - b="$(cut -c1-7 "$g/HEAD")..." - fi - fi - fi - - if [ -n "$1" ]; then - printf "$1" "${b##refs/heads/}$r" - else - printf "%s" "${b##refs/heads/}$r" - fi -else - printf "not-in-git" -fi diff --git a/bin/java-set-classpath.in b/bin/java-set-classpath.in deleted file mode 100644 index 672463e16..000000000 --- a/bin/java-set-classpath.in +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/sh - -#***************************************************************************** -# -# java-set-classpath - Utility to update the default CLASSPATH for OpenOffice.org -# -# Initial version by: Petr Mladek <pmladek@suse.cz> -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2, as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -#***************************************************************************** - -if test "z$1" = "z" ; then - echo "Update the default CLASSPATH for OpenOffice.org" - echo "" - echo "Usage: $0 [dir|jar]..." - echo "" - echo "The utility updates the OpenOffice.org system setting. It adds or removes" - echo "the given directories and jar-files to or from the default CLASSPATH" - echo "depending on if they are available on the system or not." - echo "" - echo "Parameters:" - echo " dir - absolute path to a directory" - echo " jar - absolute path to a jar-file" - exit 0; -fi - -JVM_CONFIG_FILE=@OOINSTBASE@/basis-link/program/fundamentalbasisrc - -for path in $@ ; do - if test "z${path%%/*}" != "z" ; then - echo "Warning: the path "$path" is not absolute and will be ignored" - continue - fi - if test -e $path ; then - # the file exist - grep "URE_MORE_JAVA_CLASSPATH_URLS.*file:/*$path\([[:space:]].*\)\?$" $JVM_CONFIG_FILE >/dev/null && continue - # it is not registered - TMP_FILE=`mktemp /tmp/ooset-java-class.XXXXXXXXXX` || exit 1 - sed -e "s|^\(.*URE_MORE_JAVA_CLASSPATH_URLS.*\)$|\1 file://$path|" $JVM_CONFIG_FILE >$TMP_FILE - mv -f $TMP_FILE $JVM_CONFIG_FILE - chmod 644 $JVM_CONFIG_FILE - else - # the file does not exist, remove it from the configuration - TMP_FILE=`mktemp /tmp/ooset-java-class.XXXXXXXXXX` || exit 1; - sed -e "s|^\(.*URE_MORE_JAVA_CLASSPATH_URLS.*\)file:/*$path\([[:space:]].*\)\?$|\1\2|" \ - -e "s/\(URE_MORE_JAVA_CLASSPATH_URLS=\)[[:space:]]\+/\1/" \ - -e "/^.*URE_MORE_JAVA_CLASSPATH_URLS/s/[[:space:]]\+/ /g" \ - -e "/^.*URE_MORE_JAVA_CLASSPATH_URLS/s/[[:space:]]*$//" $JVM_CONFIG_FILE >$TMP_FILE - mv -f $TMP_FILE $JVM_CONFIG_FILE - chmod 644 $JVM_CONFIG_FILE - fi -done diff --git a/bin/lo-commit-stat b/bin/lo-commit-stat deleted file mode 100755 index 24bcb891b..000000000 --- a/bin/lo-commit-stat +++ /dev/null @@ -1,403 +0,0 @@ -#!/usr/bin/perl - eval 'exec /usr/bin/perl -S $0 ${1+"$@"}' - if $running_under_some_shell; -#!/usr/bin/perl - -use strict; - -my $main_repo="bootstrap"; -my @pieces=("artwork", "base", "calc", "components", - "extensions", "extras", "filters", "help", "impress", - "libs-core", "libs-extern", "libs-extern-sys", "libs-gui", - "translations", "postprocess", "sdk", "testing", "ure", "writer"); - -sub search_bugs($$$$) -{ - my ($pdata, $piece, $commit_id, $line) = @_; - - my $bug = ""; - my $bug_orig; - while (defined $bug) { - - # match fdo#123, rhz#123, i#123 - if ( $line =~ m/(\w*\#+\d+)/ ) { - $bug_orig = $1; - $bug = $1; - # match #i123# - } elsif ( $line =~ m/(\#i)(\d+)(\#)/ ) { - $bug_orig = $1 . $2 . $3; - $bug = "i#$2"; - } else { - $bug = undef; - next; - } - -# print " found $bug\n"; - # remove bug number from the comment; it will be added later a standardized way - $bug_orig =~ s/\#/\\#/; - $line =~ s/[Rr]esolves:\s*$bug_orig\s*//; - $line =~ s/\s*-\s*$bug_orig\s*//; - $line =~ s/\(?$bug_orig\)?[:,]?\s*//; - - # bnc# is preferred over n# for novell bugs - $bug =~ s/^n\#/bnc#/; - # save the bug number - %{$pdata->{$piece}{$commit_id}{'bugs'}} = () if (! defined %{$pdata->{$piece}{$commit_id}{'bugs'}}); - $pdata->{$piece}{$commit_id}{'bugs'}{$bug} = 1; - $pdata->{$piece}{$commit_id}{'flags'}{'bug'} = 1; - } - - return $line; -} - -sub standardize_summary($) -{ - my $line = shift; - - $line =~ s/^\s*//; - $line =~ s/\s*$//; - - # lower first letter - $line =~ m/(^.)/; - my $first_char = lc($1); - $line =~ s/^./$first_char/; - - # FIXME: remove do at the end of line - # remove bug numbers - return $line; -} - -sub load_git_log($$$$$) -{ - my ($pdata, $repo_dir, $piece, $branch_name, $git_command) = @_; - - my $cmd = "cd $repo_dir; $git_command"; - my $commit_id; - my $summary; - - print STDERR "Analyzing log from the git repo: $piece...\n"; - - my $repo_branch_name = get_branch_name($repo_dir); - if ( $branch_name ne $repo_branch_name ) { - die "Error: mismatch of branches:\n" . - " main repo is on the branch: $branch_name\n" . - " $piece repo is on the branch: $repo_branch_name\n"; - } - - open (GIT, "$cmd 2>&1|") || die "Can't run $cmd: $!"; - %{$pdata->{$piece}} = (); - - while (my $line = <GIT>) { - chomp $line; - - if ( $line =~ m/^commit ([0-9a-z]{20})/ ) { - $commit_id = "$1"; - $summary=undef; - %{$pdata->{$piece}{"$commit_id"}} = (); - %{$pdata->{$piece}{"$commit_id"}{'flags'}} = (); - next; - } - - if ( $line =~ /^Author:\s*([^\<]*)\<([^\>]*)>/ ) { - # get rid of extra empty spaces; - my $name = "$1"; - $name =~ s/\s+$//; - die "Error: Author already defined for the commit {$commit_id}\n" if defined ($pdata->{$piece}{$commit_id}{'author'}); - %{$pdata->{$piece}{$commit_id}{'author'}} = (); - $pdata->{$piece}{$commit_id}{'author'}{'name'} = "$name"; - $pdata->{$piece}{$commit_id}{'author'}{'email'} = "$2"; - next; - } - - if ( $line =~ /^Date:\s+/ ) { - # ignore date line - next; - } - - if ( $line =~ /^\s*$/ ) { - # ignore empty line - next; - } - - $line = search_bugs($pdata, $piece, $commit_id, $line); - # FIXME: need to be implemented -# search_keywords($pdata, $line); - - unless (defined $pdata->{$piece}{$commit_id}{'summary'}) { - $summary = standardize_summary($line); - $pdata->{$piece}{$commit_id}{'summary'} = $summary; - } - } - - close GIT; -} - -sub get_repo_name($) -{ - my $repo_dir = shift; - - open (GIT_CONFIG, "$repo_dir/.git/config") || - die "can't open \"$$repo_dir/.git/config\" for reading: $!\n"; - - while (my $line = <GIT_CONFIG>) { - chomp $line; - - if ( $line =~ /^\s*url\s*=\s*(\S+)$/ ) { - my $repo_name = "$1"; - $repo_name = s/.*\///g; - return "$repo_name"; - } - } - die "Error: can't find repo name in \"$$repo_dir/.git/config\"\n"; -} - -sub load_data($$$$$) -{ - my ($pdata, $top_dir, $piece, $branch_name, $git_command) = @_; - - if (defined $piece) { - my $piece_dir; - if ("$piece" eq "$main_repo") { - $piece_dir = "$top_dir"; - } else { - $piece_dir = "$top_dir/clone/$piece"; - } - load_git_log($pdata, $piece_dir, $piece, $branch_name, $git_command); - } else { - load_git_log($pdata, $top_dir, $main_repo, $branch_name, $git_command); - foreach my $piece (@pieces) { - load_git_log($pdata, "$top_dir/clone/$piece", $piece, $branch_name, $git_command); - } - } -} - -sub get_branch_name($) -{ - my ($top_dir) = @_; - - my $branch; - my $cmd = "cd $top_dir && git branch"; - - open (GIT, "$cmd 2>&1|") || die "Can't run $cmd: $!"; - - while (my $line = <GIT>) { - chomp $line; - - if ( $line =~ m/^\*\s*(\S+)/ ) { - $branch = "$1"; - } - } - - close GIT; - - die "Error: did not detect git branch name in $top_dir\n" unless defined ($branch); - - return $branch; -} - -sub open_log_file($$$$$) -{ - my ($log_dir, $log_prefix, $log_suffix, $top_dir, $branch_name) = @_; - - my $logfilename = "$log_prefix-$branch_name-$log_suffix.log"; - $logfilename = "$log_dir/$logfilename" if (defined $log_dir); - - if (-f $logfilename) { - print "WARNING: The log file already exists: $logfilename\n"; - print "Do you want to overwrite it? (Y/n)?\n"; - my $answer = <STDIN>; - chomp $answer; - $answer = "y" unless ($answer); - die "Please, rename the file or choose another log suffix\n" if ( lc($answer) ne "y" ); - } - - my $log; - open($log, '>', $logfilename) || die "Can't open \"$logfilename\" for writing: $!\n"; - - return $log; -} - -sub print_summary_in_stat($$$$$$$$$) -{ - my ($summary, $pprint_filters, $print_mode, $ppiece_title, $pflags, $pbugs, $pauthors, $prefix, $log) = @_; - - return if ( $summary eq "" ); - - # do we want to print this summary at all? - my $print; - if (%{$pprint_filters}) { - foreach my $flag (keys %{$pprint_filters}) { - $print = 1 if (defined $pflags->{$flag}); - } - } else { - $print = 1; - } - return unless (defined $print); - - # print piece title if not done yet - if ( defined ${$ppiece_title} && $print_mode ne "bugnumbers" ) { - printf $log "${$ppiece_title}\n"; - ${$ppiece_title} = undef; - } - - # finally print the summary line - my $bugs = ""; - if ( %{$pbugs} ) { - if ( $print_mode eq "bugnumbers" ) { - $bugs = join ("\n", keys %{$pbugs}) . "\n"; - } else { - $bugs = " (" . join (", ", keys %{$pbugs}) . ")"; - } - } - - my $authors = ""; - if ( %{$pauthors} ) { - $authors = " [" . join (", ", keys %{$pauthors}) . "]"; - } - - if ( $print_mode eq "bugnumbers" ) { - printf $log $bugs; - } else { - printf $log $prefix . $summary . $bugs . $authors . "\n"; - } -} - -sub print_stat($$$$) -{ - my ($pdata, $pprint_filters, $print_mode, $log) = @_; - - foreach my $piece ( sort { $a cmp $b } keys %{$pdata}) { - # check if this piece has any entries at all - my $piece_title = "+ $piece"; - if ( %{$pdata->{$piece}} ) { - my $old_summary=""; - my %authors = (); - my %bugs = (); - my %flags = (); - foreach my $id ( sort { $pdata->{$piece}{$a}{'summary'} cmp $pdata->{$piece}{$b}{'summary'} } keys %{$pdata->{$piece}}) { - my $summary = $pdata->{$piece}{$id}{'summary'}; - if ($summary ne $old_summary) { - print_summary_in_stat($old_summary, $pprint_filters, $print_mode, \$piece_title, \%flags, \%bugs, \%authors, " + ", $log); - $old_summary = $summary; - %authors = (); - %bugs = (); - %flags = (); - } - # collect bug numbers - if (defined $pdata->{$piece}{$id}{'bugs'}) { - foreach my $bug (keys %{$pdata->{$piece}{$id}{'bugs'}}) { - $bugs{$bug} = 1; - } - } - # collect author names - my $author = $pdata->{$piece}{$id}{'author'}{'name'}; - $authors{$author} = 1; - # collect flags - foreach my $flag ( keys %{$pdata->{$piece}{$id}{'flags'}} ) { - $flags{$flag} = 1; - } - } - print_summary_in_stat($old_summary, $pprint_filters, $print_mode, \$piece_title, \%flags, \%bugs, \%authors, " + ", $log); - } - } -} - -######################################################################## -# help - -sub usage() -{ - print "This script generates LO git commit summary\n\n" . - - "Usage: lo-commit-stat [--help] [--no-pieces] [--piece=<piece>] --log-dir=<dir> --log-suffix=<string> topdir [git_arg...]\n\n" . - - "Options:\n" . - " --help print this help\n" . - " --no-pieces read changes just from the main repository, ignore other cloned repos\n" . - " --piece=<piece> summarize just changes from the given piece\n" . - " --log-dir=<dir> directory where to put the generated log\n" . - " --log-suffix=<string> suffix of the log file name; the result will be\n" . - " commit-log-<branch>-<log-name-suffix>.log; the branch name\n" . - " is detected automatically\n" . - " --bugs print just bug fixes\n" . - " --bug-numbers print just fixed bug numbers\n" . - " --rev-list use \"git rev-list\" instead of \"git log\"; useful to check\n" . - " differences between branches\n" . - " topdir directory with the libreoffice/bootstrap clone; the piece repos\n" . - " must be cloned in the main-repo-root/clone/<piece> subdirectories\n" . - " git_arg extra parameters passed to the git command to define\n" . - " the area of interest; The default command is \"git log\" and\n" . - " parameters might be, for example, --after=\"2010-09-27\" or\n" . - " TAG..HEAD; with the option --rev-list, useful might be, for\n" . - " example origin/master ^origin/libreoffice-3-3\n"; -} - - -####################################################################### -####################################################################### -# MAIN -####################################################################### -####################################################################### - - -my $piece; -my $top_dir; -my $log_prefix = "commit-log"; -my $log_dir; -my $log_suffix; -my $log; -my $branch_name; -my $git_command = "git log"; -my $branch_name; -my @git_args; -my %data; -my %print_filters = (); -my $print_mode = "normal"; - -foreach my $arg (@ARGV) { - if ($arg eq '--help') { - usage(); - exit; - } elsif ($arg eq '--no-pieces') { - $piece = "bootstrap"; - } elsif ($arg =~ m/--piece=(.*)/) { - $piece = $1; - } elsif ($arg =~ m/--log-suffix=(.*)/) { - $log_suffix = "$1"; - } elsif ($arg =~ m/--log-dir=(.*)/) { - $log_dir = "$1"; - } elsif ($arg eq '--bugs') { - $print_filters{'bug'} = 1; - $log_prefix = "bugfixes" - } elsif ($arg eq '--bug-numbers') { - $print_filters{'bug'} = 1; - $log_prefix = "bugnumbers"; - $print_mode = "bugnumbers"; - } elsif ($arg eq '--rev-list') { - $git_command = "git rev-list --pretty=medium" - } else { - if (! defined $top_dir) { - $top_dir=$arg; - } else { - push @git_args, $arg; - } - } -} - -$git_command .= " " . join ' ', @git_args if (@git_args); - -(defined $top_dir) || die "Error: top directory is not defined\n"; -(-d "$top_dir") || die "Error: not a directory: $top_dir\n"; -(-f "$top_dir/.git/config") || die "Error: can't find $top_dir/.git/config\n"; - -(!defined $log_dir) || (-d $log_dir) || die "Error: directory does no exist: $log_dir\n"; - -(defined $log_suffix) || die "Error: define log suffix using --log-suffix=<string>\n"; - -$branch_name = get_branch_name($top_dir); - -load_data(\%data, $top_dir, $piece, $branch_name, $git_command); - -$log = open_log_file($log_dir, $log_prefix, $log_suffix, $top_dir, $branch_name); -print_stat(\%data, \%print_filters, $print_mode, $log); -close $log; diff --git a/bin/lo-pack-sources b/bin/lo-pack-sources deleted file mode 100755 index f2c081873..000000000 --- a/bin/lo-pack-sources +++ /dev/null @@ -1,655 +0,0 @@ -#!/usr/bin/perl - eval 'exec /usr/bin/perl -S $0 ${1+"$@"}' - if $running_under_some_shell; -#!/usr/bin/perl - -use strict; -use File::Copy; -use File::Temp qw/ tempfile tempdir /; - -# get libreoffice-build version from the given libreoffice-build sources -sub get_config_version($) -{ - my ($lo_build_dir) = @_; - my $version; - - open (CONFIGURE, "$lo_build_dir/configure.in") || - die "can't open \"$lo_build_dir/configure.in\" for reading: $!\n"; - - while (my $line = <CONFIGURE>) { - chomp $line; - - if ($line =~ /AC_INIT\s*\(\s*libreoffice-build\s*,\s*([\w\.]*)\)/) { - $version="$1"; - } - } - close (CONFIGURE); - return $version; -} - -# set libreoffice-build version in the given libreoffice-build sources -sub set_config_version($$) -{ - my ($lo_build_dir, $version) = @_; - my $configure = "$lo_build_dir/configure.in"; - - open (CONFIGURE, "$configure") || - die "can't open \"$configure\" for reading: $!\n"; - - my ( $tmp_fh, $tmp_filename ) = tempfile( "$configure.XXXXXX" ); - if ( !defined $tmp_fh ) { - close (CONFIGURE); - die "Error: can't create temporary file: \"$configure.XXXXXX\"\n"; - } - - while (my $line = <CONFIGURE>) { - chomp $line; - - if ($line =~ /^(\s*AC_INIT\s*\(\s*libreoffice-build\s*,\s*)([\w\.]*)(\s*\)\s*)$/) { - print ${tmp_fh} "$1$version$3\n"; - } else { - print ${tmp_fh} "$line\n"; - } - } - close (CONFIGURE); - close (${tmp_fh}); - - # preserve permissions on target file by applying them to temp file - my ( $mode, $uid, $gid ) = ( stat($configure) )[ 2, 4, 5 ]; - $mode = $mode & 07777; - - chmod $mode, $tmp_filename; - chown $uid, $gid, $tmp_filename; - - rename ($tmp_filename, $configure) || - die "Can't rename \"$tmp_filename\" to \"$configure\": $!\n"; -} - -# increment the version for a test build: -# + add 'a' if the version ended with a number -# + bump the letter otherwise -sub inc_test_version($) -{ - my ($version) = @_; - - my $lastchar = chop $version; - my $new_version; - - if ($lastchar =~ /\d/) { - return "$version" . "$lastchar" . "a"; - } elsif ($lastchar =~ /\w/) { - # select next letter alhabeticaly: a->b, b->c, ... - $lastchar =~ tr/0a-zA-Z/a-zA-Z0/; - return "$version" . "$lastchar"; - } else { - die "Can't generate test version from \"$version$lastchar\n"; - } -} - -sub get_release_version($$$$) -{ - my ($config_version, $state_config_version, $state_release_version, $inc_version) = @_; - my $release_version; - - if (defined $state_config_version && - defined $state_release_version && - "$state_config_version" eq "$config_version") { - $release_version = "$state_release_version"; - } else { - $release_version = "$config_version"; - } - - if ( defined $inc_version ) { - $release_version = inc_test_version($release_version); - } - - return $release_version; -} - - -sub generate_lo_build_blacklist($) -{ - my ($blacklist) = @_; - - # FIXME: crazy hacks to copy libreoffice-build without too big and useless subdirectories and to show a progress - open (BLACKLIST, ">$blacklist") || die "Can't open $blacklist: $!\n"; - - # IMPORTANT: Do not remove .git directories because "git log" is called during "make dist" - print BLACKLIST "*/.svn\n"; - print BLACKLIST "rawbuild/*\n"; - print BLACKLIST "build/*\n"; - print BLACKLIST "clone/*\n"; - print BLACKLIST "src/libreoffice-*.tar.bz2\n"; - print BLACKLIST "src/????????????????????????????????-*\n"; - - close BLACKLIST; -} - -sub generate_lo_piece_blacklist($) -{ - my ($blacklist) = @_; - - # FIXME: crazy hacks to copy libreoffice-build without too big and useless subdirectories and to show a progress - open (BLACKLIST, ">$blacklist") || die "Can't open $blacklist: $!\n"; - - # IMPORTANT: Do not remove .git directories because "git log" is called during "make dist" - print BLACKLIST ".git\n"; - print BLACKLIST ".gitignore\n"; - print BLACKLIST ".gitattributes\n"; - print BLACKLIST "autom4te.cache/*\n"; - print BLACKLIST "autom4te.cache\n"; - print BLACKLIST "autogen.lastrun\n"; - print BLACKLIST "clone/*\n"; - print BLACKLIST "config.log\n"; - print BLACKLIST "config.parms\n"; - print BLACKLIST "git-hooks\n"; - print BLACKLIST "Env.Host.sh\n"; - print BLACKLIST "src/tmp*\n"; - print BLACKLIST "src/fetch.log\n"; - print BLACKLIST "src/libreoffice-*.tar.bz2\n"; - print BLACKLIST "src/????????????????????????????????-*\n"; - print BLACKLIST "warn\n"; - - close BLACKLIST; -} - -# remove symlinks to clone subdir -sub remove_module_symlinks($$) -{ - my ($tempdir, $piece_tarball_name) = @_; - - print STDERR "find $tempdir/$piece_tarball_name -mindepth 1 -maxdepth 1 -type l -exec rm {} \\;\n"; - system ("find $tempdir/$piece_tarball_name -mindepth 1 -maxdepth 1 -type l -exec rm {} \\;") && - die "Error: can't delete symlinks to clone dir in $tempdir: $!\n"; -} - - -# copy files to temp dir; showing a progress; using a black list -sub copy_dir_filter_and_show_progress($$$) -{ - my ($source_dir, $target_dir, $blacklist) = @_; - - print "Copying \"$source_dir\" -> \"$target_dir\"..."; - # FIXME: crazy hacks to copy dir with a blacklist and showing a progress - system ("tar -cf - -C $source_dir -X $blacklist \.\/ | " . - "tar -xf - -C $target_dir --checkpoint 2>&1 | " . - "awk '{ ORS=\"\" ; if (++nlines\%50 == 0) printf \".\"; fflush() }'") && - die "Error: copying failed: $!\n"; - print "\n"; -} - -# copy the local version of libreoffice-build into a tmp directory -# omit the .svn subdirectories -sub copy_lo_build_to_tempdir($) -{ - my ($lo_build_dir) = @_; - - my $tempdir = tempdir( 'libreoffice-XXXXXX', DIR => File::Spec->tmpdir ); - my $blacklist = "$tempdir/libreoffice-build.copy.blacklist"; - - generate_lo_build_blacklist($blacklist); - copy_dir_filter_and_show_progress($lo_build_dir, $tempdir, $blacklist); - - unlink $blacklist; - - return $tempdir; -} - -# copy the piece lo source directory into a tmp directory -# omit the .git subdirectories -sub copy_lo_piece_to_tempdir($$$) -{ - my ($piece_dir, $piece, $piece_tarball_name) = @_; - - - my $tempdir = tempdir( 'libreoffice-XXXXXX', DIR => File::Spec->tmpdir ); - my $blacklist = "$tempdir/libreoffice-$piece.copy.blacklist"; - - mkdir "$tempdir/$piece_tarball_name" || die "Can't create directory \"$tempdir/$piece_tarball_name\": $!\n"; - - generate_lo_piece_blacklist($blacklist); - copy_dir_filter_and_show_progress("$piece_dir", "$tempdir/$piece_tarball_name", $blacklist); - remove_module_symlinks($tempdir, $piece_tarball_name); - - unlink $blacklist; - - return $tempdir; -} - -sub generate_lo_piece_changelog($$$) -{ - my ($lo_piece_clone, $lo_piece_release_dir, $piece) = @_; - print "Generating changelog for $piece...\n"; - print "1:$lo_piece_clone, 2:$lo_piece_release_dir, 3:$piece\n"; - # FIXME: crazy hacks to copy dir with a blacklist and showing a progress - system ("cd $lo_piece_clone && " . - "git log --date=short --pretty='format:@%cd %an <%ae> [%H]%n%n%s%n%n%e%b' | " . - " sed -e 's|^\([^@]\)|\t\1|' -e 's|^@||' >$lo_piece_release_dir/ChangeLog" ) && - die "Error: generating failed: $!\n"; -} - -sub run_autoreconf($$) -{ - my ($dir, $piece) = @_; - - print "Running autoreconf for $piece...\n"; - system ("cd $dir && " . - "autoreconf -f -i && " . - "rm -rf autom4te.cache && " . - "cd - >/dev/null 2>&1") && die "Error: autoreconf failed: $!\n"; -} - -sub generate_version_file($$$) -{ - my ($dir, $piece, $release_version) = @_; - - # FIXME: crazy hacks to copy libreoffice-build without too big and useless subdirectories and to show a progress - open (VERFILE, ">$dir/$piece.ver") || die "Can't open $dir/lo-$piece.ver: $!\n"; - - print VERFILE "lo_bootstrap_ver=$release_version\n"; - - close VERFILE; -} - -sub release_lo_build($) -{ - my ($lo_build_dir) = @_; - - print "Creating libreoffice-build tarball...\n"; - system ("cd $lo_build_dir && " . - "./autogen.sh --with-distro=GoOoLinux && " . - "make dist && " . - "cd - >/dev/null 2>&1") && die "Error: releasing failed: $!\n"; -} - -sub release_lo_piece($$) -{ - my ($lo_piece_dir, $piece_tarball_name) = @_; - - print "Creating $piece_tarball_name.tar.bz2..."; - system ("cd $lo_piece_dir && " . - "tar -cjf $piece_tarball_name.tar.bz2 --checkpoint * 2>&1 | awk '{ ORS=\"\" ; if (++nlines\%50 == 0) printf \".\"; fflush() }' && " . - "cd - >/dev/null 2>&1") && die "Error: releasing failed: $!\n"; - print "\n"; -} - -sub generate_md5($$$) -{ - my ($dir, $tarball_name, $tarball_suffix) = @_; - - print "Generating MD5...\n"; - system ("cd $dir && " . - "md5sum $tarball_name$tarball_suffix >$tarball_name$tarball_suffix.md5 && " . - "cd - >/dev/null 2>&1") && die "Error: releasing failed: $!\n"; -} - -sub default_releases_state_file($) -{ - my ($lo_build_dir) = @_; - - my $rootdir = $lo_build_dir; - $rootdir =~ s/^(.*?)\/?[^\/]+\/?$/$1/; - - my $releases_state_file; - if ($rootdir) { - $releases_state_file = "$rootdir/.releases"; - } else { - $releases_state_file = ".releases"; - } - - return "$releases_state_file"; -} - -sub default_releases_archive($) -{ - my ($lo_build_dir) = @_; - - my $rootdir = $lo_build_dir; - $rootdir =~ s/^(.*?)\/?[^\/]+\/?$/$1/; - - my $releases_archive_dir; - if ($rootdir) { - $releases_archive_dir = "$rootdir/archive"; - } else { - $releases_archive_dir = "archive"; - } - - return "$releases_archive_dir"; -} - -sub load_releases_state($) -{ - my ($releases_state_file) = @_; - - my $state_config_version; - my $state_release_version; - - if (open (STATE, "$releases_state_file")) { - - while (my $line = <STATE>) { - chomp $line; - - if ($line =~ /^\s*configure_version\s*=\s*(.*)$/) { - $state_config_version = "$1"; - } elsif ($line =~ /^\s*released_version\s*=\s*(.*)$/) { - $state_release_version = "$1"; - } - } - close (STATE); - } - - return $state_config_version, $state_release_version; -} - -sub save_releases_state($$$) -{ - my ($releases_state_file, $config_version, $release_version) = @_; - - open (STATE, '>', "$releases_state_file") || - die "Can't open \"$releases_state_file\" for writing: $!\n"; - - print STATE "configure_version = $config_version\n"; - print STATE "released_version = $release_version\n"; - - close (STATE); -} - -sub remove_tempdir($) -{ - my ($tempdir) = @_; - -# print "Cleaning $tempdir...\n"; - system ("rm -rf $tempdir") && die "Error: rm failed: $!\n"; -} - -sub save_file($$$) -{ - my ($source_dir, $target_dir, $file) = @_; - - unless ( -d "$target_dir" ) { - mkdir ("$target_dir") || - die "Can't create directory \"$target_dir\": $!\n"; - } - - if ( -f "$target_dir/$file" ) { - print "Warning: $target_dir/$file already exists and will be replaced\n"; - unlink ("$target_dir/$file"); - } - - print "Copying into archive: $target_dir/$file ...\n"; - copy ("$source_dir/$file", "$target_dir/$file") || - die "Error: Can't copy $source_dir/$file to $target_dir/$file: $!\n"; -} - -sub check_if_file_exists($$) -{ - my ($file, $force) = @_; - - if (-e $file) { - if (defined $force) { - print "Warning: $file already exists and will be replaced!\n"; - } else { - die "Error: $file alrady exists.\n". - " Use --force if you want to replace it.\n"; - } - } -} - -sub check_if_tarball_already_released($$$) -{ - my ($tarball, $releases_archive_dir, $force) = @_; - - check_if_file_exists($tarball, $force); - check_if_file_exists("$releases_archive_dir/$tarball", $force) if (defined $releases_archive_dir); -} - -sub check_if_already_released($$$$$$) -{ - my ($lo_build_tarball_name, $p_piece_tarball_name, $releases_archive_dir, $force, $pack_lo_build, $pack_lo_pieces) = @_; - - check_if_tarball_already_released("$lo_build_tarball_name.tar.gz", $releases_archive_dir, $force) if ($pack_lo_build); - - if ($pack_lo_pieces) { - foreach my $tarball_name ( values %{$p_piece_tarball_name} ) { - check_if_tarball_already_released("$tarball_name.tar.bz2", $releases_archive_dir, $force); - } - } -} - -sub prepare_lo_build_tarball($$$$) -{ - my ($lo_build_dir, $release_version, $md5, $lo_build_tarball_name) = @_; - - my $temp_dir = copy_lo_build_to_tempdir("$lo_build_dir"); - set_config_version($temp_dir, $release_version); - release_lo_build($temp_dir); - generate_md5($temp_dir, $lo_build_tarball_name, ".tar.gz") if (defined $md5); - - return $temp_dir; -} - -sub prepare_lo_piece_tarball($$$$$) -{ - my ($piece_dir, $release_version, $md5, $piece, $piece_tarball_name) = @_; - - my $temp_dir = copy_lo_piece_to_tempdir($piece_dir, $piece, $piece_tarball_name); - generate_lo_piece_changelog($piece_dir, "$temp_dir/$piece_tarball_name", $piece); - run_autoreconf("$temp_dir/$piece_tarball_name", $piece) if ($piece eq 'bootstrap'); - generate_version_file("$temp_dir/$piece_tarball_name", $piece, $release_version) if ($piece eq 'bootstrap'); - release_lo_piece($temp_dir, $piece_tarball_name); - generate_md5($temp_dir, $piece_tarball_name, ".tar.bz2") if (defined $md5); - - return $temp_dir; -} - -sub move_tarball_to_final_location($$$$) -{ - my ($temp_dir, $releases_archive_dir, $md5, $tarball) = @_; - - save_file($temp_dir, ".", "$tarball"); - save_file($temp_dir, ".", "$tarball.md5") if (defined $md5); - if ( defined $releases_archive_dir ) { - save_file($temp_dir, $releases_archive_dir, "$tarball"); - save_file($temp_dir, $releases_archive_dir, "$tarball.md5") if (defined $md5); - } - - remove_tempdir($temp_dir); -} - - -sub generate_tarballs($$$$$$$$$) -{ - my ($source_dir, $releases_archive_dir, $release_version, $md5, $lo_build_tarball_name, $p_piece_tarball_name, $pack_lo_build, $pack_lo_pieces, $is_lo_build_dir) = @_; - - if ($pack_lo_build) { -# my $temp_dir=prepare_lo_build_tarball($source_dir, $release_version, $md5, $lo_build_tarball_name); -# move_tarball_to_final_location($temp_dir, $releases_archive_dir, $md5, "$lo_build_tarball_name.tar.gz"); - my $temp_dir=prepare_lo_piece_tarball($source_dir, $release_version, $md5, "bootstrap", $lo_build_tarball_name); - move_tarball_to_final_location($temp_dir, $releases_archive_dir, $md5, "$lo_build_tarball_name.tar.bz2"); - } - - if ($pack_lo_pieces) { - my $piece_dir = $source_dir; - foreach my $piece ( keys %{$p_piece_tarball_name} ) { - print "\n--- Generating $piece ---\n"; - $piece_dir = "$source_dir/clone/$piece" if ($is_lo_build_dir); - my $temp_dir=prepare_lo_piece_tarball($piece_dir, $release_version, $md5, $piece, $p_piece_tarball_name->{$piece}); - move_tarball_to_final_location($temp_dir, $releases_archive_dir, $md5, "$p_piece_tarball_name->{$piece}.tar.bz2"); - } - } - -} - - -sub usage() -{ - print "This tool helps to pack the libreoffice-build and piece sources\n\n" . - - "Usage:\n". - "\tlo-pack-sources [--help] [--force] [--version]\n" . - "\t [--set-version=<ver>] [--inc-version] [--md5]\n" . - "\t [--no-lo-build] [--no-lo-pieces] [--piece=<piece>]\n" . - "\t [dir]\n\n" . - - "Options:\n\n" . - "\t--help: print this help\n" . - "\t--force: replace an already existing release of the same version\n" . - "\t--version: just print version of the released package but do not\n" . - "\t\trelease it; the version is affected by the other options, e.g.\n" . - "\t\t--inc-version\n" . - "\t--set-version: force another version\n" . - "\t--inc-version: increment the latest version; there is a difference\n" . - "\t\tbetween test release (default) and final (not yet supported)\n" . - "\t--md5: generate md5 sum for the final tarball\n" . - "\t--no-lo-build: do not pack the libreoffice-build tarball\n" . - "\t--no-lo-pieces: do not pack the libreoffice-build piece sources\n" . - "\t--piece=<piece>: pack just a single piece, .e.g. \"writer\",\n" . - "\tdir: path of the source directory, either libreoffice-build or piece\n"; -} - - -my $ptf; -my $md5; -my $inc_version; -my $config_version; -my $set_version; -my $get_config_version; -my $release_version; -my $pack_lo_build=1; -my $pack_lo_pieces=1; -my $source_dir; -my $releases_archive_dir; -my $releases_state_file; -my $state_config_version; -my $state_release_version; -my $lo_build_tarball_name; -my $lo_build_tempdir; -my $force; -my $verbose=1; -my $is_lo_build_dir=0; -my @pieces=("artwork", "base", "calc", "components", - "extensions", "extras", "filters", "help", "impress", - "libs-core", "libs-extern", "libs-extern-sys", "libs-gui", - "postprocess", "sdk", "testing", "translations", "ure", "writer"); -my %piece_tarball_name; - -################### -# Arguments parsing -################### - -for my $arg (@ARGV) { - if ($arg eq '--help' || $arg eq '-h') { - usage; - exit 0; - } elsif ($arg eq '--force') { - $force=1; - } elsif ($arg eq '--md5') { - $md5=1; - } elsif ($arg eq '--version') { - $get_config_version=1; - $verbose = undef; - } elsif ($arg eq '--inc-version') { - $inc_version=1 - } elsif ($arg =~ m/--set-version=(.*)/) { - $set_version="$1"; - } elsif ($arg eq '--no-lo-build') { - $pack_lo_build=0; - } elsif ($arg eq '--no-lo-pieces') { - $pack_lo_pieces=0; - } elsif ($arg =~ m/--piece=(.*)/) { - # process just one piece and do not pack libreoffice-build - @pieces=(); - push @pieces, "$1"; - $pack_lo_build=0; - } elsif ($arg =~ /^-/ ) { - die "Error: unknown option: $arg\n"; - } else { - if (! defined $source_dir) { - $source_dir = $arg; - } else { - die "Error: Too many arguments $arg\n"; - } - } -} - -################### -# Initial checks -################### - -unless ( defined $source_dir ) { - die "Error: undefined source directory, try --help\n"; -} - -unless ( -d "$source_dir" ) { - die "Error: is not a directory: $source_dir\n"; -} - -# check if it is a valid libreoffice-bootstrap directory -$is_lo_build_dir=1 if (-f "$source_dir/autogen.sh" && -f "$source_dir/set_soenv.in"); - -# all tarballs are generated from the libreoffice-bootstrap directory -if (@pieces > 1 && $is_lo_build_dir == 0 ) { - die "Error: \"$source_dir\" is not a valid libreoffice-bootstrap directory\n"; -} - -# just a single piece tarball can be generated from piece directory; version must be explicitely set in this case -if (@pieces == 1 && $is_lo_build_dir == 0 && ! defined $set_version ) { - die "Error: version must be set using the --set-version=<version> option\n" unless (defined $set_version); -} - -if (defined $set_version && defined $inc_version) { - die "Error: --set-version and --inc-version options can't be used together\n"; -} - - -################### -# Main logic -################### - - -print "Source: $source_dir\n" if ($verbose); - -if ($is_lo_build_dir) { - # detect some paths - $releases_state_file = default_releases_state_file($source_dir) unless (defined $releases_state_file); - $releases_archive_dir = default_releases_archive($source_dir) unless (defined $releases_archive_dir); - - # detect versions - $config_version = get_config_version($source_dir); - ($state_config_version, $state_release_version) = load_releases_state($releases_state_file); - if (defined $set_version) { - $release_version = "$set_version"; - } else { - $release_version = get_release_version($config_version, $state_config_version, $state_release_version, $inc_version); - } -} else { - # must be single piece release with predefined version - $release_version = "$set_version"; -} - -# define tarball names -$lo_build_tarball_name = "libreoffice-bootstrap-$release_version"; -foreach my $piece (@pieces) { - $piece_tarball_name{$piece} = "libreoffice-$piece-$release_version"; -} - -print "Default version : $config_version\n" if ($verbose && defined $config_version); -print "Last used version : $state_release_version\n" if ($verbose &a |