Compare commits
44 Commits
Author | SHA1 | Date |
---|---|---|
Andrius Štikonas | c22e3dac66 | |
Andrius Štikonas | 0e6133eed2 | |
Andrius Štikonas | 5052c8ad76 | |
Andrius Štikonas | ca00dd635f | |
Gábor Stefanik | 8c67b9ee9c | |
Andrius Štikonas | 71253f7f8c | |
Andrius Štikonas | 3bbd639937 | |
Googulator | cd74988efb | |
Googulator | 43f31ce543 | |
Googulator | 85026900ac | |
Googulator | 34a72584c1 | |
Googulator | 27b4f1c766 | |
Gábor Stefanik | c73d8c9dc1 | |
Andrius Štikonas | 5595a06ad9 | |
Gábor Stefanik | c5eb402eeb | |
Gábor Stefanik | 7f08661b6c | |
Andrius Štikonas | 0f91a466a1 | |
Gábor Stefanik | aa3d36b934 | |
Gábor Stefanik | e08f655cd6 | |
Gábor Stefanik | c0494d9af8 | |
Gábor Stefanik | 70fdbebd9c | |
Andrius Štikonas | 281f6e44d9 | |
Googulator | a5a689c954 | |
Gábor Stefanik | 0c718aeece | |
Gábor Stefanik | 25443468ee | |
Gábor Stefanik | e2a1df94a5 | |
Gábor Stefanik | 02fb689ce1 | |
Gábor Stefanik | 6567973a04 | |
Googulator | 5ae504cb67 | |
Gábor Stefanik | 3970ee7d1a | |
Gábor Stefanik | c75d609cf7 | |
Googulator | 29a029947c | |
Gábor Stefanik | 89a4d18ff0 | |
Gábor Stefanik | 6017ae7a9f | |
Gábor Stefanik | 637fa823f0 | |
Googulator | 86e1a5e7f6 | |
pyy | 5e11d2a592 | |
Andrius Štikonas | 4737ab7481 | |
Gábor Stefanik | c1c6b278e6 | |
fosslinux | 2261098f98 | |
fosslinux | b80e1f6a57 | |
fosslinux | d6e49c181c | |
fosslinux | 021574d2a9 | |
Gábor Stefanik | 60ec9ea80c |
|
@ -21,7 +21,7 @@ jobs:
|
|||
- name: Install pylint
|
||||
run: sudo pip3 install pylint
|
||||
- name: pylint
|
||||
run: pylint rootfs.py lib/utils.py lib/generator.py lib/target.py --disable=duplicate-code
|
||||
run: pylint rootfs.py lib/utils.py lib/generator.py lib/target.py check_substitutes.py --disable=duplicate-code
|
||||
|
||||
shellcheck:
|
||||
name: Lint shell files
|
||||
|
@ -42,3 +42,12 @@ jobs:
|
|||
run: sudo pip3 install reuse
|
||||
- name: reuse
|
||||
run: reuse lint
|
||||
|
||||
substitutes:
|
||||
name: Check validity of substituted tarballs
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repo
|
||||
uses: actions/checkout@v3
|
||||
- name: Check validity of substitutes
|
||||
run: ./check_substitutes.py
|
||||
|
|
|
@ -9,6 +9,6 @@ Source: https://github.com/fosslinux/live-bootstrap
|
|||
# Copyright: $YEAR $NAME <$CONTACT>
|
||||
# License: ...
|
||||
|
||||
Files: steps/*/sources steps/*/*.checksums steps/SHA256SUMS.pkgs steps/*/simple-patches/* steps/pre-network-sources
|
||||
Files: steps/*/sources steps/*/*.checksums steps/SHA256SUMS.pkgs steps/*/simple-patches/* seed/*.checksums
|
||||
Copyright: none
|
||||
License: MIT
|
||||
|
|
|
@ -0,0 +1,121 @@
|
|||
Creative Commons Legal Code
|
||||
|
||||
CC0 1.0 Universal
|
||||
|
||||
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
|
||||
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
|
||||
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
|
||||
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
|
||||
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
|
||||
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
|
||||
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
|
||||
HEREUNDER.
|
||||
|
||||
Statement of Purpose
|
||||
|
||||
The laws of most jurisdictions throughout the world automatically confer
|
||||
exclusive Copyright and Related Rights (defined below) upon the creator
|
||||
and subsequent owner(s) (each and all, an "owner") of an original work of
|
||||
authorship and/or a database (each, a "Work").
|
||||
|
||||
Certain owners wish to permanently relinquish those rights to a Work for
|
||||
the purpose of contributing to a commons of creative, cultural and
|
||||
scientific works ("Commons") that the public can reliably and without fear
|
||||
of later claims of infringement build upon, modify, incorporate in other
|
||||
works, reuse and redistribute as freely as possible in any form whatsoever
|
||||
and for any purposes, including without limitation commercial purposes.
|
||||
These owners may contribute to the Commons to promote the ideal of a free
|
||||
culture and the further production of creative, cultural and scientific
|
||||
works, or to gain reputation or greater distribution for their Work in
|
||||
part through the use and efforts of others.
|
||||
|
||||
For these and/or other purposes and motivations, and without any
|
||||
expectation of additional consideration or compensation, the person
|
||||
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
|
||||
is an owner of Copyright and Related Rights in the Work, voluntarily
|
||||
elects to apply CC0 to the Work and publicly distribute the Work under its
|
||||
terms, with knowledge of his or her Copyright and Related Rights in the
|
||||
Work and the meaning and intended legal effect of CC0 on those rights.
|
||||
|
||||
1. Copyright and Related Rights. A Work made available under CC0 may be
|
||||
protected by copyright and related or neighboring rights ("Copyright and
|
||||
Related Rights"). Copyright and Related Rights include, but are not
|
||||
limited to, the following:
|
||||
|
||||
i. the right to reproduce, adapt, distribute, perform, display,
|
||||
communicate, and translate a Work;
|
||||
ii. moral rights retained by the original author(s) and/or performer(s);
|
||||
iii. publicity and privacy rights pertaining to a person's image or
|
||||
likeness depicted in a Work;
|
||||
iv. rights protecting against unfair competition in regards to a Work,
|
||||
subject to the limitations in paragraph 4(a), below;
|
||||
v. rights protecting the extraction, dissemination, use and reuse of data
|
||||
in a Work;
|
||||
vi. database rights (such as those arising under Directive 96/9/EC of the
|
||||
European Parliament and of the Council of 11 March 1996 on the legal
|
||||
protection of databases, and under any national implementation
|
||||
thereof, including any amended or successor version of such
|
||||
directive); and
|
||||
vii. other similar, equivalent or corresponding rights throughout the
|
||||
world based on applicable law or treaty, and any national
|
||||
implementations thereof.
|
||||
|
||||
2. Waiver. To the greatest extent permitted by, but not in contravention
|
||||
of, applicable law, Affirmer hereby overtly, fully, permanently,
|
||||
irrevocably and unconditionally waives, abandons, and surrenders all of
|
||||
Affirmer's Copyright and Related Rights and associated claims and causes
|
||||
of action, whether now known or unknown (including existing as well as
|
||||
future claims and causes of action), in the Work (i) in all territories
|
||||
worldwide, (ii) for the maximum duration provided by applicable law or
|
||||
treaty (including future time extensions), (iii) in any current or future
|
||||
medium and for any number of copies, and (iv) for any purpose whatsoever,
|
||||
including without limitation commercial, advertising or promotional
|
||||
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
|
||||
member of the public at large and to the detriment of Affirmer's heirs and
|
||||
successors, fully intending that such Waiver shall not be subject to
|
||||
revocation, rescission, cancellation, termination, or any other legal or
|
||||
equitable action to disrupt the quiet enjoyment of the Work by the public
|
||||
as contemplated by Affirmer's express Statement of Purpose.
|
||||
|
||||
3. Public License Fallback. Should any part of the Waiver for any reason
|
||||
be judged legally invalid or ineffective under applicable law, then the
|
||||
Waiver shall be preserved to the maximum extent permitted taking into
|
||||
account Affirmer's express Statement of Purpose. In addition, to the
|
||||
extent the Waiver is so judged Affirmer hereby grants to each affected
|
||||
person a royalty-free, non transferable, non sublicensable, non exclusive,
|
||||
irrevocable and unconditional license to exercise Affirmer's Copyright and
|
||||
Related Rights in the Work (i) in all territories worldwide, (ii) for the
|
||||
maximum duration provided by applicable law or treaty (including future
|
||||
time extensions), (iii) in any current or future medium and for any number
|
||||
of copies, and (iv) for any purpose whatsoever, including without
|
||||
limitation commercial, advertising or promotional purposes (the
|
||||
"License"). The License shall be deemed effective as of the date CC0 was
|
||||
applied by Affirmer to the Work. Should any part of the License for any
|
||||
reason be judged legally invalid or ineffective under applicable law, such
|
||||
partial invalidity or ineffectiveness shall not invalidate the remainder
|
||||
of the License, and in such case Affirmer hereby affirms that he or she
|
||||
will not (i) exercise any of his or her remaining Copyright and Related
|
||||
Rights in the Work or (ii) assert any associated claims and causes of
|
||||
action with respect to the Work, in either case contrary to Affirmer's
|
||||
express Statement of Purpose.
|
||||
|
||||
4. Limitations and Disclaimers.
|
||||
|
||||
a. No trademark or patent rights held by Affirmer are waived, abandoned,
|
||||
surrendered, licensed or otherwise affected by this document.
|
||||
b. Affirmer offers the Work as-is and makes no representations or
|
||||
warranties of any kind concerning the Work, express, implied,
|
||||
statutory or otherwise, including without limitation warranties of
|
||||
title, merchantability, fitness for a particular purpose, non
|
||||
infringement, or the absence of latent or other defects, accuracy, or
|
||||
the present or absence of errors, whether or not discoverable, all to
|
||||
the greatest extent permissible under applicable law.
|
||||
c. Affirmer disclaims responsibility for clearing rights of other persons
|
||||
that may apply to the Work or any use thereof, including without
|
||||
limitation any person's Copyright and Related Rights in the Work.
|
||||
Further, Affirmer disclaims responsibility for obtaining any necessary
|
||||
consents, permissions or other rights required for any use of the
|
||||
Work.
|
||||
d. Affirmer understands and acknowledges that Creative Commons is not a
|
||||
party to this document and has no duty or obligation with respect to
|
||||
this CC0 or use of the Work.
|
|
@ -1,298 +0,0 @@
|
|||
COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL)
|
||||
Version 1.0
|
||||
|
||||
1. Definitions.
|
||||
|
||||
1.1. “Contributor” means each individual or entity that creates or contributes
|
||||
to the creation of Modifications.
|
||||
|
||||
1.2. “Contributor Version” means the combination of the Original Software,
|
||||
prior Modifications used by a Contributor (if any), and the Modifications
|
||||
made by that particular Contributor.
|
||||
|
||||
1.3. “Covered Software” means (a) the Original Software, or (b) Modifications,
|
||||
or (c) the combination of files containing Original Software with files containing
|
||||
Modifications, in each case including portions thereof.
|
||||
|
||||
1.4. “Executable” means the Covered Software in any form other than Source
|
||||
Code.
|
||||
|
||||
1.5. “Initial Developer” means the individual or entity that first makes Original
|
||||
Software available under this License.
|
||||
|
||||
1.6. “Larger Work” means a work which combines Covered Software or portions
|
||||
thereof with code not governed by the terms of this License.
|
||||
|
||||
1.7. “License” means this document.
|
||||
|
||||
1.8. “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 the Source Code and Executable form of any of the
|
||||
following:
|
||||
|
||||
A. Any file that results from an addition to, deletion from or modification
|
||||
of the contents of a file containing Original Software or previous Modifications;
|
||||
|
||||
B. Any new file that contains any part of the Original Software or previous
|
||||
Modification; or
|
||||
|
||||
C. Any new file that is contributed or otherwise made available under the
|
||||
terms of this License.
|
||||
|
||||
1.10. “Original Software” means the Source Code and Executable form of computer
|
||||
software code that is originally released under this License.
|
||||
|
||||
1.11. “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.12. “Source Code” means (a) the common form of computer software code in
|
||||
which modifications are made and (b) associated documentation included in
|
||||
or with such code.
|
||||
|
||||
1.13. “You” (or “Your”) means an individual or a legal entity exercising rights
|
||||
under, and complying with all of the terms of, this License. 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. License Grants.
|
||||
|
||||
2.1. The Initial Developer Grant.
|
||||
Conditioned upon Your compliance with Section 3.1 below and subject to third
|
||||
party intellectual property claims, the Initial Developer hereby grants You
|
||||
a world-wide, royalty-free, non-exclusive license:
|
||||
|
||||
(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 Software (or portions thereof), with or without
|
||||
Modifications, and/or as part of a Larger Work; and
|
||||
|
||||
(b) under Patent Claims infringed by the making, using or selling of Original
|
||||
Software, to make, have made, use, practice, sell, and offer for sale, and/or
|
||||
otherwise dispose of the Original Software (or portions thereof).
|
||||
|
||||
(c) The licenses granted in Sections 2.1(a) and (b) are effective on the date
|
||||
Initial Developer first distributes or otherwise makes the Original Software
|
||||
available to a third party 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 Software, or (2) for infringements
|
||||
caused by: (i) the modification of the Original Software, or (ii) the combination
|
||||
of the Original Software with other software or devices.
|
||||
|
||||
2.2. Contributor Grant.
|
||||
Conditioned upon Your compliance with Section 3.1 below and 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 Software
|
||||
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 distributes or otherwise makes the Modifications available
|
||||
to a third party.
|
||||
|
||||
(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)
|
||||
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 (3) under Patent Claims infringed by Covered Software in the absence of
|
||||
Modifications made by that Contributor.
|
||||
|
||||
3. Distribution Obligations.
|
||||
|
||||
3.1. Availability of Source Code.
|
||||
Any Covered Software that You distribute or otherwise make available in Executable
|
||||
form must also be made available in Source Code form and that Source Code
|
||||
form must be distributed only under the terms of this License. You must include
|
||||
a copy of this License with every copy of the Source Code form of the Covered
|
||||
Software You distribute or otherwise make available. You must inform recipients
|
||||
of any such Covered Software in Executable form as to how they can obtain
|
||||
such Covered Software in Source Code form in a reasonable manner on or through
|
||||
a medium customarily used for software exchange.
|
||||
|
||||
3.2. Modifications.
|
||||
The Modifications that You create or to which You contribute are governed
|
||||
by the terms of this License. You represent that You believe Your Modifications
|
||||
are Your original creation(s) and/or You have sufficient rights to grant the
|
||||
rights conveyed by this License.
|
||||
|
||||
3.3. Required Notices.
|
||||
You must include a notice in each of Your Modifications that identifies You
|
||||
as the Contributor of the Modification. You may not remove or alter any copyright,
|
||||
patent or trademark notices contained within the Covered Software, or any
|
||||
notices of licensing or any descriptive text giving attribution to any Contributor
|
||||
or the Initial Developer.
|
||||
|
||||
3.4. Application of Additional Terms.
|
||||
You may not offer or impose any terms on any Covered Software in Source Code
|
||||
form that alters or restricts the applicable version of this License or the
|
||||
recipients’ rights hereunder. You may choose to offer, and to charge a fee
|
||||
for, warranty, support, indemnity or liability obligations to one or more
|
||||
recipients of Covered Software. 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 that 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.5. Distribution of Executable Versions.
|
||||
You may distribute the Executable form of the Covered Software under the terms
|
||||
of this License or under the terms of 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 form
|
||||
does not attempt to limit or alter the recipient’s rights in the Source Code
|
||||
form from the rights set forth in this License. If You distribute the Covered
|
||||
Software in Executable form 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 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.6. Larger Works.
|
||||
You may create a Larger Work by combining Covered Software 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 Software.
|
||||
|
||||
4. Versions of the License.
|
||||
|
||||
4.1. New Versions.
|
||||
Sun Microsystems, Inc. is the initial license steward and may publish revised
|
||||
and/or new versions of this License from time to time. Each version will be
|
||||
given a distinguishing version number. Except as provided in Section 4.3,
|
||||
no one other than the license steward has the right to modify this License.
|
||||
|
||||
4.2. Effect of New Versions.
|
||||
You may always continue to use, distribute or otherwise make the Covered Software
|
||||
available under the terms of the version of the License under which You originally
|
||||
received the Covered Software. If the Initial Developer includes a notice
|
||||
in the Original Software prohibiting it from being distributed or otherwise
|
||||
made available under any subsequent version of the License, You must distribute
|
||||
and make the Covered Software available under the terms of the version of
|
||||
the License under which You originally received the Covered Software. Otherwise,
|
||||
You may also choose to use, distribute or otherwise make the Covered Software
|
||||
available under the terms of any subsequent version of the License published
|
||||
by the license steward.
|
||||
|
||||
4.3. Modified Versions.
|
||||
When You are an Initial Developer and You want to create a new license for
|
||||
Your Original Software, You may create and use a modified version of this
|
||||
License if You: (a) rename the license and remove any references to the name
|
||||
of the license steward (except to note that the license differs from this
|
||||
License); and (b) otherwise make it clear that the license contains terms
|
||||
which differ from this License.
|
||||
|
||||
5. DISCLAIMER OF WARRANTY.
|
||||
|
||||
COVERED SOFTWARE 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 SOFTWARE 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 SOFTWARE IS WITH YOU. SHOULD ANY COVERED SOFTWARE
|
||||
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 SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
|
||||
|
||||
6. TERMINATION.
|
||||
|
||||
6.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. Provisions which, by their nature,
|
||||
must remain in effect beyond the termination of this License shall survive.
|
||||
|
||||
6.2. If You assert a patent infringement claim (excluding declaratory judgment
|
||||
actions) against Initial Developer or a Contributor (the Initial Developer
|
||||
or Contributor against whom You assert such claim is referred to as “Participant”)
|
||||
alleging that the Participant Software (meaning the Contributor Version where
|
||||
the Participant is a Contributor or the Original Software where the Participant
|
||||
is the Initial Developer) directly or indirectly infringes any patent, then
|
||||
any and all rights granted directly or indirectly to You by such Participant,
|
||||
the Initial Developer (if the Initial Developer is not the Participant) and
|
||||
all Contributors under Sections 2.1 and/or 2.2 of this License shall, upon
|
||||
60 days notice from Participant terminate prospectively and automatically
|
||||
at the expiration of such 60 day notice period, unless if within such 60 day
|
||||
period You withdraw Your claim with respect to the Participant Software against
|
||||
such Participant either unilaterally or pursuant to a written agreement with
|
||||
Participant.
|
||||
|
||||
6.3. In the event of termination under Sections 6.1 or 6.2 above, all end
|
||||
user licenses that have been validly granted by You or any distributor hereunder
|
||||
prior to termination (excluding licenses granted to You by any distributor)
|
||||
shall survive termination.
|
||||
|
||||
7. 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 SOFTWARE, 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 LOST PROFITS, 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.
|
||||
|
||||
8. U.S. GOVERNMENT END USERS.
|
||||
|
||||
The Covered Software is a “commercial item,” as that term is defined in 48
|
||||
C.F.R. 2.101 (Oct. 1995), consisting of “commercial computer software” (as
|
||||
that term is defined at 48 C.F.R. § 252.227-7014(a)(1)) 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 Software with only
|
||||
those rights set forth herein. This U.S. Government Rights clause is in lieu
|
||||
of, and supersedes, any other FAR, DFAR, or other clause or provision that
|
||||
addresses Government rights in computer software under this License.
|
||||
|
||||
9. 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 the law of the jurisdiction specified in a notice
|
||||
contained within the Original Software (except to the extent applicable law,
|
||||
if any, provides otherwise), excluding such jurisdiction’s conflict-of-law
|
||||
provisions. Any litigation relating to this License shall be subject to the
|
||||
jurisdiction of the courts located in the jurisdiction and venue specified
|
||||
in a notice contained within the Original Software, 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. You agree that
|
||||
You alone are responsible for compliance with the United States export administration
|
||||
regulations (and the export control laws and regulation of any other countries)
|
||||
when You use, distribute or otherwise make available any Covered Software.
|
||||
|
||||
10. 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.
|
15
README.rst
15
README.rst
|
@ -31,7 +31,7 @@ Without using Python:
|
|||
metal. (All of this *can* be automated, but not in a trustable way. See
|
||||
further below.)
|
||||
a. **chroot:** Create a directory where the chroot will reside, run
|
||||
``./download-distfiles.sh``, and copy:
|
||||
``./download-distfiles.sh``, and copy:
|
||||
* The entire contents of ``seed/stage0-posix`` into that directory.
|
||||
* All other files in ``seed`` into that directory.
|
||||
* ``steps/`` and ``distfiles/`` into that directory.
|
||||
|
@ -40,16 +40,17 @@ Without using Python:
|
|||
* Run ``/bootstrap-seeds/POSIX/x86/kaem-optional-seed`` in the chroot.
|
||||
(Eg, ``chroot rootfs /bootstrap-seeds/POSIX/x86/kaem-optional-seed``).
|
||||
b. **QEMU:** Create two blank disk images.
|
||||
* On the first image, write
|
||||
``seed/stage0-posix/bootstrap-seeds/NATIVE/x86/builder-hex0-x86-stage1.img``
|
||||
to it, followed by ``kernel-bootstrap/builder-hex0-x86-stage2.hex0``,
|
||||
followed by zeros padding the disk to the next sector.
|
||||
* Generate ``builder-hex0-x86-stage1.img`` from hex0 source:
|
||||
``sed 's/[;#].*$//g' builder-hex0/builder-hex0-x86-stage1-hex0 | xxd -r -p``
|
||||
* On the first image, write ``builder-hex0-x86-stage1.img`` to it, followed
|
||||
by ``kernel-bootstrap/builder-hex0-x86-stage2.hex0``, followed by zeros
|
||||
padding the disk to the next sector.
|
||||
* distfiles can be obtained using ``./download-distfiles.sh``.
|
||||
* See the list in part a. For every file within that list, write a line to
|
||||
the disk ``src <size-of-file> <path-to-file>``, followed by the contents
|
||||
of the file.
|
||||
* *Only* copy distfiles listed in ``steps/pre-network-sources`` into
|
||||
this disk.
|
||||
* *Only* copy distfiles listed in ``sources`` files for ``build:`` steps
|
||||
manifested before ``improve: get_network`` into this disk.
|
||||
* Optionally (if you don't do this, distfiles will be network downloaded):
|
||||
* On the second image, create an MSDOS partition table and one ext3
|
||||
partition.
|
||||
|
|
|
@ -0,0 +1,162 @@
|
|||
#!/usr/bin/env python3
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2024 fosslinux <fosslinux@aussies.space>
|
||||
|
||||
"""Check that substituted files are the same."""
|
||||
import bz2
|
||||
import filecmp
|
||||
import gzip
|
||||
import itertools
|
||||
import lzma
|
||||
import shutil
|
||||
import tarfile
|
||||
import tempfile
|
||||
import sys
|
||||
import os
|
||||
|
||||
from lib.generator import Generator
|
||||
|
||||
# Get a temporary directory to work in
|
||||
working = tempfile.mkdtemp()
|
||||
|
||||
# Colour constants
|
||||
# pylint: disable=too-few-public-methods
|
||||
class Colors():
|
||||
"""ANSI Color Codes"""
|
||||
GREY = "\033[90m"
|
||||
RED = "\033[91m"
|
||||
GREEN = "\033[92m"
|
||||
ORANGE = "\033[91m\033[93m"
|
||||
YELLOW = "\033[93m"
|
||||
END = "\033[0m"
|
||||
|
||||
def traverse_path(base_root):
|
||||
"""Takes a path and returns a set of all directories and files in that path."""
|
||||
all_dirs = set()
|
||||
all_files = set()
|
||||
for root, directories, files in os.walk(base_root, topdown=True):
|
||||
for d in directories:
|
||||
all_dirs.add(os.path.join(root, d).lstrip(base_root))
|
||||
for f in files:
|
||||
all_files.add(os.path.join(root, f).lstrip(base_root))
|
||||
return (all_dirs, all_files)
|
||||
|
||||
class Distfile():
|
||||
"""Represents one distfile and operations performed on it."""
|
||||
def __init__(self, i, url):
|
||||
self.i = i
|
||||
self.url = url
|
||||
self.out_file = f"{i}-{os.path.basename(url)}"
|
||||
self.filepath = ""
|
||||
|
||||
def download(self):
|
||||
"""Downloads the distfile."""
|
||||
Generator.download_file(self.url, working, self.out_file, silent=True)
|
||||
self.filepath = os.path.join(working, self.out_file)
|
||||
|
||||
def decompress(self):
|
||||
"""Decompresses the distfile."""
|
||||
compression = self.out_file.split('.')[-1]
|
||||
decompress_func = {
|
||||
"gz": gzip.open,
|
||||
"tgz": gzip.open,
|
||||
"bz2": bz2.open,
|
||||
"xz": lzma.open,
|
||||
"lzma": lzma.open
|
||||
}
|
||||
if compression not in decompress_func:
|
||||
# No decompression needed
|
||||
return
|
||||
# Remove the compression extension
|
||||
new_path = '.'.join(self.filepath.split('.')[:-1])
|
||||
# tgz -> .tar
|
||||
if compression == "tgz":
|
||||
new_path = f"{new_path}.tar"
|
||||
# Move the decompressed binary stream to a new file
|
||||
with decompress_func[compression](self.filepath, 'rb') as fin:
|
||||
with open(new_path, 'wb') as fout:
|
||||
shutil.copyfileobj(fin, fout)
|
||||
self.filepath = new_path
|
||||
|
||||
def extract(self):
|
||||
"""Extracts the distfile."""
|
||||
# Sanity check
|
||||
if not tarfile.is_tarfile(self.filepath):
|
||||
return
|
||||
out_dir = os.path.join(working, f"{self.i}")
|
||||
os.mkdir(out_dir)
|
||||
with tarfile.open(self.filepath, 'r') as f:
|
||||
f.extractall(path=out_dir)
|
||||
self.filepath = out_dir
|
||||
|
||||
# It makes more sense here to label them d1 and d2 rather than have one be self.
|
||||
# pylint: disable=no-self-argument
|
||||
def compare(d1, d2):
|
||||
"""Compares the distfile to another distfile."""
|
||||
if not os.path.isdir(d1.filepath):
|
||||
# Compare files
|
||||
return filecmp.cmp(d1.filepath, d2.filepath, shallow=False)
|
||||
if not os.path.isdir(d2.filepath):
|
||||
# Then, d2 is a file and d1 is a directory
|
||||
return False
|
||||
# Otherwise it's two directories
|
||||
dirnames1, filenames1 = traverse_path(d1.filepath)
|
||||
dirnames2, filenames2 = traverse_path(d2.filepath)
|
||||
if dirnames1 != dirnames2:
|
||||
return False
|
||||
if filenames1 != filenames2:
|
||||
return False
|
||||
return filecmp.cmpfiles(d1.filepath, d2.filepath, filenames1, shallow=False)
|
||||
|
||||
def check(*args):
|
||||
"""Check if a list of distfiles are equivalent."""
|
||||
notequiv = []
|
||||
# Find all pairs that are not equivalent
|
||||
for pair in itertools.combinations(args, 2):
|
||||
if pair[0].compare(pair[1]):
|
||||
print(f"{Colors.GREY}DEBUG: {pair[0].url} is equivalent to {pair[1].url}{Colors.END}")
|
||||
else:
|
||||
notequiv.append(pair)
|
||||
|
||||
# Decompress all, and check again
|
||||
for d in {y for x in notequiv for y in x}:
|
||||
d.decompress()
|
||||
for pair in notequiv.copy():
|
||||
if pair[0].compare(pair[1]):
|
||||
# pylint: disable=line-too-long
|
||||
print(f"{Colors.YELLOW}NOTE: {pair[0].url} is equivalent to {pair[1].url} when decompressed{Colors.END}")
|
||||
notequiv.remove(pair)
|
||||
|
||||
# Extract all, and check again
|
||||
for d in {y for x in notequiv for y in x}:
|
||||
d.extract()
|
||||
has_error = False
|
||||
for pair in notequiv:
|
||||
if pair[0].compare(pair[1]):
|
||||
# pylint: disable=line-too-long
|
||||
print(f"{Colors.ORANGE}WARN: {pair[0].url} is equivalent to {pair[1].url} when extracted{Colors.END}")
|
||||
else:
|
||||
has_error = True
|
||||
# pylint: disable=line-too-long
|
||||
print(f"{Colors.RED}ERROR: {pair[0].url} is not equivalent to {pair[1].url}!{Colors.END}")
|
||||
|
||||
return has_error
|
||||
|
||||
def main():
|
||||
"""Main function."""
|
||||
has_error = False
|
||||
with open("substitutes", 'r', encoding="utf-8") as f:
|
||||
for line in f.readlines():
|
||||
urls = line.strip().split(' ')
|
||||
distfiles = []
|
||||
for i, url in enumerate(urls):
|
||||
distfiles.append(Distfile(i, url))
|
||||
for distfile in distfiles:
|
||||
distfile.download()
|
||||
if check(*distfiles):
|
||||
has_error = True
|
||||
sys.exit(has_error)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
|
@ -15,8 +15,19 @@ download_source() {
|
|||
local dest_path="${distfiles}/${fname}"
|
||||
if ! [ -e "${dest_path}" ]; then
|
||||
echo "Downloading ${fname}"
|
||||
curl --fail --location "${url}" --output "${dest_path}"
|
||||
curl --fail --location "${url}" --output "${dest_path}" || true
|
||||
fi
|
||||
}
|
||||
|
||||
check_source() {
|
||||
local distfiles="${1}"
|
||||
local url="${2}"
|
||||
local checksum="${3}"
|
||||
local fname="${4}"
|
||||
# Default to basename of url if not given
|
||||
fname="${fname:-$(basename "${url}")}"
|
||||
|
||||
local dest_path="${distfiles}/${fname}"
|
||||
echo "${checksum} ${dest_path}" | sha256sum -c
|
||||
}
|
||||
|
||||
|
@ -25,6 +36,7 @@ set -e
|
|||
cd "$(dirname "$(readlink -f "$0")")"
|
||||
mkdir -p distfiles
|
||||
|
||||
# First, try to download anything missing - ignore failing mirrors
|
||||
for entry in steps/*; do
|
||||
[ -e "${entry}/sources" ] || continue
|
||||
|
||||
|
@ -35,3 +47,15 @@ for entry in steps/*; do
|
|||
download_source distfiles ${line}
|
||||
done < "${entry}/sources"
|
||||
done
|
||||
|
||||
# Then, check if everything has been obtained at least once
|
||||
for entry in steps/*; do
|
||||
[ -e "${entry}/sources" ] || continue
|
||||
|
||||
# shellcheck disable=SC2162
|
||||
while read line; do
|
||||
# This is intentional - we want to split out ${line} into separate arguments.
|
||||
# shellcheck disable=SC2086
|
||||
check_source distfiles ${line}
|
||||
done < "${entry}/sources"
|
||||
done
|
||||
|
|
|
@ -12,6 +12,7 @@ import hashlib
|
|||
import os
|
||||
import shutil
|
||||
import tarfile
|
||||
import traceback
|
||||
import requests
|
||||
|
||||
# pylint: disable=too-many-instance-attributes
|
||||
|
@ -274,7 +275,7 @@ When in doubt, try deleting the file in question -- it will be downloaded again
|
|||
this script the next time")
|
||||
|
||||
@staticmethod
|
||||
def download_file(url, directory, file_name):
|
||||
def download_file(url, directory, file_name, silent=False):
|
||||
"""
|
||||
Download a single source archive.
|
||||
"""
|
||||
|
@ -290,7 +291,8 @@ this script the next time")
|
|||
"User-Agent": "curl/7.88.1"
|
||||
}
|
||||
if not os.path.isfile(abs_file_name):
|
||||
print(f"Downloading: {file_name}")
|
||||
if not silent:
|
||||
print(f"Downloading: {file_name}")
|
||||
response = requests.get(url, allow_redirects=True, stream=True,
|
||||
headers=headers, timeout=20)
|
||||
if response.status_code == 200:
|
||||
|
@ -304,7 +306,12 @@ this script the next time")
|
|||
def get_packages(self):
|
||||
"""Prepare remaining sources"""
|
||||
for line in self.source_manifest:
|
||||
path = self.download_file(line[2], line[1], line[3])
|
||||
try:
|
||||
path = self.download_file(line[2], line[1], line[3])
|
||||
except requests.HTTPError:
|
||||
print(traceback.format_exc())
|
||||
for line in self.source_manifest:
|
||||
path = os.path.join(line[1], line[3])
|
||||
self.check_file(path, line[0])
|
||||
|
||||
@classmethod
|
||||
|
|
275
parts.rst
275
parts.rst
|
@ -4,6 +4,7 @@
|
|||
.. SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
|
||||
.. SPDX-FileCopyrightText: 2021-23 fosslinux <fosslinux@aussies.space>
|
||||
.. SPDX-FileCopyrightText: 2021 Melg Eight <public.melg8@gmail.com>
|
||||
.. SPDX-FileCopyrightText: 2024 Gábor Stefanik <netrolller.3d@gmail.com>
|
||||
|
||||
.. SPDX-License-Identifier: CC-BY-SA-4.0
|
||||
|
||||
|
@ -152,8 +153,9 @@ mescc-tools-extra
|
|||
utilities ``cp`` and ``chown``. This allows us to have one unified
|
||||
directory for our binaries. Furthermore, we also build ``sha256sum``, a
|
||||
checksumming tool, that we use to ensure reproducibility and authenticity
|
||||
of generated binaries. We also build initial ``untar``, ``ungz`` and ``unbz2``
|
||||
utilities to deal with compressed archives.
|
||||
of generated binaries. We also build initial ``untar``, ``ungz``, ``unxz``
|
||||
and ``unbz2`` utilities to deal with compressed archives, as well as
|
||||
``replace``, a trivial search-and-replace program.
|
||||
|
||||
live-bootstrap seed
|
||||
===================
|
||||
|
@ -179,8 +181,9 @@ The following directives are supported:
|
|||
* ``build``, builds a particular package defined in ``steps/``.
|
||||
* ``improve``, runs a script making a distinct and logical improvement to the
|
||||
live bootstrap system.
|
||||
* ``define``, define a variable evaluated from other constants/variables.
|
||||
* ``define``, defines a variable evaluated from other constants/variables.
|
||||
* ``jump``, moves into a new rootfs/kernel using a custom script.
|
||||
* ``uninstall``, removes a previously built package for file.
|
||||
|
||||
checksum-transcriber 1.0
|
||||
========================
|
||||
|
@ -196,7 +199,7 @@ simple-patch 1.0
|
|||
text block given to it, and replacing it with another text block. This is
|
||||
sufficient for the early patching required before we have full proper GNU patch.
|
||||
|
||||
mes 0.25
|
||||
mes 0.26
|
||||
========
|
||||
|
||||
GNU ``mes`` is a scheme interpreter. It runs the sister project ``mescc``,
|
||||
|
@ -209,6 +212,10 @@ to this part:
|
|||
2. We then use this to recompile the Mes interpreter as well as building
|
||||
the libc. This second interpreter is faster and less buggy.
|
||||
|
||||
The ``mescc`` component depends on the ``nyacc`` parsing library, version 1.00.2.
|
||||
We use a modified version, 1.00.2-lb1, which incorporates Timothy Sample's
|
||||
changes required to bootstrap ``mescc`` without relying on pregenerated files.
|
||||
|
||||
From this point until musl, we are capable of making non-standard and strange
|
||||
libraries. All libraries are in ``/usr/lib/mes``, and includes are in
|
||||
``/usr/include/mes``, as they are incompatible with musl.
|
||||
|
@ -243,13 +250,13 @@ using older versions compilable by tinycc. Prior to this point, all tools
|
|||
have been adapted significantly for the bootstrap; now, we will be using
|
||||
old tooling instead.
|
||||
|
||||
fiwix 1.4.0-lb1
|
||||
fiwix 1.5.0-lb1
|
||||
===============
|
||||
|
||||
If the kernel bootstrap option is enabled then the Fiwix kernel is built next.
|
||||
This is a Linux 2.0 clone which is much simpler to understand and build than
|
||||
Linux. This version of Fiwix is a fork of 1.4.0 that contains many
|
||||
modifications and enhancements to support live-boostrap.
|
||||
Linux. This version of Fiwix is an intermediate release on top of 1.5.0 that
|
||||
contains many modifications and enhancements to support live-boostrap.
|
||||
|
||||
lwext4 1.0.0-lb1
|
||||
================
|
||||
|
@ -266,20 +273,6 @@ kexec-fiwix
|
|||
If the kernel bootstrap option is enabled then a C program `kexec-fiwix` is compiled
|
||||
and run which places the Fiwix ram drive in memory and launches the Fiwix kernel.
|
||||
|
||||
esfu 1.0
|
||||
========
|
||||
|
||||
This is an extremely crippled basic implementation of ``mount`` and ``mknod``.
|
||||
Sufficient only for the next step.
|
||||
|
||||
early_mount_disk
|
||||
================
|
||||
|
||||
When using kernel bootstrap, distfiles from this point exist on an external
|
||||
disk. Using ``esfu``'s ``mount`` and ``mknod``, we are able to mount this disk.
|
||||
This is unnecessary when not using kernel bootstrap as everything is done on the
|
||||
disk.
|
||||
|
||||
make 3.82
|
||||
=========
|
||||
|
||||
|
@ -329,13 +322,15 @@ we skip them.
|
|||
|
||||
The ``cp`` in this stage replaces the ``mescc-tools-extra`` ``cp``.
|
||||
|
||||
heirloom devtools
|
||||
=================
|
||||
byacc 20240109
|
||||
==============
|
||||
|
||||
``lex`` and ``yacc`` from the Heirloom project. The Heirloom project is
|
||||
a collection of standard UNIX utilities derived from code by Caldera and
|
||||
Sun. Differently from the analogous utilities from the GNU project, they
|
||||
can be compiled with a simple ``Makefile``.
|
||||
The Berkeley Yacc parser generator, a public-domain implementation of the
|
||||
``yacc`` utility. Differently from the analogous ``bison`` utility from the
|
||||
GNU project, it can be compiled with a simple ``Makefile``.
|
||||
|
||||
Some code is backported from an earlier version of byacc, 20140101, because
|
||||
of an incompatibility of newer versions with meslibc.
|
||||
|
||||
bash 2.05b
|
||||
==========
|
||||
|
@ -346,7 +341,19 @@ kaem, including proper POSIX sh support, globbing, etc.
|
|||
|
||||
Bash ships with a bison pre-generated file here which we delete.
|
||||
Unfortunately, we have not bootstrapped bison but fortunately for us,
|
||||
heirloom yacc is able to cope here.
|
||||
Berkeley Yacc is able to cope here.
|
||||
|
||||
setup_repo
|
||||
==========
|
||||
|
||||
This is a simple script that sets up the ``/external/repo`` directory to hold
|
||||
binary tarballs of artifacts built in each step. It also creates ``base.tar.bz2``,
|
||||
a tarball containing every artifact built before ``setup_repo``, which have no
|
||||
individual repository tarballs corresponding to them.
|
||||
|
||||
From this point on, every package is built and installed into a temporary
|
||||
directory, packaged from there into a repository tarball, and then installed
|
||||
onto the live system from the newly built repository tarball.
|
||||
|
||||
update_env
|
||||
==========
|
||||
|
@ -354,17 +361,26 @@ update_env
|
|||
This is a simple script that makes some small updates to the env file that were
|
||||
not possible when using kaem.
|
||||
|
||||
flex 2.5.11
|
||||
===========
|
||||
merged_usr
|
||||
==========
|
||||
|
||||
``flex`` is a tool for generating lexers or scanners: programs that
|
||||
recognize lexical patterns.
|
||||
Sets up symlinks from folders outside the ``/usr`` hierarchy to the corresponding
|
||||
``/usr`` ones ("merged-usr" file system layout).
|
||||
|
||||
Unfortunately ``flex`` also depends on itself for compiling its own
|
||||
scanner, so first flex 2.5.11 is compiled, with its scanner definition
|
||||
manually modified so that it can be processed by lex from the Heirloom
|
||||
project (the required modifications are mostly syntactical, plus a few
|
||||
workarounds to avoid some flex advanced features).
|
||||
populate_device_nodes
|
||||
=====================
|
||||
|
||||
Sets up important device nodes under ``/dev``. These nodes are temporary, as once
|
||||
the Linux kernel is started, ``devtmpfs`` is used to maintain ``/dev``.
|
||||
|
||||
open_console
|
||||
============
|
||||
|
||||
In interactive mode only, sets up an interactive Bash console, accessible by
|
||||
pressing Ctrl+Alt+F2. Because the early Bash doesn't support true interactive
|
||||
operation, we emulate it using a REPL. A side effect of this is that after every
|
||||
command entered, one must press Enter followed by Ctrl+D, rather than just Enter
|
||||
as with a real interactive shell.
|
||||
|
||||
tcc 0.9.27 (patched)
|
||||
====================
|
||||
|
@ -424,6 +440,30 @@ m4 1.4.7
|
|||
flex 2.6.4 and bison. It allows macros to be defined and files to be
|
||||
generated from those macros.
|
||||
|
||||
heirloom devtools
|
||||
=================
|
||||
|
||||
``lex`` from the Heirloom project. The Heirloom project is a collection
|
||||
of standard UNIX utilities derived from code by Caldera and Sun.
|
||||
Differently from the analogous utilities from the GNU project, they can
|
||||
be compiled with a simple ``Makefile``.
|
||||
|
||||
Because issues with the Heirloom version of ``yacc`` compiled against musl,
|
||||
we continue using Berkeley Yacc together with Heirloom ``lex`` for the next
|
||||
few steps.
|
||||
|
||||
flex 2.5.11
|
||||
===========
|
||||
|
||||
``flex`` is a tool for generating lexers or scanners: programs that
|
||||
recognize lexical patterns.
|
||||
|
||||
Unfortunately ``flex`` also depends on itself for compiling its own
|
||||
scanner, so first flex 2.5.11 is compiled, with its scanner definition
|
||||
manually modified so that it can be processed by lex from the Heirloom
|
||||
project (the required modifications are mostly syntactical, plus a few
|
||||
workarounds to avoid some flex advanced features).
|
||||
|
||||
flex 2.6.4
|
||||
==========
|
||||
|
||||
|
@ -690,12 +730,19 @@ GCC can build the latest as of the time of writing musl version.
|
|||
We also don't need any of the TCC patches that we used before.
|
||||
To accomodate Fiwix, there are patches to avoid syscalls set_thread_area and clone.
|
||||
|
||||
Linux headers 5.10.41
|
||||
=====================
|
||||
Linux headers 4.14.341-openela
|
||||
==============================
|
||||
|
||||
This gets some headers out of the Linux kernel that are required to use the
|
||||
kernel ABI, needed for ``util-linux``.
|
||||
|
||||
The version of the Linux kernel used comes from the Open Enterprise Linux
|
||||
Association, who maintain this version as a continuation of the now ended
|
||||
4.14 LTS release, to the same maintenance standards as the LTS.
|
||||
Because this isn't directly available as an efficiently compressed tarball,
|
||||
we start with the final LTS release, version 4.14.336, and apply the
|
||||
differences using a patch file.
|
||||
|
||||
gcc 4.0.4
|
||||
=========
|
||||
|
||||
|
@ -708,14 +755,13 @@ util-linux 2.19.1
|
|||
This gives us access to a much less crippled version of ``mount`` and ``mknod``.
|
||||
The latest version is not used because of autotools/GCC incompatibilities.
|
||||
|
||||
move_disk
|
||||
=========
|
||||
dhcpcd 10.0.1
|
||||
=============
|
||||
|
||||
In ``kernel-bootstrap`` mode, we have been working off an initramfs for some
|
||||
things up until now. At this point we are now capable of moving to it entirely,
|
||||
so we do so.
|
||||
``dhcpcd`` is a DHCP client daemon, which we later use to obtain an IP address.
|
||||
Only wired interfaces are supported at the moment.
|
||||
|
||||
kbd-1.15
|
||||
kbd 1.15
|
||||
========
|
||||
|
||||
``kbd`` contains ``loadkeys`` which is required for building the Linux kernel.
|
||||
|
@ -755,40 +801,100 @@ kind of soft-restart. It is only built for non-chroot mode, as we only use it
|
|||
in non-chroot mode. It is used to boot the Linux kernel that will be built next
|
||||
from the current Linux kernel (when using ``--kernel``).
|
||||
|
||||
Linux kernel 4.9.10
|
||||
===================
|
||||
clean_sources
|
||||
=============
|
||||
|
||||
A script to remove source tarballs no longer needed for subsequent build steps from
|
||||
distfiles. This frees space for the Linux kernel build.
|
||||
|
||||
clean_artifacts
|
||||
===============
|
||||
|
||||
More space freeing in preparation for the kernel build. This time, we clear out any
|
||||
artifacts left over from previous builds that weren't packaged in a proper repository
|
||||
tarball or ``base.tar.bz2``
|
||||
|
||||
Linux kernel 4.14.341-openela
|
||||
=============================
|
||||
|
||||
A lot going on here. This is the first (and currently only) time the Linux kernel
|
||||
is built. Firstly, Linux kernel version 4.9.x is used because newer versions
|
||||
require much more stringent requirements on the make, GCC, binutils versions.
|
||||
However, the docs are also wrong, as the latest of the 4.9.x series does not
|
||||
work with our version of binutils. However, a much earlier 4.9.10 does
|
||||
(selected arbitrarily, could go newer but did not test), with a small amount
|
||||
of patching. This is also modern enough for most hardware and to cause few
|
||||
problems with software built afterwards. Secondly, the linux-libre scripts are used
|
||||
to deblob the kernel. Every other pregenerated file is appended with ``_shipped``
|
||||
is built. Firstly, Linux kernel version 4.14.y is used because newer versions
|
||||
require much more stringent requirements on the make and GCC versions. This is also
|
||||
modern enough for most hardware and to cause few problems with software built
|
||||
afterwards. Secondly, since 4.14.y is no longer supported by kernel.org, we use the
|
||||
last available kernel.org tarball, 4.14.336, and patch it up to 4.14.341-openela,
|
||||
maintained by the Open Enterprise Linux Association as an ELTS version.
|
||||
Pregenerated files in the kernel have file names appended with ``_shipped``
|
||||
so we use a ``find`` command to remove those, which are automatically regenerated.
|
||||
The kernel config was originally taken from Void Linux, and was then modified
|
||||
for the requirements of live-bootstrap, including compiler features, drivers,
|
||||
and removing modules. Modules are unused. They are difficult to transfer to
|
||||
subsequent systems, and we do not have ``modprobe``.
|
||||
|
||||
The linux-libre scripts are no longer used to deblob the kernel, due to undesirable
|
||||
modifications they make beyond just deblobbing. Instead, the remaining 4 drivers that
|
||||
ship binary blobs in line with source code are stripped using a patch - neither of
|
||||
these drivers are relevant to bootstrapping.
|
||||
|
||||
The kernel is built in 2 stages:
|
||||
|
||||
1. We build ``vmlinux`` and all of its dependencies.
|
||||
2. After clearing away any unnecessary intermediate files, we build the final
|
||||
``bzImage`` kernel. This is necessary because the whole build wouldn't fit
|
||||
in Fiwix's initrd image all at once.
|
||||
|
||||
We then kexec to use the new Linux kernel, using ``kexec-tools`` for a Linux
|
||||
kernel and ``kexec-linux`` for Fiwix.
|
||||
|
||||
move_disk
|
||||
=========
|
||||
|
||||
In ``kernel-bootstrap`` mode, we have been working off an initramfs for some
|
||||
things up until now. At this point we are now capable of moving to it entirely,
|
||||
so we do so.
|
||||
|
||||
finalize_job_count
|
||||
==================
|
||||
|
||||
In ``kernel-bootstrap`` mode, up until this point, we had no multiprocessor
|
||||
support, and very limited RAM, so all builds used only one thread.
|
||||
At this point, we allow the full selected thread count to take effect,
|
||||
speeding up subsequent builds thanks to parallelization.
|
||||
|
||||
finalize_fhs
|
||||
============
|
||||
|
||||
Sets up the file system as per the Filesystem Hierarchy Standard (FHS), creating
|
||||
directories and mounting pseudo-filesystems as necessary.
|
||||
|
||||
open_console
|
||||
============
|
||||
|
||||
In interactive mode only, sets up an interactive Bash console, accessible by
|
||||
pressing Ctrl+Alt+F2, again. This is still the early Bash, requiring Ctrl+D.
|
||||
|
||||
swap
|
||||
====
|
||||
|
||||
If enabled in ``bootstrap.cfg``, creates and activates a swap file under the
|
||||
name ``/swapfile``.
|
||||
|
||||
musl 1.2.4
|
||||
==========
|
||||
|
||||
At this point, it is guaranteed that we are running on Linux with thread support,
|
||||
so we rebuild musl with thread support.
|
||||
|
||||
curl 8.5.0
|
||||
==========
|
||||
curl 8.5.0 and get_network
|
||||
==========================
|
||||
|
||||
``curl`` is used to download files using various protocols including HTTP and HTTPS.
|
||||
However, this first build does not support encrypted HTTPS yet. ``curl`` requires
|
||||
Linux and musl with thread support, which are now available.
|
||||
|
||||
Once curl is built, we use dhcpcd to set up networking for downloading subsequent
|
||||
source packages.
|
||||
|
||||
bash 5.2.15
|
||||
===========
|
||||
|
||||
|
@ -797,6 +903,13 @@ and is built with GNU readline support so it can be used as a fully-featured
|
|||
interactive shell. ``autoconf-2.69`` is used to regenerate the configure
|
||||
script and ``bison`` is used to recreate some included generated files.
|
||||
|
||||
open_console
|
||||
============
|
||||
|
||||
Now that we have a proper interactive shell available, open another interactive
|
||||
console (only in interactive mode), this time accessible using Ctrl+Shift+F3, since
|
||||
Ctrl+Shift+F2 is already occupied by our previous console, running the old Bash.
|
||||
|
||||
xz 5.4.1
|
||||
========
|
||||
|
||||
|
@ -822,10 +935,10 @@ tar 1.34
|
|||
Newer tar has better support for decompressing .tar.bz2 and .tar.xz archives.
|
||||
It also deals better with modern tar archives with extra metadata.
|
||||
|
||||
coreutils 8.32
|
||||
coreutils 9.4
|
||||
==============
|
||||
|
||||
We build the latest available coreutils 8.32 which adds needed options to make
|
||||
We build the latest available coreutils 9.4 which adds needed options to make
|
||||
results of build metadata reproducible. For example, timestamps are changed with
|
||||
``touch --no-dereference``.
|
||||
|
||||
|
@ -883,7 +996,7 @@ bison 2.3
|
|||
|
||||
This is an older version of bison required for the bison files in perl 5.10.1.
|
||||
We backwards-bootstrap this from 3.4.1, using 3.4.1 to compile the bison files
|
||||
in 2.3. This parser works sufficiently well for perl 5.10.5.
|
||||
in 2.3. This parser works sufficiently well for perl 5.10.1.
|
||||
|
||||
bison 3.4.2
|
||||
===========
|
||||
|
@ -919,11 +1032,13 @@ libarchive 3.5.2
|
|||
|
||||
``libarchive`` is a C library used to read and write archives.
|
||||
|
||||
openssl 1.1.1l
|
||||
openssl 3.0.13
|
||||
==============
|
||||
|
||||
OpenSSL is a C library for secure communications/cryptography.
|
||||
|
||||
We do not use the latest 3.3.0 release because it causes lockups in curl.
|
||||
|
||||
curl 8.5.0
|
||||
==========
|
||||
|
||||
|
@ -975,7 +1090,7 @@ We also add in two patchsets to the compiler;
|
|||
* one to add support for musl shared library support
|
||||
* one providing a few compiler flags/features that are required later to build GCC 10
|
||||
|
||||
binutils 2.38
|
||||
binutils 2.41
|
||||
=============
|
||||
|
||||
This version of binutils provides a more comprehensive set of programming tools for
|
||||
|
@ -1179,8 +1294,8 @@ Differences to 3.8.16:
|
|||
* A new generated script ``Lib/re/_casefix.py`` is introduced.
|
||||
* The ssl module, now unbroken, can be built again.
|
||||
* Very recent Python versions allow for the use of ``SOURCE_DATE_EPOCH`` to
|
||||
remove determinism from precompiled Python libraries (``.pyc``). Finally, we
|
||||
can re-enable compiling of Python modules.
|
||||
make output of precompiled Python libraries (``.pyc``) deterministic.
|
||||
Finally, we can re-enable compiling of Python modules.
|
||||
|
||||
gcc 10.4.0
|
||||
==========
|
||||
|
@ -1190,14 +1305,14 @@ C/C++ standards available in GCC 4.7. Instead of manually configuring & compilin
|
|||
every subdirectory, since we now have ``autogen`` available we are able to use
|
||||
the top-level configure to build the project. We do not use GCC's bootstrap mode,
|
||||
where GCC is recompiled with itself after being built, since we're just going
|
||||
to use this GCC to compile GCC 12, it adds build time for little benefit.
|
||||
to use this GCC to compile GCC 13, it adds build time for little benefit.
|
||||
|
||||
binutils 2.38 (pass 2)
|
||||
binutils 2.41 (pass 2)
|
||||
======================
|
||||
|
||||
We recompile Binutils with the full intended autogen top-level build system,
|
||||
instead of the subdirectory build system used before. This creates a binutils
|
||||
that functions completely correctly for the build of GCC 12 (eg, fixes the
|
||||
that functions completely correctly for the build of GCC 13 (eg, fixes the
|
||||
mistaken plugin loading support). Other modern features are added, including;
|
||||
|
||||
* threaded linking
|
||||
|
@ -1281,3 +1396,29 @@ m4 1.4.19
|
|||
We are in need of a newer version of m4 for some modern software. Attempts to
|
||||
update m4 1.4.7 earlier in the bootstrap demonstrate some issues with Fiwix,
|
||||
so we build a newer m4 at the end of the bootstrap instead.
|
||||
|
||||
cleanup_filesystem
|
||||
==================
|
||||
|
||||
Remove any remaining loose build artifacts from ``steps``.
|
||||
If preseeding was used, this step also removes the ``repo-preseeded`` directory.
|
||||
|
||||
null_time
|
||||
=========
|
||||
|
||||
If FORCE_TIMESTAMPS is enabled, resets all file times in the file system to the
|
||||
Unix epoch, to ensure maximum file system reproducibility.
|
||||
|
||||
update_checksums
|
||||
================
|
||||
|
||||
If checksum updating is enabled, regenerates SHA256SUMS.pkgs to contain the actual
|
||||
hashes of the packages just built.
|
||||
|
||||
after
|
||||
=====
|
||||
|
||||
At the end of the bootstrap, executes any additional shell scripts placed in the
|
||||
``/steps/after`` directory (if it exists), opens an interactive console (only in
|
||||
interactive mode), and finally ensures a clean shutdown of the bootstrap system
|
||||
(only needed in qemu and on bare metal).
|
||||
|
|
21
rootfs.py
21
rootfs.py
|
@ -38,7 +38,7 @@ def create_configuration_file(args):
|
|||
config.write(f"FINAL_JOBS={args.cores}\n")
|
||||
config.write(f"INTERNAL_CI={args.internal_ci or False}\n")
|
||||
config.write(f"INTERACTIVE={args.interactive}\n")
|
||||
config.write(f"BARE_METAL={args.bare_metal}\n")
|
||||
config.write(f"BARE_METAL={args.bare_metal or (args.qemu and args.interactive)}\n")
|
||||
if (args.bare_metal or args.qemu) and not args.kernel:
|
||||
if args.repo or args.external_sources:
|
||||
config.write("DISK=sdb1\n")
|
||||
|
@ -254,7 +254,6 @@ print(shutil.which('chroot'))
|
|||
'-enable-kvm',
|
||||
'-m', str(args.qemu_ram) + 'M',
|
||||
'-smp', str(args.cores),
|
||||
'-no-reboot',
|
||||
'-drive', 'file=' + target.get_disk("disk") + ',format=raw'
|
||||
]
|
||||
if target.get_disk("external") is not None:
|
||||
|
@ -264,17 +263,20 @@ print(shutil.which('chroot'))
|
|||
arg_list += [
|
||||
'-nic', 'user,ipv6=off,model=e1000',
|
||||
'-kernel', args.kernel,
|
||||
'-nographic',
|
||||
'-append', 'console=ttyS0 root=/dev/sda1 rootfstype=ext3 init=/init rw'
|
||||
'-append',
|
||||
]
|
||||
run(args.qemu_cmd, *arg_list)
|
||||
if args.interactive:
|
||||
arg_list += ['consoleblank=0 earlyprintk=vga root=/dev/sda1 '
|
||||
'rootfstype=ext3 init=/init rw']
|
||||
else:
|
||||
arg_list += ['console=ttyS0 earlycon=uart8250,io,0x3f8,115200n8 '
|
||||
'root=/dev/sda1 rootfstype=ext3 init=/init rw']
|
||||
else:
|
||||
generator.prepare(target, kernel_bootstrap=True, target_size=size)
|
||||
arg_list = [
|
||||
'-enable-kvm',
|
||||
'-m', str(args.qemu_ram) + 'M',
|
||||
'-smp', str(args.cores),
|
||||
'-no-reboot',
|
||||
'-drive', 'file=' + generator.target_dir + '.img' + ',format=raw'
|
||||
]
|
||||
if target.get_disk("external") is not None:
|
||||
|
@ -283,10 +285,11 @@ print(shutil.which('chroot'))
|
|||
]
|
||||
arg_list += [
|
||||
'-machine', 'kernel-irqchip=split',
|
||||
'-nic', 'user,ipv6=off,model=e1000',
|
||||
'-nographic'
|
||||
'-nic', 'user,ipv6=off,model=e1000'
|
||||
]
|
||||
run(args.qemu_cmd, *arg_list)
|
||||
if not args.interactive:
|
||||
arg_list += ['-no-reboot', '-nographic']
|
||||
run(args.qemu_cmd, *arg_list)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
|
@ -11,5 +11,5 @@ set -ex
|
|||
|
||||
PATH=/${ARCH_DIR}/bin
|
||||
|
||||
catm seed-full.kaem /steps/env seed.kaem
|
||||
catm seed-full.kaem /steps/bootstrap.cfg /steps/env seed.kaem
|
||||
kaem --file seed-full.kaem
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
1927a357c893d60952616146e788af25e637635b2862650914bf895d27f556a6 script-generator
|
|
@ -0,0 +1 @@
|
|||
1aa31b29ce0999b6a9cace93bc584020ec78059b9ad37d9aa3da9ad6c3d9af59 script-generator
|
|
@ -0,0 +1 @@
|
|||
dc6106dbc02839cdc9e3e2348432242eb6d33d840ab74badfd63c3c9997462b9 script-generator
|
|
@ -60,10 +60,16 @@ M2LIBC_PATH=/M2libc
|
|||
|
||||
# mes envars
|
||||
NYACC_PKG=nyacc-1.00.2
|
||||
MES_PKG=mes-0.25
|
||||
MES_PKG=mes-0.26
|
||||
MES_PREFIX=${SRCDIR}/${MES_PKG}/build/${MES_PKG}
|
||||
GUILE_LOAD_PATH=${MES_PREFIX}/mes/module:${MES_PREFIX}/module:${SRCDIR}/${MES_PKG}/build/${NYACC_PKG}/module
|
||||
|
||||
M2-Mesoplanet --architecture ${ARCH} -f script-generator.c -o script-generator
|
||||
# Checksums
|
||||
if match x${UPDATE_CHECKSUMS} xTrue; then
|
||||
sha256sum -o script-generator.${ARCH}.checksums script-generator
|
||||
else
|
||||
sha256sum -c script-generator.${ARCH}.checksums
|
||||
fi
|
||||
./script-generator /steps/manifest
|
||||
kaem --file /steps/0.sh
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 63fd7767db0651b703b8942cfc0c92989a3e4b25
|
||||
Subproject commit 779e5424d4b55fe9b7faea2285ae8b6486df0433
|
|
@ -22,33 +22,33 @@ ef08694bf8e78ffcf56f9c8a63b0f189e301c06f02ab240e15e4c7fe354c2a0d automake-1.7_0
|
|||
c5807850a377e4bb9aa4121d9781d145bdd80327626a9419630a75ce2c8d9c71 automake-1.9.6_0.tar.bz2
|
||||
f8a55bf656f950ee3c5cea48af03f552166f6db9926b78c78843f3cc52a6e22d bash-5.2.15_0.tar.bz2
|
||||
ebc631ee8e9382650005984ec5f3910492ccb6fb2656b4c0af0f4afc16998906 bc-1.07.1_0.tar.bz2
|
||||
b21f77069ca847268c115b7305da5927acebc59d89e9cd82d8ac416c126f3f0b binutils-2.30_0.tar.bz2
|
||||
90009c7a2232fce68ad628d6afe1f474d57874462b3ea2c50ab1a3e6c60a5a36 binutils-2.30_0.tar.bz2
|
||||
da658346866061324b92a6b734561257acfdb981783ad5794d67a0cd56e14e58 binutils-2.41_0.tar.bz2
|
||||
026447a32ab08a8a5150bab82a2f150af4a2ed90c47cfde631e1460eaed019aa binutils-2.41_1.tar.bz2
|
||||
f0bb18831983493b82fde53917e8d16c6a380761ac5e71e14769a82193fee788 bison-2.3_0.tar.bz2
|
||||
76cb8b9752d82afa28789ccd5dcb9fd7ee44b605c2fd0fd5800e88c75f77593e bison-3.4.1_0.tar.bz2
|
||||
485d20ada934b700460404ceef934788c6e0bd3e3c7be0ac4e8f337909a9e3d9 bison-3.4.1_1.tar.bz2
|
||||
fcaab66694e70e8780b96e2d0dfd3c913427a741b494f820b595eb9617460e3e bison-3.4.1_2.tar.bz2
|
||||
e4a3c9466d95c58bb072159da3473d71b40eb069b756acefba293588c4495a6f bison-3.4.1_0.tar.bz2
|
||||
fd3a3b855c3cbc42d719a0cbbae773d27e0e12b563641124ba2870b7103da1f8 bison-3.4.1_1.tar.bz2
|
||||
5232f6f8f3864b5827a015ce0414d484bb8aeb9f34ba66ceb7093da0a79561a8 bison-3.4.1_2.tar.bz2
|
||||
6d5e4debdec03aee096dbcefcad878fb5c6a069f895ee7ade878d9eeb97fb83e bison-3.4.2_0.tar.bz2
|
||||
ca7403a7503e8f3bb55e6c5bd54571b8c061b11c96e50ee89e006df6011d1518 bzip2-1.0.8_0.tar.bz2
|
||||
727b0f28369b78f171dce4e227b05cea474dcb638c357387429c125f0d80fbc8 bzip2-1.0.8_0.tar.bz2
|
||||
543214998317d764595d3dd247a1fb2e0803ad77978b8474bd24d64c161b9530 ca-certificates-3.95_0.tar.bz2
|
||||
7450bb38caaa633f8c11269fed44eb680c6ba03bb0e19c18fce3b2450f80e358 coreutils-5.0_0.tar.bz2
|
||||
c95fd8c51c3bfbd4d08a4a50d0033ee85394e6efe4ff82703c050e4dbc4347bf coreutils-6.10_0.tar.bz2
|
||||
da3a3c7e0e6ce94ccb3d39885bc44207eb94c912b324a4c7669b5a752648b02d coreutils-5.0_0.tar.bz2
|
||||
56b84ab2035847524d595bb417c2b91c290174965550be321cd3d5d1f77aa2e5 coreutils-6.10_0.tar.bz2
|
||||
9fa31a4aeaa5132205efb796c8f546c94c1cfef6b5c27e64f6ebe06ca0360e67 coreutils-9.4_0.tar.bz2
|
||||
abd629e5675196c39dae00afbe23e2116bbd277be1d82214e2ec557a3b03994f curl-8.5.0_0.tar.bz2
|
||||
a4473a15de63a1d8ed0a9344f81b3926ce2b1324e48c2574b0042a91384aa5c7 curl-8.5.0_1.tar.bz2
|
||||
db8757b5fe77f56073caa034bfe9b3af6076d7299db966c4348e06f01a34415f curl-8.5.0_1.tar.bz2
|
||||
9534d834b018343b8335d0ef0b5faff3ee18e4ecbecf43a2a80deb972283f5d6 dhcpcd-10.0.1_0.tar.bz2
|
||||
abb9f6fe46c57ea809100b71497e04905deaad345d64485532bf6ef7f2a07f2c diffutils-2.7_0.tar.bz2
|
||||
e6372051f90c40d1f4a5cca2f8930187b363dfc916bcb973c72bca6c0aba3cd5 diffutils-2.7_0.tar.bz2
|
||||
41e3129b974391fe4ace69914fdef9b0fe72c6f5d87d495750fb89bdd999fa01 diffutils-3.10_0.tar.bz2
|
||||
bda6afcd3a390a34a57443269a4857ccc470129f7a557981778c145fd841cbd1 dist-3.5-236_0.tar.bz2
|
||||
26c0835a8b9be115082a2866e906363947528169c7274bd3b82752df77e99f11 e2fsprogs-1.45.7_0.tar.bz2
|
||||
9c6f7e156f299f1d0948537e28f00d40e727a3debae3cce158e9bce827136214 ed-1.4_0.tar.bz2
|
||||
0061d240f9bb2bb534db7003ddcc4eae9981954ad72e8f41ff1d76dc449ebd37 file-5.44_0.tar.bz2
|
||||
eec07e0d710ed3dd8d0ba6a1ec6ca9f1fa3a611bbb225195435679175317bf90 findutils-4.2.33_0.tar.bz2
|
||||
41902ec0383ea977a8d008dee37150e022e0714cd99f54c37f29c153464b758a flex-2.5.11_0.tar.bz2
|
||||
80798628ccb38521f42e1ca1abe4f0244e4b283e6f662cd354ab70e61a9b4675 flex-2.5.11_0.tar.bz2
|
||||
b3a8d59229289ca5a1de6a24c9c828d2847144f6662e0d5b7f41e7ff6e57abaa flex-2.5.33_0.tar.bz2
|
||||
57f72a4d1cb89dc1e59af0228fddc0ea97a3588984114f702f142c82aeeef493 flex-2.6.4_0.tar.bz2
|
||||
f0f1471e4a5ff95749bd655c145311cc03eec80525f2bb0b9b3ac3ff8be29e0b gawk-3.0.4_0.tar.bz2
|
||||
e10060b55e2378a065cf8590cae17400c8befc6b3bb0cbbb7093f1b9f46ec4cc flex-2.6.4_0.tar.bz2
|
||||
5619cf9a893902491a9d8a8f8da4d39efb3606d7d0a72cb4aaa9d1ff798b5495 gawk-3.0.4_0.tar.bz2
|
||||
62e90abe883f6ccd679adf42d00c2c18a9809bbab599411c81b6c4ac4d446452 gawk-5.3.0_0.tar.bz2
|
||||
6de1c1380026ef9948387e665610185b6014f47a80453177a6c81898c95cbbd3 gc-8.0.4_0.tar.bz2
|
||||
c99d080cf17ac3f75cbae67095cb76220a92d96d877c92c896a7f05c9c94e92d gcc-10.4.0_0.tar.bz2
|
||||
|
@ -59,11 +59,12 @@ c1bf792e90df13bf7a24d3f8ce3939fd96ff61b8117e4dcef75605974f3fcf25 gcc-4.0.4_1.ta
|
|||
dc67fc1b132fa3945349efe74c5b2197bd0b6babf4d29d2deddd04f09d9af680 gettext-0.21_0.tar.bz2
|
||||
309282ba840f80b5e10897b1221f3ff3329b9e05b982c788d03652f411974524 gmp-6.2.1_0.tar.bz2
|
||||
62edfa633f64202b2d29199d11d56a897654a441c7ae39a4d59ca5fe75199f61 gperf-3.1_0.tar.bz2
|
||||
276e073496931ff7d4caaabb53079412b88de953def88aec966c1f8506293e88 grep-2.4_0.tar.bz2
|
||||
c1989fc2855dbb0350c4e5b677028306614a9f4b5cb6c01fd459c5e1abf592b9 grep-2.4_0.tar.bz2
|
||||
8e612afb9a439aa8bf5db0fc2589eec890a6017690412d5c8e88a5838730b42c grep-3.7_0.tar.bz2
|
||||
8035da0f42b40509a1f68c91164f20fec624cf8b61017aa4e135473e547dddf4 grub-2.06_0.tar.bz2
|
||||
ed16ffe92f50bca0dac71145adc07c08043837457dee46bb3a5f5d0a6dc99221 grub-2.06_0.tar.bz2
|
||||
e2a85aad6d51e52c9a30afeed058f95172fde1215f77243549274672990f6237 guile-3.0.9_0.tar.bz2
|
||||
6585ae3bc8149ec0e3fba766278fa30e2d7f0e7d1b9a9a4a457e0afa15b109c9 gzip-1.13_0.tar.bz2
|
||||
29a1603101cfbe2660e2d695f5b9c08dc9eefd8e3389405a6530c479e271821b heirloom-devtools-070527_0.tar.bz2
|
||||
8d2015b87337abbf287f7a39ee4cf53514120b5d3e90a93fe7d533dcc43f14fa help2man-1.36.4_0.tar.bz2
|
||||
ea5639dc6198c5f243362a1a7adfbea0cb779e085975712a1b410e82d7e0cf84 kbd-1.15_0.tar.bz2
|
||||
50a0f881161c68fe7c9ec6836b11a905b0d54e08e99b2476e8d1f5ac3212769e kexec-linux-1.0.0_0.tar.bz2
|
||||
|
@ -76,49 +77,49 @@ b39826742e236890f3562cdf19492e7ef4224b271f3e75ddeab1f07982b03ebe libffi-3.3_0.t
|
|||
daae709e98d2df2190d1d13b4e86f7f3fe90fa7a975282fe0bb03289b6539f29 libtool-2.2.4_0.tar.bz2
|
||||
6cefa575362149620f8008a32c8af54f0198a18bc6ab910bd3cead196c1507d7 libtool-2.4.7_0.tar.bz2
|
||||
503007bbcddcf4e49d26514c59b4c9501f8b42f0c994a59dfdc388b1ae6b7900 libunistring-0.9.10_0.tar.bz2
|
||||
05a99e5404bc743570abf514d09a89a719d9443e0e6f196ce92c47a2be774a8a linux-4.14.336_0.tar.bz2
|
||||
1d88015de1be5416d4794559962c1c700d72b877cc0ce2a47b28b078d11b2075 linux-headers-4.14.336_0.tar.bz2
|
||||
5787f84a49e1d22560d0398e4f9075d6021017eb2a757697dc2877e7565d0199 linux-4.14.341-openela_0.tar.bz2
|
||||
c97644d0db5b3de127b048683afee6d31453441d97ba5dea71df5838b13542a4 linux-headers-4.14.341-openela_0.tar.bz2
|
||||
78b0cf6d9312e53c613186cbddd5f747310f375c1f322f33a6ac33682d2f3389 m4-1.4.19_0.tar.bz2
|
||||
bd3885a389d3e058081e099850f95aa7938ce1d9b88a187aea6b7196124fbcfe m4-1.4.7_0.tar.bz2
|
||||
0e3c21b0a1d8ca0c3f74a98ebe268809def62778ff4a486ff20c1d6e8247dc49 m4-1.4.7_0.tar.bz2
|
||||
e69554b0a77b419ddd5d0a0e418ba4005ecd0f6784c92a6928a0270bd929a098 make-3.82_0.tar.bz2
|
||||
6d24960d6a987f68a7e0e3abf6edb52d2e0fe4c86f6ba45327e9634dbf7d40b4 make-4.2.1_0.tar.bz2
|
||||
17cd976bc0f6e897c6fffe43dd7c55d93ce0adadf1b4dc72925b80e2d266519f mpc-1.2.1_0.tar.bz2
|
||||
98a9f55c01ed375fae21913284e7fa07ff434c0810f34d791f3fbaa1df221302 mpfr-4.1.0_0.tar.bz2
|
||||
3561678ad3b8ed5a085cdd86baefb18a675c3cecca8e6e8e086b17007e918370 musl-1.1.24_0.tar.bz2
|
||||
40a35b525f21dce1007e17a3557677d49477df753e715579c37438d5581b0dcd musl-1.1.24_1.tar.bz2
|
||||
40fc3497fa8cdd96ac338a10e78504c6dc942e7f4fa459550fb953d52bd53aa7 musl-1.1.24_0.tar.bz2
|
||||
20285055d84ac6106965a9d343ba8ebd19209f62782efb8ed863318c0b7d5e7d musl-1.1.24_1.tar.bz2
|
||||
d58d85c4be26d90f111f273929a4998d05294fe5aa37c4842d5aecaa593e6079 musl-1.1.24_2.tar.bz2
|
||||
81f79a0faf58e105c5f12d9f538d3ea7578a3b361e633ab8f47324ec23ec9de6 musl-1.2.4_0.tar.bz2
|
||||
6dc5e763b747b66f72692c6820d7f46b7f4cf2e2fe05229a1d01c03919c1c936 musl-1.2.4_1.tar.bz2
|
||||
820203286127e7c22cee9f1b3cff664431f10d14c3f22f00b3e771fd849fd449 musl-1.2.4_2.tar.bz2
|
||||
a18c4b2e5de2bfe5bb3ee9d360484fcfebad3df042f1859d4aa333dd60f55e56 opendoas-6.8.2_0.tar.bz2
|
||||
b1acdc394c2dd42f01046480db07da6b0393bf76b198abf099c4877e5e3b869e openssl-1.1.1l_0.tar.bz2
|
||||
67b536b2f2a6c56e4673e462a3dbe2f42e8a4a5cb0b61b6bc1fdc14adea33f63 openssl-3.0.13_0.tar.bz2
|
||||
71864d042cdc564b65eab21360902c714e9b43f80a19689c5600589529b267e7 patch-2.7.6_0.tar.bz2
|
||||
5ae7fe43d62d1064c123d9813017015e5e8d5107d0e70f0199576141416ff81d perl-5.000_0.tar.bz2
|
||||
4994c55e3832649600f190079bd4779c463478a092b167098b1d00eff3358fbe perl-5.003_0.tar.bz2
|
||||
287b0a8c0de14a2817e68ab023bfc502a0880d8c34386162351d5ffaf942da70 perl-5.000_0.tar.bz2
|
||||
9617799cdc9d4be39d31af54b9bcae47941d68416e9cc9c92cbc2ed08785dbc1 perl-5.003_0.tar.bz2
|
||||
74d64a8af080022432fa94dba449090419d25b103d247710dc0b6102a4ad86a6 perl-5.10.1_0.tar.bz2
|
||||
c6c3d729cf36b820f9a671130b84c83fd384f38f639be63804e90c3a1f21d3ab perl-5.32.1_0.tar.bz2
|
||||
101a791b6843b997ec10d5ce6dc32af2637f687772674eb6f1cdc1c8ff836a03 perl-5.6.2_0.tar.bz2
|
||||
ae6c84e55c2d9bcd7b80bf780ae6921fe890608123c9ba904e1b7d90759ade3d perl5.004-05_0.tar.bz2
|
||||
8cedd2240bbbd5bca65a1362998ed73884756aa7ff5208226d3fa22c68868052 perl5.005-03_0.tar.bz2
|
||||
d381e910532061ac97e48ff09906bddbcb0956b37fc47d8c666f56a56b50c589 perl-5.32.1_0.tar.bz2
|
||||
d63d2fda752759778ae2d0dd08e6c023a81afbfc63ce11db860fc6858ae26c7f perl-5.6.2_0.tar.bz2
|
||||
c39ab70bce0bd09f013109ad7370085e90d77ef2b55abcfdc922d7832524c9cf perl5.004-05_0.tar.bz2
|
||||
2ac211ad3cf966dd89434c175970e10699c363b66228abc1642766aeafe2766a perl5.005-03_0.tar.bz2
|
||||
1b9d4260edf7b2241d10e4c4ad17d0f90047bd4bf42f2487a7133902529e9dfe pkg-config-0.29.2_0.tar.bz2
|
||||
2f7198009e4d021d52ee4ce86241b4936fb88349c20cc8b6c286261368878c3c python-2.0.1_0.tar.bz2
|
||||
b5d86ddc98cfbc684b03f1c84c786caaad810d5e4c7be38089f324eb3c276ad9 python-2.0.1_1.tar.bz2
|
||||
396577cdd0cc61d76420a1771c64156e49e8f9d00430c82feb88ad933b341632 python-2.3.7_0.tar.bz2
|
||||
2499cb7f10f292c3506fbf1b6a876195179ec98edfe7b8c357140137a1449492 python-2.3.7_1.tar.bz2
|
||||
2dd06364e281da421a16251fa2258df201efd180461718f5a000012c4b2bdfe5 python-2.5.6_0.tar.bz2
|
||||
80d8fcaf68c82238ddffb120b62fbc20d58bd9e2416cba080547a9f442e9e229 python-2.5.6_0.tar.bz2
|
||||
3508248f299b73c50e3607c4c294d40face05170476a5026b0821aed69025863 python-3.1.5_0.tar.bz2
|
||||
12b1ffc7ec98ba8f807160b93ba69a694d5395567c3bcac1e49e8f8d1d50de43 python-3.1.5_1.tar.bz2
|
||||
fde3a6af334434b35a8db0711d33c21a96762d09ff912e19638efbdf2dc363c5 python-3.11.1_0.tar.bz2
|
||||
d6a7d3a109f63cd5ed4feaa772c33e272e570e216346ee90f6ca365d3a951615 python-3.11.1_0.tar.bz2
|
||||
60b93253a2078f849f81e7e1ed6233e30702f03b1893640eee95671d814f5514 python-3.3.7_0.tar.bz2
|
||||
da7c8ec579dd225c0d8bee63d95aeeb27ac2d5a60d4eefe298508cbf86bf506c python-3.4.10_0.tar.bz2
|
||||
4c5c08b237d1c8cfe91d6b8f36d1942bf1e8f114894a228b5969c810ea52b8c3 python-3.8.16_0.tar.bz2
|
||||
34c51d3df85585a8aee7691b3500a5c3c7442b06a6f57231b76970bdd6e99bf9 sed-4.0.9_0.tar.bz2
|
||||
af7a8334045fed8bd610b19194c0b46aa670070fc4738c34449ba5e93e49db8a python-3.8.16_0.tar.bz2
|
||||
c313520567176dd9bf61a271ee56e06a62e944e862f9dc4564d94b7fc884c8f9 sed-4.0.9_0.tar.bz2
|
||||
e8daec00b2c2de7b18efbec057dc9290eed06668806c6f5a48914d4a5cd95eb4 sed-4.8_0.tar.bz2
|
||||
ef2f2c791c1ae74f19c98ebcd7edae6ae28bc1d9367cc3a2cdb1ac302a156cb7 shadow-4.14.3_0.tar.bz2
|
||||
912d8f344104f1322255d6210c7c7e1371413ab530b2c6796e6aa565c74bf647 tar-1.34_0.tar.bz2
|
||||
1667937d5d646f2bb7ec7ab54a23ddd65a0ae3ca7d5e597f3fbcd5163031d2ef tcc-0.9.27_0.tar.bz2
|
||||
b20cea098c8ff635a0ce9f99430d7c9a75d081194941ab54dc92dbc8af3776a4 tcc-0.9.27_1.tar.bz2
|
||||
8e8cc802fccdb907cd74501dccce1ee85ffb0150b33b4719f86d6720f5b09a7a tcc-0.9.27_2.tar.bz2
|
||||
60e98c09d9135b0150ed52b71cfbb072335741c0954a9b14bbba850c20564036 tcc-0.9.27_0.tar.bz2
|
||||
e2c9ea82a1ebf2d5d4c937fa837ddb6fc6835395cf03f3207df40c96b6cafcd8 tcc-0.9.27_1.tar.bz2
|
||||
4860223e6960ce976e6ad59aa90b69c18a1473684bce59ec8a8b36535405792b tcc-0.9.27_2.tar.bz2
|
||||
d4fe9460ca561fc2f546f9730f19f541b17dac0bcc42eb190abba856588c3593 tcc-0.9.27_3.tar.bz2
|
||||
50ebaa1d8fcc4a03a43d431eb71e2f435cc8712ae47d400564df3716037d553a texinfo-6.7_0.tar.bz2
|
||||
59bda6faaa95782154b917a6600cdf932e08cd6bf9388ba40d801baf18e5b454 util-linux-2.19.1_0.tar.bz2
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
https://github.com/schierlm/gnu-autogen-bootstrapping/archive/refs/tags/autogen-5.18.16-v1.0.1.tar.gz 953ba180b18acff188a0a8700770c7cf2fc97e1683c7b9699a5a748b542ccdd5
|
||||
https://mirrors.kernel.org/gnu/autogen/rel5.18.16/autogen-5.18.16.tar.xz f8a13466b48faa3ba99fe17a069e71c9ab006d9b1cfabe699f8c60a47d5bb49a
|
||||
https://git.savannah.gnu.org/cgit/autogen.git/snapshot/autogen-5.18.16.tar.gz 0c04ab2f7ce13c4a1c06c4abc7dfe75312aad89b8b0a1068e5e563787eb56632
|
||||
https://files.bootstrapping.world/autogen-5.18.16.tar.gz 0c04ab2f7ce13c4a1c06c4abc7dfe75312aad89b8b0a1068e5e563787eb56632
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-8f4538a5.tar.gz e207c0bb72093c3a72dde302fcfaa1dbda12a62172d47b73565883a92209ebab
|
||||
https://files.bootstrapping.world/gnulib-8f4538a5.tar.gz e207c0bb72093c3a72dde302fcfaa1dbda12a62172d47b73565883a92209ebab
|
||||
|
|
|
@ -1 +1 @@
|
|||
dd42ffbc30919b13693cbd58536599907d057dc58aabde2b2b1e36ec0475e694 /usr/bin/bash
|
||||
467552a7875bae2086ba0fa9a8d2a253a158984e27b2e89acf2e3bcec539ad54 /usr/bin/bash
|
||||
|
|
|
@ -49,6 +49,7 @@ COMMON_CFLAGS = \
|
|||
-DHAVE_BZERO \
|
||||
-DHAVE_POSIX_SIGNALS \
|
||||
-DHAVE_GETCWD \
|
||||
-DHAVE_RENAME \
|
||||
-DHAVE_SYS_SIGLIST \
|
||||
-Dendpwent\(x\)=0 \
|
||||
-Denable_hostname_completion\(on_or_off\)=0
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
http://mirrors.kernel.org/gnu/bison/bison-2.3.tar.bz2 b10d7e9e354be72aee4e4911cf19dd27b5c527d4e7200857365b5fcdeea0dffb
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-b28236b.tar.gz 0190f28cb155fedd22bf8558c3e8705eed9eacfb7ae29e7508d025a68eb90899
|
||||
https://files.bootstrapping.world/gnulib-b28236b.tar.gz 0190f28cb155fedd22bf8558c3e8705eed9eacfb7ae29e7508d025a68eb90899
|
||||
|
|
|
@ -15,7 +15,7 @@ bison: src.a lib.a
|
|||
%.a: FORCE
|
||||
set -e ;\
|
||||
DIR=$(basename $@ .a) ;\
|
||||
$(MAKE) CC=$(CC) AR=$(AR) CFLAGS=$(CGLAGS) -C $$DIR $@ ;\
|
||||
$(MAKE) CC=$(CC) AR=$(AR) CFLAGS=$(CFLAGS) -C $$DIR $@ ;\
|
||||
cp $$DIR/$@ $@
|
||||
|
||||
FORCE:
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
http://mirrors.kernel.org/gnu/bison/bison-3.4.2.tar.xz 27d05534699735dc69e86add5b808d6cb35900ad3fd63fa82e3eb644336abfa0
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-672663a.tar.gz 8cced51f89a950472473856f86e88f5daf97a2347756125ccdc8ee907deec570
|
||||
https://files.bootstrapping.world/gnulib-672663a.tar.gz 8cced51f89a950472473856f86e88f5daf97a2347756125ccdc8ee907deec570
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
5a478142a517173180b2030cdd87b5f0f0c077e4b4a152c4b72141febf4d5905 /usr/bin/yacc
|
|
@ -0,0 +1,98 @@
|
|||
# SPDX-FileCopyrightText: 2002-2022 Thomas E. Dickey
|
||||
# SPDX-FileCopyrightText: 2024 Gábor Stefanik <netrolller.3d@gmail.com>
|
||||
#
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
#
|
||||
# From original byacc README:
|
||||
# Berkeley Yacc is in the public domain. The data structures and algorithms
|
||||
# used in Berkeley Yacc are all either taken from documents available to the
|
||||
# general public or are inventions of the author. Anyone may freely distribute
|
||||
# source or binary forms of Berkeley Yacc whether unchanged or modified.
|
||||
# Distributers may charge whatever fees they can obtain for Berkeley Yacc.
|
||||
# Programs generated by Berkeley Yacc may be distributed freely.
|
||||
#
|
||||
# (typo "Distributers" in original)
|
||||
|
||||
DEST = .
|
||||
|
||||
HDRS = defs.h
|
||||
|
||||
CFLAGS ?= -O -DNDEBUG
|
||||
|
||||
LDFLAGS ?=
|
||||
|
||||
LIBS ?=
|
||||
|
||||
LINKER ?= $(CC)
|
||||
|
||||
MAKEFILE = Makefile
|
||||
|
||||
OBJS = closure.o \
|
||||
error.o graph.o \
|
||||
lalr.o \
|
||||
lr0.o \
|
||||
main.o \
|
||||
mkpar.o mstring.o \
|
||||
output.o \
|
||||
reader.o \
|
||||
symtab.o \
|
||||
verbose.o \
|
||||
warshall.o yaccpar.o
|
||||
|
||||
PRINT = pr -f -l88
|
||||
|
||||
PROGRAM = yacc
|
||||
|
||||
SRCS = closure.c \
|
||||
error.c graph.c \
|
||||
lalr.c \
|
||||
lr0.c \
|
||||
main.c \
|
||||
mkpar.c mstring.c \
|
||||
output.c \
|
||||
reader.c \
|
||||
symtab.c \
|
||||
verbose.c \
|
||||
warshall.c yaccpar.c
|
||||
|
||||
all: $(PROGRAM)
|
||||
|
||||
$(PROGRAM): $(OBJS) $(LIBS)
|
||||
@$(LINKER) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS)
|
||||
|
||||
clean:; @rm -f $(OBJS)
|
||||
|
||||
clobber:; @rm -f $(OBJS) $(PROGRAM)
|
||||
|
||||
depend:; @mkmf -f $(MAKEFILE) PROGRAM=$(PROGRAM) DEST=$(DEST)
|
||||
|
||||
index:; @ctags -wx $(HDRS) $(SRCS)
|
||||
|
||||
install: $(PROGRAM)
|
||||
@echo Installing $(PROGRAM) in $(DEST)
|
||||
@install -s $(PROGRAM) $(DEST)
|
||||
|
||||
listing:; @$(PRINT) Makefile $(HDRS) $(SRCS) | lpr
|
||||
|
||||
lint:; @lint $(SRCS)
|
||||
|
||||
program: $(PROGRAM)
|
||||
|
||||
tags: $(HDRS) $(SRCS); @ctags $(HDRS) $(SRCS)
|
||||
|
||||
###
|
||||
closure.o: defs.h
|
||||
error.o: defs.h
|
||||
lalr.o: defs.h
|
||||
lr0.o: defs.h
|
||||
main.o: defs.h
|
||||
mkpar.o: defs.h
|
||||
output.o: defs.h
|
||||
reader.o: defs.h
|
||||
symtab.o: defs.h
|
||||
verbose.o: defs.h
|
||||
warshall.o: defs.h
|
||||
btyaccpar.o: defs.h
|
||||
yaccpar.o: defs.h
|
||||
graph.o: defs.h
|
||||
mstring.o: defs.h
|
|
@ -0,0 +1,45 @@
|
|||
#!/bin/sh
|
||||
|
||||
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
|
||||
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
|
||||
# SPDX-FileCopyrightText: 2024 Gábor Stefanik <netrolller.3d@gmail.com>
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
set -ex
|
||||
|
||||
# Check tarball checksums
|
||||
checksum-transcriber sources
|
||||
sha256sum -c sources.SHA256SUM
|
||||
|
||||
mkdir build src
|
||||
cd build
|
||||
|
||||
# Extract
|
||||
cp ${DISTFILES}/${pkg}.tgz ../src/${pkg}.tar.gz
|
||||
gunzip -f ../src/${pkg}.tar.gz
|
||||
tar xf ../src/${pkg}.tar
|
||||
rm -r ../src/
|
||||
cd ${pkg}
|
||||
|
||||
# Prepare and patch
|
||||
cp ../../files/Makefile .
|
||||
patch -Np0 -i ../../patches/meslibc.patch
|
||||
|
||||
# Build yacc
|
||||
make CC=tcc AR=tcc\ -ar CFLAGS=-DMAXPATHLEN=100\ -DEILSEQ=84\ -DMB_LEN_MAX=100 LDFLAGS=-lgetopt\ -static RANLIB=true
|
||||
|
||||
# Install yacc
|
||||
install yacc ${BINDIR}/yacc
|
||||
|
||||
cd ../..
|
||||
|
||||
# Checksums
|
||||
if match x${UPDATE_CHECKSUMS} xTrue; then
|
||||
sha256sum -o ${pkg}.checksums \
|
||||
/usr/bin/yacc
|
||||
|
||||
install ${pkg}.checksums ${SRCDIR}
|
||||
else
|
||||
sha256sum -c ${pkg}.checksums
|
||||
fi
|
|
@ -0,0 +1,170 @@
|
|||
SPDX-FileCopyrightText: 2024 Gábor Stefanik <netrolller.3d@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
Remove usages of tmpfile(), rewind(), fgetpos(), fsetpos() and bsearch(),
|
||||
which are unsupported by meslibc, and add missing declaration for strdup.
|
||||
|
||||
License note: Berkeley Yacc is in the public domain, but it's linked with
|
||||
meslibc, which is GPL-3.0-or-later, so we apply that license here too.
|
||||
|
||||
diff -ru ../byacc-20240109.bak/main.c ./main.c
|
||||
--- ../byacc-20240109.bak/main.c 2024-04-14 16:06:09.646465507 +0200
|
||||
+++ ./main.c 2024-04-14 20:41:56.227083399 +0200
|
||||
@@ -788,7 +788,7 @@
|
||||
(void)umask(save_umask);
|
||||
}
|
||||
#else
|
||||
- result = tmpfile();
|
||||
+ result = fopen(label, "w+");
|
||||
#endif
|
||||
|
||||
if (result == 0)
|
||||
diff -ru ../byacc-20240109.bak/output.c ./output.c
|
||||
--- ../byacc-20240109.bak/output.c 2024-04-14 16:06:09.646465507 +0200
|
||||
+++ ./output.c 2024-04-14 16:06:24.636465897 +0200
|
||||
@@ -1289,7 +1289,7 @@
|
||||
{
|
||||
if (union_file != 0)
|
||||
{
|
||||
- rewind(union_file);
|
||||
+ fseek(union_file, 0, SEEK_SET);
|
||||
while ((c = getc(union_file)) != EOF)
|
||||
putc_code(fp, c);
|
||||
}
|
||||
@@ -1314,7 +1314,7 @@
|
||||
|
||||
if (text_file == NULL)
|
||||
open_error("text_file");
|
||||
- rewind(text_file);
|
||||
+ fseek(text_file, 0, SEEK_SET);
|
||||
in = text_file;
|
||||
if ((c = getc(in)) == EOF)
|
||||
return;
|
||||
@@ -1684,7 +1684,7 @@
|
||||
int state;
|
||||
char line_state[20];
|
||||
|
||||
- rewind(action_file);
|
||||
+ fseek(action_file, 0, SEEK_SET);
|
||||
if ((c = getc(action_file)) == EOF)
|
||||
return;
|
||||
|
||||
diff -ru ../byacc-20240109.bak/reader.c ./reader.c
|
||||
--- ../byacc-20240109.bak/reader.c 2024-04-14 16:06:09.646465507 +0200
|
||||
+++ ./reader.c 2024-04-14 20:40:58.387082748 +0200
|
||||
@@ -70,7 +70,7 @@
|
||||
char *line_data; /* saved input-line */
|
||||
size_t line_used; /* position within saved input-line */
|
||||
size_t line_size; /* length of saved input-line */
|
||||
- fpos_t line_fpos; /* pointer before reading past saved input-line */
|
||||
+ long line_fpos; /* pointer before reading past saved input-line */
|
||||
}
|
||||
SAVE_LINE;
|
||||
|
||||
@@ -315,7 +315,7 @@
|
||||
line = save_area.line_data;
|
||||
cptr = save_area.line_used + line;
|
||||
linesize = save_area.line_size;
|
||||
- if (fsetpos(input_file, &save_area.line_fpos) != 0)
|
||||
+ if (fseek(input_file, save_area.line_fpos, SEEK_SET) != 0)
|
||||
on_error();
|
||||
memset(&save_area, 0, sizeof(save_area));
|
||||
}
|
||||
@@ -338,7 +338,7 @@
|
||||
save_area.line_size = linesize;
|
||||
NO_SPACE(save_area.line_data);
|
||||
memcpy(save_area.line_data, line, linesize);
|
||||
- if (fgetpos(f, &save_area.line_fpos) != 0)
|
||||
+ if ((save_area.line_fpos = ftell(f)) == -1)
|
||||
on_error();
|
||||
must_save = -must_save;
|
||||
}
|
||||
@@ -572,6 +572,36 @@
|
||||
return strcmp(p->name, q->name);
|
||||
}
|
||||
|
||||
+/*
|
||||
+ * Compare keyword to cached token, treating '_' and '-' the same. Some
|
||||
+ * grammars rely upon this misfeature.
|
||||
+ */
|
||||
+static int
|
||||
+matchec(const char *name)
|
||||
+{
|
||||
+ const char *p = cache;
|
||||
+ const char *q = name;
|
||||
+ int code = 0; /* assume mismatch */
|
||||
+
|
||||
+ while (*p != '\0' && *q != '\0')
|
||||
+ {
|
||||
+ char a = *p++;
|
||||
+ char b = *q++;
|
||||
+ if (a == '_')
|
||||
+ a = '-';
|
||||
+ if (b == '_')
|
||||
+ b = '-';
|
||||
+ if (a != b)
|
||||
+ break;
|
||||
+ if (*p == '\0' && *q == '\0')
|
||||
+ {
|
||||
+ code = 1;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ return code;
|
||||
+}
|
||||
+
|
||||
static int
|
||||
keyword(void)
|
||||
{
|
||||
@@ -612,10 +642,36 @@
|
||||
}
|
||||
cachec(NUL);
|
||||
|
||||
- if ((key = bsearch(cache, keywords,
|
||||
- sizeof(keywords) / sizeof(*key),
|
||||
- sizeof(*key), compare_keys)))
|
||||
- return key->token;
|
||||
+ if (matchec("token") || matchec("term"))
|
||||
+ return (TOKEN);
|
||||
+ if (matchec("type"))
|
||||
+ return (TYPE);
|
||||
+ if (matchec("left"))
|
||||
+ return (LEFT);
|
||||
+ if (matchec("right"))
|
||||
+ return (RIGHT);
|
||||
+ if (matchec("nonassoc") || matchec("binary"))
|
||||
+ return (NONASSOC);
|
||||
+ if (matchec("start"))
|
||||
+ return (START);
|
||||
+ if (matchec("union"))
|
||||
+ return (UNION);
|
||||
+ if (matchec("ident"))
|
||||
+ return (IDENT);
|
||||
+ if (matchec("expect"))
|
||||
+ return (EXPECT);
|
||||
+ if (matchec("expect-rr"))
|
||||
+ return (EXPECT_RR);
|
||||
+ if (matchec("pure-parser"))
|
||||
+ return (PURE_PARSER);
|
||||
+ if (matchec("parse-param"))
|
||||
+ return (PARSE_PARAM);
|
||||
+ if (matchec("lex-param"))
|
||||
+ return (LEX_PARAM);
|
||||
+ if (matchec("token-table"))
|
||||
+ return (TOKEN_TABLE);
|
||||
+ if (matchec("yacc"))
|
||||
+ return (POSIX_YACC);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1178,6 +1234,9 @@
|
||||
return result;
|
||||
}
|
||||
|
||||
+char *
|
||||
+strdup (char const *s);
|
||||
+
|
||||
static void
|
||||
save_param(int k, char *buffer, int name, int type2)
|
||||
{
|
|
@ -0,0 +1 @@
|
|||
https://invisible-island.net/archives/byacc/byacc-20240109.tgz f2897779017189f1a94757705ef6f6e15dc9208ef079eea7f28abec577e08446
|
|
@ -1 +1 @@
|
|||
d04adf65091f839217b5ae725df01ad9ddeb77e74cd7474b26cf2fa8962ad150 /usr/bin/bzip2
|
||||
103af2b8cb00efe5ea91266978db548a69cee5883aa6263e1f1b960448065580 /usr/bin/bzip2
|
||||
|
|
|
@ -1 +1 @@
|
|||
234d061a727502f3ed3252a1767086a09fda04ee509758fc5852a919e994ca20 /usr/bin/checksum-transcriber
|
||||
74656fa0cdd15992f7eee5797ecc33d7e65eb0e41acd3c6636cae45e5d3ce35d /usr/bin/checksum-transcriber
|
||||
|
|
|
@ -1 +1 @@
|
|||
b6145df4b2a92d5ee75902f4367e7a1a5456a5cef7a2e1365610637b054c477a /usr/bin/checksum-transcriber
|
||||
394b4651da547ae43b5de818a4bb9843f3872b2dbc022adf3711c991371d4398 /usr/bin/checksum-transcriber
|
||||
|
|
|
@ -1,61 +1,61 @@
|
|||
292fcbf47ee383832767bb2bb8b378f96a14dd68725270ae0db5539a94d031f3 /usr/bin/install
|
||||
a57f7328c2a81bd50fe5c83015406634baa8747211f912c9090e162e70735110 /usr/bin/basename
|
||||
f2e6cf099ee87d2f4a3b1e62db57075fab98ee3d2d5839ff9e81eb0ac0e37137 /usr/bin/cat
|
||||
9c77061b24adf9ba42951f8008dc457bcefff17b87d867f09a61f0c96817f083 /usr/bin/chmod
|
||||
669211c275348cff62c580d96119af225735746c0168edb63492116bf9647bd1 /usr/bin/cksum
|
||||
5be51d83898d33ffced444433fb977bd576e7bd3c37330f311458502f990083a /usr/bin/cp
|
||||
e72996b66d573cfb1f27120ade2fd29bc9582e79057d8d43b6081aea510562d4 /usr/bin/csplit
|
||||
a22cc2f79c70fac946e79fd93551578505c69a76beba68cbebb8d32e323a3e49 /usr/bin/cut
|
||||
9e2b178412eaa6b8442940b632452d931af50dc8be1c770d47e752248d9fd4ea /usr/bin/dirname
|
||||
42d8967cdfdd14e9f6f4ad6feb3e899f491ce2dcb6cb62f5160b6bd217bc4a04 /usr/bin/echo
|
||||
dda7112d7c33fe77486f4336d5d57cc3228ce9a18082332250af2c0be57391b0 /usr/bin/expand
|
||||
6f32c1383580aa37c9877eaed65090839dd3d12d8868ded3147c1adbdeb9a909 /usr/bin/expr
|
||||
d8eaa5d9d8e601fdbbe4715e5632a55efa986e691027590ac5905c150d8e4f94 /usr/bin/factor
|
||||
9f1f38e219d15070ece6229c3f75e40f11e5a3aaf426ee17745b95bb5205c94d /usr/bin/false
|
||||
98915280c8bad059cfb1bf99636dc69bf33532f7a982bd086d2114e0daa39a76 /usr/bin/fmt
|
||||
a8f6d99bc641f486ebdbc1bc5adb1b9fa424aceb4d9e0cc62ce08ceb43541c88 /usr/bin/fold
|
||||
4d215db24218e8b6dfeeea05268477fac56b11651d789a5972945a15ab7b2917 /usr/bin/head
|
||||
52718fa65c99150a773da13f4b155f8843391219f89d4aa0d5fe1d3cc9cf36b0 /usr/bin/hostname
|
||||
fc845714f8d461698daaadcd7bb507d4228c09504b886a679c129226727186d0 /usr/bin/id
|
||||
2fbe6af8f5c01521edacff2d145b8ee392489684e1624157e1e1841aade290a2 /usr/bin/join
|
||||
ea4e13ec9e2f622600d961be4f41de96251e429e7ed8a881be8fb70c379b80de /usr/bin/kill
|
||||
5c606a0febaeca39455847b11ea2ad1445cd4bfd40e187e4e3499c23e0dc2d43 /usr/bin/link
|
||||
52c561306a91197034106b20678da1b06e77228ab77a3ce40639fa1c132d44bc /usr/bin/ln
|
||||
2d7450a962ffdb434d2061aa36e74aa18e1e3e5d237eb39ccd3851a34a819694 /usr/bin/logname
|
||||
bb651823aa51315576d30c79c84248577bce2daab9be4cbcaedabdf2aef882a5 /usr/bin/mkfifo
|
||||
051a8465ba5e34d0f8c84f34f618b2ff059e566bf52d36c572d164762eca3618 /usr/bin/mkdir
|
||||
50be768057f0284b4b9cc034b990cc739228b96449c1c2062d9d98c778b1d4b5 /usr/bin/mknod
|
||||
e7c50e668907ce88388f127b2f07aed6dc10ddb6a8c9313f4269ed5b7e923c92 /usr/bin/nl
|
||||
ae1033bcc79daca95df1feefa3b4d64c0313cc2bf021efcf14760cccc5b42215 /usr/bin/od
|
||||
79aa11388de19028de66b06ce6e0983ba0d558b146aed51ce293d599fcaec627 /usr/bin/paste
|
||||
70eb12b8db8550d5b642df34d28f19e76a768a425efccaa8dfaee18c41db1228 /usr/bin/pathchk
|
||||
1fa81f879efc48472ab093eb82edc429736a10078aecab04d2b2cfb9634b47ef /usr/bin/pr
|
||||
8913fd449afc122c42b99b89b04428a22e7f07e032eaa530cbd076e611849a23 /usr/bin/printf
|
||||
b87663d81cc361221e643ca9f064995c7333f7c650f918393c9bb4482d8667e3 /usr/bin/ptx
|
||||
d31910a5308cfe80f2136677234d515728a06c84f60441f131d2b8dd878ce3aa /usr/bin/pwd
|
||||
84290d1d0a662ffc8d0ec314bbffa53aaacdae4104d8ba8f9a56d8896e97923b /usr/bin/readlink
|
||||
55dfb9a4c9c1f4efe74aaceaad37baff1e9f24acea83ac92a7008b703394edd4 /usr/bin/rmdir
|
||||
fec6d4f310ee0ad79fc76a23ed440b916502bc30af41c4a5e1ed578d2dca91f3 /usr/bin/seq
|
||||
1d0c39f163aa5029d867a091e5d1963b8e55aec09c33cd99da237df7e5b31e60 /usr/bin/sleep
|
||||
355ba0b4e1e655cfde75c493d907a68dbe2acf12adec88eaad019f231de1e75b /usr/bin/sort
|
||||
96ab28039a859a5b78f142aabe75f55b560e340e350751ce3696d02903dfb31f /usr/bin/split
|
||||
8852646f277cfbb01eff42c903f03248a7e3e9833cf3655c78a34f02687872ee /usr/bin/sum
|
||||
79b02fef988b77c1e3adee565aa474aec05e522ef4a5fd4635ca9bb6b1e65b6c /usr/bin/tail
|
||||
91038661556a3c6e91d4f45b41e44388bf62aea5a37abeca3395740344e03890 /usr/bin/tee
|
||||
0c4517c49db58cd700f588281557514894e5c924bfad5df129a70ff46d4a8dae /usr/bin/tr
|
||||
2d897818467998063800a4e92c50fa855b090202da11831f87be17665fd44a29 /usr/bin/tsort
|
||||
f8ca50f4d91ef6233049e2bd68cf6aa05a300a16d9fba2dce2e90e085ab8f401 /usr/bin/unexpand
|
||||
c8066c50b1a6f654a4cd1adc69e3a7fd58c6fa6ce987617c54b0d2668cb39daf /usr/bin/uniq
|
||||
93feee6a854be3a733f9e7a4e421e274f0781d235c02421b837fee3134c47897 /usr/bin/unlink
|
||||
a31f4b48b7517a348b44621e8d572eda835ffcdb7a97f64b1d7e78d67a38c84f /usr/bin/wc
|
||||
fae709b45aca8b7e4630aa853681b6f1d053135b4a5c8f72477a1e311f1e4616 /usr/bin/whoami
|
||||
11a17c10d03e56012685851f96145fe8a4701fd4ecbf05bad1c19b92fe97f347 /usr/bin/tac
|
||||
ceac9200b63c7b8b3cda19ca4e90b7d619c3bbd412834a7cb14ae022e5f05fa2 /usr/bin/test
|
||||
958a28e582bb69c684f666e2b47b98ff27d3b9a6177549444b85c03aad746c3d /usr/bin/touch
|
||||
05dc8f5f6d78716f649eb7ad5d355a67b6e133e241efcd0b99d5bd1b3c01b3b1 /usr/bin/true
|
||||
2203da05ecbf1d8be50e4c9669d78f8c45aa09055e55486322e18f9874cb3b4e /usr/bin/yes
|
||||
7ec9570369e239d3f295490250fc0d79c32fd6cf2d7d4eb02042c56c67d8bc86 /usr/bin/ls
|
||||
8323119905c2d42d9aefafb214ae314b7b9103247263328472d909fd794ffe8a /usr/bin/md5sum
|
||||
e2ed596c2adba6cab2853cea203f66bf5aeee85d3424685acffc567dc417459a /usr/bin/mv
|
||||
cb67b297e4e4f124f6c0a2a392fb8934ea8c07af4155bd7d49f367b9c77f4719 /usr/bin/rm
|
||||
b51e023e8e70a8cc6dadaba1a789c5c8c96dc526f224a1e8de44e57aad31ca7a /usr/bin/sha1sum
|
||||
523b51bf51c379c1dfa2d04b69863c02c31f31d54638a03a399bac71c498e302 /usr/bin/install
|
||||
0b802f4c74c8a2640c84f7a87f010bccdc9858dc9b2ba438c6d3cc3894c3892a /usr/bin/basename
|
||||
42a8ccb469ffd7e098626c2bd40d7933904a7d152b6b4aaa83512a7d43c8c026 /usr/bin/cat
|
||||
0dc7228a05afd6956fec228358e38901e9176c8a01307547364f7f3d7df1ae85 /usr/bin/chmod
|
||||
99d8f566fe26bf0997b32294cf301b8ac90796b79e7fe274bee19b8e5f4a2f2d /usr/bin/cksum
|
||||
0a0b5e17e778a50637ae0f496232f742ae3748f137b4abaf78639c4278db5fe9 /usr/bin/cp
|
||||
44d2c5e2d430998efb6260337a780cb730818be82fc1272da50e1dab2fcfb6a1 /usr/bin/csplit
|
||||
c985d78e11c8a6140569068fcdb8473aaf81dee6a5d5e412bd47f9ae14c0aa8e /usr/bin/cut
|
||||
7725e05029dd5537c673ca9f8662a70044202f5cce6267c6bbfa8b1bddb9a3e3 /usr/bin/dirname
|
||||
95a6849907b9baf30168589ba2cfba2e08e760e2624962d8b5abf11f20662dd4 /usr/bin/echo
|
||||
948341073b85442d6c00bef62360e810219189f2e0ae06b15bf512c9ad5586f6 /usr/bin/expand
|
||||
ee13822dd21e78374d46671d38375ae8db1126e75c0dbe19bd63f92702ead9ca /usr/bin/expr
|
||||
6918fd8d5f8a3f80c4f1bbd534c5115033927deb9ba816e12fca45d19eec1bcc /usr/bin/factor
|
||||
d3c5662d77ad197191b53b88e0ffed4e1659084f41b18736a8deaf16755c17ab /usr/bin/false
|
||||
83509ff0c83016065ad02086f255620c84ac12d668f7f0ab1b1463b621cd2467 /usr/bin/fmt
|
||||
7649cb10eb246de6035e5d7db5c900ecaef8d83677452d1f084001962fdd251f /usr/bin/fold
|
||||
8e26e4f22735c21109b4969ff6e4c8e52cb623198c708c91fc323f9a78d8a9f8 /usr/bin/head
|
||||
dfa93d89a269ab8bc1a31ac27ae58ca4b57e9e80016c14bdb32560a11b5d2781 /usr/bin/hostname
|
||||
a85003482887e354b121b2467244b9d8b289d484e888b95e4eac017356a50ca1 /usr/bin/id
|
||||
a16d179a6252510cc3d7184a3afe03d67a2697f0958c65fc588cdc20540da0ba /usr/bin/join
|
||||
fa575a974614812d656a739bd7971726c5ef37d9b659302caada5fb98c2d9bd2 /usr/bin/kill
|
||||
60132054c00316ef9010664b90daeb3aed3edc7daa3492164aaf9cd6dda47385 /usr/bin/link
|
||||
1422bd7e979aaa6fdb6b885f8befc95537207a6668df2d98f2f3e8b2997e754b /usr/bin/ln
|
||||
b273ec1b70d14ad732b3843e66b80cc9995d0f064159c7fee06cea50b867414b /usr/bin/logname
|
||||
dc1fb1d37393741dc72ec83c9ae52498ef0994cb9543c50f94e239f9cf80b30b /usr/bin/mkfifo
|
||||
5eac78966fb4dbc976c834677eaf3162ed5eb4cfadc7e09693f1d982e9fe855b /usr/bin/mkdir
|
||||
172edf9d1a9766eed0d836355c0e5f39e941ca0f3db1ee9a2a03a0ea63fa22d5 /usr/bin/mknod
|
||||
9c9892aa721dc5dd7661c039d015d74525d071ee065df0bc1f6aa06ef0c50fce /usr/bin/nl
|
||||
2a035b319845e589315a853b50818666c3d1198806430acdb9d5839471812b1f /usr/bin/od
|
||||
02e8bd0034632d192d562ac6e7a65e1d5d58bdf704879de26dd02a74b4a0d645 /usr/bin/paste
|
||||
7fcedafbe585d81fb1968c3cf8b3551817f1cdd98461896d1206f954f2d6a1e2 /usr/bin/pathchk
|
||||
19038aeda999dd42316e08243c55b3d515150fbe11c811bb47f556face7add7f /usr/bin/pr
|
||||
b990dc4321203613e56b0dabd8f8984dcbd8adc6e72f5e9265376a1911a08cad /usr/bin/printf
|
||||
f32aaf380592c7ff14bd71515083c75d35d8fa396d600f75ce99be347ee6f387 /usr/bin/ptx
|
||||
05dbc4ad66caace6dad054bc21ca98c261ef1cdcbd25431e4c82198eda2c12b2 /usr/bin/pwd
|
||||
56ba3841290c6f5977bb44887b672bee3b97f571c845ea31e2d17f926662ffc5 /usr/bin/readlink
|
||||
e9a9e3cf2c2908659a03b63b9fa4963d52c7fdf69d699c359855467a19df4756 /usr/bin/rmdir
|
||||
e30b629fa1fcf35a5f46f5cfd1b1602aa5c7ca184a1ff343452349333b778a6c /usr/bin/seq
|
||||
c30b559c2efb15b90865600f203f1ea75aa50e728f7dfd4d2a0eaf1aa8ff3924 /usr/bin/sleep
|
||||
53e4e2c96092489cb2b9e6883e66164c12a228de0420389dd63cad506948487f /usr/bin/sort
|
||||
b1a1344aaee44f1bf04430b0c0a4a6148af69128160f2bc093fce91d79d6e25f /usr/bin/split
|
||||
e5de0b1782231a9ce0b0bbcc7c818a39517e419273fe56faddc628b7c0a0e5a6 /usr/bin/sum
|
||||
df19f0df1b4198e02261b478266ce642c62450114c818c8812249cb1eac473e6 /usr/bin/tail
|
||||
0b6726576538145c62a7c33994574ff3d2470ed475d612076caf7049a6eb8f7c /usr/bin/tee
|
||||
311ce27575937ff583e67ee98cd8a64ef6d8a103666de773a0f61c7ba1537cf9 /usr/bin/tr
|
||||
b4285c93f16b2f1521c2729c20df7176408d27c32a055676fadc34c009b956ba /usr/bin/tsort
|
||||
5958c475dcee08b42516bf0aeec420e19ea592d56d1781692d2481e273999762 /usr/bin/unexpand
|
||||
08a550c90975a232311cd2f41c8fabb06e3b32b4c6aa362a35ca038189712f67 /usr/bin/uniq
|
||||
d33508270e1f86fc959d6abb12ae03ac6643f0138395e1b67586539d5c3dd38b /usr/bin/unlink
|
||||
7e7526b6970838c620fbcccf8ce295a5d901aa03186da4036d1938ee907d1d46 /usr/bin/wc
|
||||
ef0041e5daf3b96d6656068c9bc27cde52c11f10177ede1ee7ecc0d1fc09c061 /usr/bin/whoami
|
||||
794107d42c946b844c84575f80b7fc2ac35bc197555d36ecefd9471a4ce8943e /usr/bin/tac
|
||||
61624e0509eded80e4539890d33908e8f9b92da3f53685810da6bfa5f749c141 /usr/bin/test
|
||||
cc16741fbadaeee5ef9427ac96f762c6e7d21ed8b80a625afde5b375443896b3 /usr/bin/touch
|
||||
3f94bca6093256356dd09d896aa657c2f7aa26b6b337cbde19d59e1bb6ca2e34 /usr/bin/true
|
||||
6256e12f10ab5e9e199db96fec51809591445d3135cea446e788523c47989504 /usr/bin/yes
|
||||
f10746a6226e699da42a1a2a4e1a99d36fd7d9d6211a100a8bf0a98b3585321e /usr/bin/ls
|
||||
e604f08d122e88c1a112c32b59b870f8b0c9000e4821684bc41d0a50d6338214 /usr/bin/md5sum
|
||||
32aa8dc8b78a0807cdf3867725a529f56b8e0701f2fcd3dc93c5e19e0c8b4f9f /usr/bin/mv
|
||||
4dcfebaed9312e084e9927ce1bb89ec4a928d668816c8f5f1efd6acaf54d8bbd /usr/bin/rm
|
||||
e4c326abc31fac0c5bd77d5c2f6bafee9b9a97e6cfb603f55eb6c722bb41e875 /usr/bin/sha1sum
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
http://git.savannah.gnu.org/cgit/coreutils.git/snapshot/coreutils-9.4.tar.xz 8fb56810310253300b3d6f84e68dc97eb2d74e1f4f78e05776831d9d82e4f2d7
|
||||
https://files.bootstrapping.world/coreutils-9.4.tar.xz 8fb56810310253300b3d6f84e68dc97eb2d74e1f4f78e05776831d9d82e4f2d7
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-bb5bb43.tar.gz b8aa1ac1b18c67f081486069e6a7a5564f20431c2313a94c20a46dcfb904be2a
|
||||
https://files.bootstrapping.world/gnulib-bb5bb43.tar.gz b8aa1ac1b18c67f081486069e6a7a5564f20431c2313a94c20a46dcfb904be2a
|
||||
http://ftp.unicode.org/Public/15.0.0/ucd/UnicodeData.txt 806e9aed65037197f1ec85e12be6e8cd870fc5608b4de0fffd990f689f376a73 UnicodeData-15.0.0.txt
|
||||
http://ftp.unicode.org/Public/15.0.0/ucd/PropList.txt e05c0a2811d113dae4abd832884199a3ea8d187ee1b872d8240a788a96540bfd PropList-15.0.0.txt
|
||||
http://ftp.unicode.org/Public/15.0.0/ucd/DerivedCoreProperties.txt d367290bc0867e6b484c68370530bdd1a08b6b32404601b8c7accaf83e05628d DerivedCoreProperties-15.0.0.txt
|
||||
|
|
|
@ -1 +1 @@
|
|||
https://dept.rpi.edu/acm/packages/diffutils/2.7/distrib/diffutils-2.7.tar.bz2 fd6c44f7cbd0a942a3f0c012365997965451197ad4faeb0b8aac1fe03192de58
|
||||
https://mirrors.kernel.org/gnu/diffutils/diffutils-2.7.tar.gz d5f2489c4056a31528e3ada4adacc23d498532b0af1a980f2f76158162b139d6
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
https://mirrors.kernel.org/gnu/diffutils/diffutils-3.10.tar.xz 90e5e93cc724e4ebe12ede80df1634063c7a855692685919bfe60b556c9bd09e
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-5d2fe24.tar.gz 72e7bb2d1d75e63d1c46d33b8dd22e8eb60afdba4af3e7251151b5c2a6f00bfb
|
||||
https://files.bootstrapping.world/gnulib-5d2fe24.tar.gz 72e7bb2d1d75e63d1c46d33b8dd22e8eb60afdba4af3e7251151b5c2a6f00bfb
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
https://mirrors.kernel.org/gnu/findutils/findutils-4.2.33.tar.gz 813cd9405aceec5cfecbe96400d01e90ddad7b512d3034487176ce5258ab0f78
|
||||
https://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-8e128e.tar.gz 0cfbf866bc39c31f25fa0e56af1e56c5e5c92fc1e5d51242ebafef7ea211f3d5
|
||||
https://files.bootstrapping.world/gnulib-8e128e.tar.gz 0cfbf866bc39c31f25fa0e56af1e56c5e5c92fc1e5d51242ebafef7ea211f3d5
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
https://mirrors.kernel.org/gnu/gettext/gettext-0.21.tar.xz d20fcbb537e02dcf1383197ba05bd0734ef7bf5db06bdb241eb69b7d16b73192
|
||||
https://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-7daa86f.tar.gz 2d911c2f2ed97b347d6d360b742abdc98aa626d4f8f847ee682c7cde12e90871
|
||||
https://files.bootstrapping.world/gnulib-7daa86f.tar.gz 2d911c2f2ed97b347d6d360b742abdc98aa626d4f8f847ee682c7cde12e90871
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
https://mirrors.kernel.org/gnu/grep/grep-3.7.tar.xz 5c10da312460aec721984d5d83246d24520ec438dd48d7ab5a05dbc0d6d6823c
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-8f4538a5.tar.gz e207c0bb72093c3a72dde302fcfaa1dbda12a62172d47b73565883a92209ebab
|
||||
https://files.bootstrapping.world/gnulib-8f4538a5.tar.gz e207c0bb72093c3a72dde302fcfaa1dbda12a62172d47b73565883a92209ebab
|
||||
|
|
|
@ -32,4 +32,5 @@ src_configure() {
|
|||
src_install() {
|
||||
default
|
||||
rm "${DESTDIR}${PREFIX}/share/info/dir"
|
||||
rm "${DESTDIR}${PREFIX}/share/man/man8/grub-install.8"
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
https://mirrors.kernel.org/gnu/grub/grub-2.06.tar.xz b79ea44af91b93d17cd3fe80bdae6ed43770678a9a5ae192ccea803ebb657ee1
|
||||
https://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-d271f86.tar.gz 31d69d3d251e39135b5194ddc6f897910d344059f7494d96a739aecbf7ac2b66
|
||||
https://files.bootstrapping.world/gnulib-d271f86.tar.gz 31d69d3d251e39135b5194ddc6f897910d344059f7494d96a739aecbf7ac2b66
|
||||
http://ftp.unicode.org/Public/9.0.0/ucd/UnicodeData.txt 68dfc414d28257b9b5d6ddbb8b466c768c00ebdf6cbf7784364a9b6cad55ee8f UnicodeData-9.0.0.txt
|
||||
http://ftp.unicode.org/Public/9.0.0/ucd/PropList.txt f413ea8dbd3858de72f3148b47dd0586019761357d1481e3b65f3a025bc27f82 PropList-9.0.0.txt
|
||||
http://ftp.unicode.org/Public/9.0.0/ucd/DerivedCoreProperties.txt 6662c7e30b572df5d948c092692f52bcc79ab36d49a063a73d6435042db6fb3b DerivedCoreProperties-9.0.0.txt
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
https://mirrors.kernel.org/gnu/guile/guile-3.0.7.tar.xz f57d86c70620271bfceb7a9be0c81744a033f08adc7ceba832c9917ab3e691b7
|
||||
https://mirrors.kernel.org/gnu/guile/guile-3.0.9.tar.xz 1a2625ac72b2366e95792f3fe758fd2df775b4044a90a4a9787326e66c0d750d
|
||||
https://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-901694b9.tar.gz f9aad85de1f41d57c9368d304020ffbf354a5e56db1297f022c3d12181134e56
|
||||
https://files.bootstrapping.world/gnulib-901694b9.tar.gz f9aad85de1f41d57c9368d304020ffbf354a5e56db1297f022c3d12181134e56
|
||||
https://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-356a414e.tar.gz fc9973f1a9243fdc4b98d33d7704f3c71bfdc4c2ef96899b8f28cade7290a714
|
||||
https://files.bootstrapping.world/gnulib-356a414e.tar.gz fc9973f1a9243fdc4b98d33d7704f3c71bfdc4c2ef96899b8f28cade7290a714
|
||||
https://github.com/schierlm/guile-psyntax-bootstrapping/archive/refs/tags/guile-3.0.7.tar.gz 14cda9c416506dfadf60c14fc623ff01ef99b87564a78d0a29c5d17143c97609
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
https://mirrors.kernel.org/gnu/gzip/gzip-1.13.tar.xz 7454eb6935db17c6655576c2e1b0fabefd38b4d0936e0f87f48cd062ce91a057
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-5651802.tar.gz 56f1221eb682c3502ee097f583f44673570753cb452346ad4806d94560c3fac9
|
||||
https://files.bootstrapping.world/gnulib-5651802.tar.gz 56f1221eb682c3502ee097f583f44673570753cb452346ad4806d94560c3fac9
|
||||
|
|
|
@ -1 +1 @@
|
|||
2eea6424aebf9d68e674c48c729e2eff72cfe330f5d4a5cc3918b7275c36e679 /usr/bin/gzip
|
||||
e5ddef55d9747552d3d29662312417d8223b125d6df423fdec303e2684e2c34c /usr/bin/gzip
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
22356e9e871747acbd93f0e08aee1c05aa0de8240bfd80f5d2565e3ea281ae0e /usr/bin/yacc
|
||||
3719795cec49866ad20fdd75aceb1eb0cce9975f2afd716069f880dff16f668f /usr/bin/lex
|
||||
ffe696afc1bda32a5f4035e29b3275cab73a27df7635ccbe02ed49a30374ccdd /usr/lib/mes/libl.a
|
||||
bf3fb293f1ff89ee3dbcb08166c64b7a6793b49a12673d7633e3353ebea80d4d /usr/lib/mes/yaccpar
|
||||
ee0f187b844f50d64c912bfcb5d73706662846d6d8a90b8b1fb20dda60464734 /usr/lib/mes/lex/ncform
|
|
@ -1,60 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
|
||||
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
set -ex
|
||||
|
||||
# Check tarball checksums
|
||||
checksum-transcriber sources
|
||||
sha256sum -c sources.SHA256SUM
|
||||
|
||||
mkdir build src
|
||||
cd build
|
||||
|
||||
# Extract
|
||||
cp ${DISTFILES}/${pkg}.tar.bz2 ../src/
|
||||
bunzip2 -f ../src/${pkg}.tar.bz2
|
||||
tar xf ../src/${pkg}.tar ${pkg}/yacc ${pkg}/lex
|
||||
rm -r ../src/
|
||||
cd ${pkg}
|
||||
|
||||
# Prepare and patch
|
||||
patch -Np0 -i ../../patches/yacc_remove_wchar.patch
|
||||
patch -Np0 -i ../../patches/lex_remove_wchar.patch
|
||||
|
||||
# Build yacc
|
||||
cd yacc
|
||||
make -f Makefile.mk CC=tcc AR=tcc\ -ar CFLAGS=-DMAXPATHLEN=100\ -DEILSEQ=84\ -DMB_LEN_MAX=100 LDFLAGS=-lgetopt\ -static RANLIB=true
|
||||
|
||||
# Install yacc
|
||||
install yacc ${BINDIR}
|
||||
install -m 644 yaccpar ${LIBDIR}
|
||||
|
||||
# Build lex
|
||||
cd ../lex
|
||||
make -f Makefile.mk CC=tcc AR=tcc\ -ar CFLAGS=-DEILSEQ=84\ -DMB_LEN_MAX=100 LDFLAGS=-lgetopt\ -static RANLIB=true
|
||||
|
||||
# Install lex
|
||||
mkdir ${LIBDIR}/lex
|
||||
install lex ${BINDIR}
|
||||
install libl.a ${LIBDIR}
|
||||
install -m 644 ncform ${LIBDIR}/lex
|
||||
|
||||
cd ../../..
|
||||
|
||||
# Checksums
|
||||
if match x${UPDATE_CHECKSUMS} xTrue; then
|
||||
sha256sum -o ${pkg}.checksums \
|
||||
/usr/bin/yacc \
|
||||
/usr/bin/lex \
|
||||
/usr/lib/mes/libl.a \
|
||||
/usr/lib/mes/yaccpar \
|
||||
/usr/lib/mes/lex/ncform
|
||||
|
||||
install ${pkg}.checksums ${SRCDIR}
|
||||
else
|
||||
sha256sum -c ${pkg}.checksums
|
||||
fi
|
|
@ -0,0 +1,21 @@
|
|||
#!/bin/sh
|
||||
|
||||
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
|
||||
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
|
||||
# SPDX-FileCopyrightText: 2024 Gábor Stefanik <netrolller.3d@gmail.com>
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
src_compile() {
|
||||
cd lex
|
||||
make -f Makefile.mk CC=tcc AR=tcc\ -ar LDFLAGS=-static RANLIB=true
|
||||
cd ..
|
||||
}
|
||||
|
||||
src_install() {
|
||||
mkdir -p "${DESTDIR}${BINDIR}" "${DESTDIR}${LIBDIR}/lex"
|
||||
install lex/lex "${DESTDIR}${BINDIR}"
|
||||
install lex/libl.a "${DESTDIR}${LIBDIR}"
|
||||
install -m 644 lex/ncform "${DESTDIR}${LIBDIR}/lex"
|
||||
}
|
||||
|
|
@ -1,454 +0,0 @@
|
|||
SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
|
||||
SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
|
||||
|
||||
SPDX-License-Identifier: CDDL-1.0
|
||||
|
||||
From 508eb06d40498acf954fc51ecb9171d2ce2236f6 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= <andrius@stikonas.eu>
|
||||
Date: Wed, 27 Jan 2021 00:40:19 +0000
|
||||
Subject: [PATCH] Workaround for lex to work with mes libc.
|
||||
|
||||
Similarly to yacc, remove wchar. See yacc patch for further
|
||||
information.
|
||||
|
||||
---
|
||||
lex/Makefile.mk | 2 +-
|
||||
lex/allprint.c | 6 ++--
|
||||
lex/ldefs.c | 8 -----
|
||||
lex/main.c | 1 +
|
||||
lex/parser.y | 77 +++++++++++++++++++++++++++++++++++--------------
|
||||
lex/reject.c | 1 -
|
||||
lex/sub1.c | 44 ++++++++++++++++++----------
|
||||
lex/sub3.c | 2 +-
|
||||
8 files changed, 89 insertions(+), 52 deletions(-)
|
||||
|
||||
diff --git lex/Makefile.mk lex/Makefile.mk
|
||||
index 577f7cb..a413867 100644
|
||||
--- lex/Makefile.mk
|
||||
+++ lex/Makefile.mk
|
||||
@@ -1,4 +1,4 @@
|
||||
-XOBJ = main.o sub1.o sub2.o sub3.o header.o wcio.o parser.o getopt.o lsearch.o
|
||||
+XOBJ = main.o sub1.o sub2.o sub3.o header.o parser.o getopt.o lsearch.o
|
||||
|
||||
LOBJ = allprint.o libmain.o reject.o yyless.o yywrap.o \
|
||||
allprint_w.o reject_w.o yyless_w.o reject_e.o yyless_e.o
|
||||
diff --git lex/allprint.c lex/allprint.c
|
||||
index 6e82495..cb0c6bb 100644
|
||||
--- lex/allprint.c
|
||||
+++ lex/allprint.c
|
||||
@@ -42,8 +42,6 @@
|
||||
#include <sys/euc.h>
|
||||
#include <widec.h>
|
||||
#endif
|
||||
-#include <wctype.h>
|
||||
-#include <wchar.h>
|
||||
|
||||
extern FILE *yyout;
|
||||
|
||||
@@ -78,10 +76,10 @@ allprint(CHR c)
|
||||
fprintf(yyout, "\\_");
|
||||
break;
|
||||
default:
|
||||
- if (!iswprint(c))
|
||||
+ if (!iwprint(c))
|
||||
fprintf(yyout, "\\x%-2x", (int)c);
|
||||
else
|
||||
- putwc(c, yyout);
|
||||
+ putc(c, yyout);
|
||||
break;
|
||||
}
|
||||
}
|
||||
diff --git lex/ldefs.c lex/ldefs.c
|
||||
index ff99665..c5dcbaf 100644
|
||||
--- lex/ldefs.c
|
||||
+++ lex/ldefs.c
|
||||
@@ -43,7 +43,6 @@
|
||||
#ifdef __sun
|
||||
#include <widec.h>
|
||||
#endif
|
||||
-#include <wctype.h>
|
||||
|
||||
#define CHR wchar_t
|
||||
#define BYTE char
|
||||
@@ -296,13 +295,6 @@ int mn1(int a, intptr_t d);
|
||||
int mn0(int a);
|
||||
int dupl(int n);
|
||||
|
||||
-#undef getwc
|
||||
-#define getwc(f) lex_getwc(f)
|
||||
-extern wint_t lex_getwc(FILE *);
|
||||
-#undef putwc
|
||||
-#define putwc(c, f) lex_putwc(c, f)
|
||||
-extern wint_t lex_putwc(wchar_t, FILE *);
|
||||
-
|
||||
#undef index
|
||||
#define index lex_index
|
||||
|
||||
diff --git lex/main.c lex/main.c
|
||||
index 8aee8ea..52c892a 100644
|
||||
--- lex/main.c
|
||||
+++ lex/main.c
|
||||
@@ -38,6 +38,7 @@
|
||||
* Sccsid @(#)main.c 1.9 (gritter) 11/26/05
|
||||
*/
|
||||
|
||||
+#include <getopt.h>
|
||||
#include <string.h>
|
||||
#include "once.h"
|
||||
#include "sgs.h"
|
||||
diff --git lex/parser.y lex/parser.y
|
||||
index b8618e3..34a7e9a 100644
|
||||
--- lex/parser.y
|
||||
+++ lex/parser.y
|
||||
@@ -43,7 +43,6 @@
|
||||
void yyerror(char *);
|
||||
|
||||
#include <ctype.h>
|
||||
-#include <wchar.h>
|
||||
#include <inttypes.h>
|
||||
#ifndef __sun
|
||||
#define wcsetno(c) 0
|
||||
@@ -289,6 +288,19 @@ r: CHAR
|
||||
;
|
||||
|
||||
%%
|
||||
+
|
||||
+/*
|
||||
+Copy multibyte string into char string.
|
||||
+Mes C library does not support wide strings, and fprintf truncates all strings to 1 character.
|
||||
+This happens because wchar_t strings have 0 in a second byte.
|
||||
+*/
|
||||
+int
|
||||
+wstrcpy(char const *destination, wchar_t const *source) {
|
||||
+ int i = 0;
|
||||
+ do {
|
||||
+ destination[i]=source[i];
|
||||
+ } while (source[i++] != 0);
|
||||
+}
|
||||
int
|
||||
yylex(void)
|
||||
{
|
||||
@@ -353,7 +365,7 @@ yylex(void)
|
||||
(*(p+2) == 'O')) {
|
||||
if(lgatflg)
|
||||
error("Too late for %%pointer");
|
||||
- while(*p && !iswspace(*p))
|
||||
+ while(*p && !isspace(*p))
|
||||
p++;
|
||||
isArray = 0;
|
||||
continue;
|
||||
@@ -397,7 +409,7 @@ yylex(void)
|
||||
(*(p+2) == 'R')) {
|
||||
if(lgatflg)
|
||||
error("Too late for %%array");
|
||||
- while(*p && !iswspace(*p))
|
||||
+ while(*p && !isspace(*p))
|
||||
p++;
|
||||
isArray = 1;
|
||||
continue;
|
||||
@@ -426,7 +438,7 @@ yylex(void)
|
||||
if(handleeuc)
|
||||
error("\
|
||||
Character table (%t) is supported only in ASCII compatibility mode.\n");
|
||||
- ZCH = wcstol(p+2, NULL, 10);
|
||||
+ ZCH = strtol(p+2, NULL, 10);
|
||||
if (ZCH < NCH) ZCH = NCH;
|
||||
if (ZCH > 2*NCH) error("ch table needs redeclaration");
|
||||
chset = TRUE;
|
||||
@@ -438,13 +450,13 @@ Character table (%t) is supported only in ASCII compatibility mode.\n");
|
||||
continue;
|
||||
}
|
||||
while(digit(*p)) p++;
|
||||
- if(!iswspace(*p)) error("bad translation format");
|
||||
- while(iswspace(*p)) p++;
|
||||
+ if(!isspace(*p)) error("bad translation format");
|
||||
+ while(isspace(*p)) p++;
|
||||
t = p;
|
||||
while(*t){
|
||||
c = ctrans(&t);
|
||||
if(ctable[(unsigned)c]){
|
||||
- if (iswprint(c))
|
||||
+ if (isprint(c))
|
||||
warning("Character '%lc' used twice",c);
|
||||
|
||||
else
|
||||
@@ -485,8 +497,12 @@ Character table (%t) is supported only in ASCII compatibility mode.\n");
|
||||
while(getl(p) && scomp(p, L_PctCbr) != 0)
|
||||
if(p[0]=='/' && p[1]=='*')
|
||||
cpycom(p);
|
||||
- else
|
||||
- fprintf(fout,"%ls\n",p);
|
||||
+ else {
|
||||
+ char p2[100];
|
||||
+ wstrcpy(p2, p);
|
||||
+ fprintf(fout,"%ls\n",p2);
|
||||
+ memset(p2, 0, sizeof p2);
|
||||
+ }
|
||||
if(p[0] == '%') continue;
|
||||
if (*p) error("EOF before %%%%");
|
||||
else error("EOF before %%}");
|
||||
@@ -501,12 +517,12 @@ Character table (%t) is supported only in ASCII compatibility mode.\n");
|
||||
start:
|
||||
lgate();
|
||||
|
||||
- while(*p && !iswspace(*p) && ((*p) != (wchar_t)',')) p++;
|
||||
+ while(*p && !isspace(*p) && ((*p) != (wchar_t)',')) p++;
|
||||
n = TRUE;
|
||||
while(n){
|
||||
- while(*p && (iswspace(*p) || ((*p) == (wchar_t)','))) p++;
|
||||
+ while(*p && (isspace(*p) || ((*p) == (wchar_t)','))) p++;
|
||||
t = p;
|
||||
- while(*p && !iswspace(*p) && ((*p) != (wchar_t)',')) {
|
||||
+ while(*p && !isspace(*p) && ((*p) != (wchar_t)',')) {
|
||||
if(!isascii(*p))
|
||||
error("None-ASCII characters in start condition.");
|
||||
p++;
|
||||
@@ -516,7 +532,10 @@ start:
|
||||
if (*t == 0) continue;
|
||||
i = sptr*2;
|
||||
if(!ratfor)fprintf(fout,"# ");
|
||||
- fprintf(fout,"define %ls %d\n",t,i);
|
||||
+ char t2[100];
|
||||
+ wstrcpy(t2, t);
|
||||
+ fprintf(fout,"define %ls %d\n",t2,i);
|
||||
+ memset(t2, 0, sizeof t2);
|
||||
scopy(t,sp);
|
||||
sname[sptr] = sp;
|
||||
/* XCU4: save exclusive flag with start name */
|
||||
@@ -537,14 +556,20 @@ start:
|
||||
case ' ': case '\t': /* must be code */
|
||||
lgate();
|
||||
if( p[1]=='/' && p[2]=='*' ) cpycom(p);
|
||||
- else fprintf(fout, "%ls\n",p);
|
||||
+
|
||||
+ else {
|
||||
+ char p2[100];
|
||||
+ wstrcpy(p2, p);
|
||||
+ fprintf(fout, "%ls\n",p2);
|
||||
+ memset(p2, 0, sizeof p2);
|
||||
+ }
|
||||
continue;
|
||||
case '/': /* look for comments */
|
||||
lgate();
|
||||
if((*(p+1))=='*') cpycom(p);
|
||||
/* FALLTHRU */
|
||||
default: /* definition */
|
||||
- while(*p && !iswspace(*p)) p++;
|
||||
+ while(*p && !isspace(*p)) p++;
|
||||
if(*p == 0)
|
||||
continue;
|
||||
prev = *p;
|
||||
@@ -557,7 +582,7 @@ start:
|
||||
}
|
||||
} else { /* still sect 1, but prev != '\n' */
|
||||
p = bptr;
|
||||
- while(*p && iswspace(*p)) p++;
|
||||
+ while(*p && isspace(*p)) p++;
|
||||
if(*p == 0)
|
||||
warning("No translation given - null string assumed");
|
||||
scopy(p,token);
|
||||
@@ -632,8 +657,11 @@ start:
|
||||
while(!eof&& getl(buf) && scomp(L_PctCbr,buf)!=0)
|
||||
if(buf[0]=='/' && buf[1]=='*')
|
||||
cpycom(buf);
|
||||
- else
|
||||
- fprintf(fout,"%ls\n",buf);
|
||||
+ else {
|
||||
+ char buf2[100];
|
||||
+ wstrcpy(buf2, p);
|
||||
+ fprintf(fout,"%ls\n",buf2);
|
||||
+ }
|
||||
continue;
|
||||
}
|
||||
if(peek == '%'){
|
||||
@@ -944,9 +972,16 @@ Character range specified between different codesets.");
|
||||
else
|
||||
fprintf(fout,
|
||||
"\n# line %d \"%s\"\n", yyline-1, sargv[optind]);
|
||||
- fprintf(fout,"%ls\n",buf);
|
||||
- while(getl(buf) && !eof)
|
||||
- fprintf(fout,"%ls\n",buf);
|
||||
+ char buf2[100];
|
||||
+ wstrcpy(buf2, buf);
|
||||
+ fprintf(fout,"%ls\n",buf2);
|
||||
+ memset(buf2, 0, sizeof buf2);
|
||||
+ while(getl(buf) && !eof) {
|
||||
+ wstrcpy(buf2, buf);
|
||||
+ fprintf(fout,"%ls\n",buf2);
|
||||
+ memset(buf2, 0, sizeof buf2);
|
||||
+ }
|
||||
+ memset(buf2, 0, sizeof buf2);
|
||||
}
|
||||
|
||||
return(freturn(0));
|
||||
diff --git lex/reject.c lex/reject.c
|
||||
index 31928e7..ef08c57 100644
|
||||
--- lex/reject.c
|
||||
+++ lex/reject.c
|
||||
@@ -38,7 +38,6 @@
|
||||
#include <euc.h>
|
||||
#include <widec.h>
|
||||
#else /* !sun */
|
||||
-#include <wchar.h>
|
||||
#endif /* !sun */
|
||||
#include <limits.h>
|
||||
#endif
|
||||
diff --git lex/sub1.c lex/sub1.c
|
||||
index b867948..eead84b 100644
|
||||
--- lex/sub1.c
|
||||
+++ lex/sub1.c
|
||||
@@ -38,7 +38,6 @@
|
||||
|
||||
#include "ldefs.c"
|
||||
#include <limits.h>
|
||||
-#include <wchar.h>
|
||||
#include <ctype.h>
|
||||
#include <stdarg.h>
|
||||
|
||||
@@ -394,6 +393,19 @@ cclinter(int sw)
|
||||
}
|
||||
}
|
||||
|
||||
+int
|
||||
+mbtowc(wchar_t *pwc, const char *s, size_t n)
|
||||
+{
|
||||
+ if (s != 0) {
|
||||
+ if (n < 1)
|
||||
+ return -1;
|
||||
+ if (pwc != 0)
|
||||
+ *pwc = *s & 0377;
|
||||
+ return *s != '\0';
|
||||
+ } else
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
int
|
||||
usescape(int c)
|
||||
{
|
||||
@@ -546,7 +558,7 @@ cpyact(void)
|
||||
break;
|
||||
case ';':
|
||||
if (brac == 0) {
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
putc('\n', fout);
|
||||
return (1);
|
||||
}
|
||||
@@ -558,26 +570,26 @@ cpyact(void)
|
||||
case '}':
|
||||
brac--;
|
||||
if (brac == 0) {
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
putc('\n', fout);
|
||||
return (1);
|
||||
}
|
||||
break;
|
||||
case '/':
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
c = gch();
|
||||
if (c != '*')
|
||||
goto swt;
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
savline = yyline;
|
||||
while (c = gch()) {
|
||||
while (c == '*') {
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
if ((c = gch()) == '/') {
|
||||
putc('/', fout);
|
||||
while ((c = gch()) == ' ' ||
|
||||
c == '\t' || c == '\n')
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
goto swt;
|
||||
}
|
||||
}
|
||||
@@ -590,16 +602,16 @@ cpyact(void)
|
||||
case '\'': /* character constant */
|
||||
case '"': /* character string */
|
||||
mth = c;
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
while (c = gch()) {
|
||||
if (c == '\\') {
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
c = gch();
|
||||
}
|
||||
else
|
||||
if (c == mth)
|
||||
goto loop;
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
if (c == '\n') {
|
||||
yyline--;
|
||||
error(
|
||||
@@ -620,7 +632,7 @@ cpyact(void)
|
||||
loop:
|
||||
if (c != ' ' && c != '\t' && c != '\n')
|
||||
sw = FALSE;
|
||||
- putwc(c, fout);
|
||||
+ putc(c, fout);
|
||||
if (peek == '\n' && !brac && copy_line) {
|
||||
putc('\n', fout);
|
||||
return (1);
|
||||
@@ -636,7 +648,7 @@ gch(void)
|
||||
int c;
|
||||
prev = pres;
|
||||
c = pres = peek;
|
||||
- peek = pushptr > pushc ? *--pushptr : getwc(fin);
|
||||
+ peek = pushptr > pushc ? *--pushptr : getc(fin);
|
||||
while (peek == EOF) {
|
||||
if (no_input) {
|
||||
if (!yyline)
|
||||
@@ -650,7 +662,7 @@ gch(void)
|
||||
if (fin == NULL)
|
||||
error("Cannot open file -- %s",
|
||||
sargv[optind]);
|
||||
- peek = getwc(fin);
|
||||
+ peek = getc(fin);
|
||||
} else
|
||||
break;
|
||||
} else {
|
||||
@@ -856,11 +868,11 @@ allprint(CHR c)
|
||||
printf("\\_");
|
||||
break;
|
||||
default:
|
||||
- if (!iswprint(c)) {
|
||||
+ if (!isprint(c)) {
|
||||
printf("\\x%-2x", c); /* up to fashion. */
|
||||
charc += 3;
|
||||
} else
|
||||
- putwc(c, stdout);
|
||||
+ putc(c, stdout);
|
||||
break;
|
||||
}
|
||||
charc++;
|
||||
@@ -903,7 +915,7 @@ sect1dump(void)
|
||||
allprint(i);
|
||||
putchar(' ');
|
||||
iswprint(ctable[i]) ?
|
||||
- putwc(ctable[i], stdout) :
|
||||
+ putc(ctable[i], stdout) :
|
||||
printf("%d", ctable[i]);
|
||||
putchar('\n');
|
||||
}
|
||||
diff --git lex/sub3.c lex/sub3.c
|
||||
index 186bcbc..aa07f66 100644
|
||||
--- lex/sub3.c
|
||||
+++ lex/sub3.c
|
||||
@@ -147,7 +147,7 @@ remch(wchar_t c)
|
||||
*/
|
||||
if (!handleeuc) {
|
||||
if (!isascii(c))
|
||||
- if (iswprint(c))
|
||||
+ if (isprint(c))
|
||||
warning(
|
||||
"Non-ASCII character '%lc' in pattern; use -w or -e lex option.", c);
|
||||
else warning(
|
||||
--
|
||||
2.26.2
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -257,14 +257,25 @@ build() {
|
|||
unset extract
|
||||
}
|
||||
|
||||
interpret_source_line() {
|
||||
download_source_line() {
|
||||
url="${1}"
|
||||
checksum="${2}"
|
||||
fname="${3}"
|
||||
# Default to basename of url if not given
|
||||
fname="${fname:-$(basename "${url}")}"
|
||||
if ! [ -e "${fname}" ]; then
|
||||
curl --fail --retry 5 --location "${url}" --output "${fname}"
|
||||
curl --fail --retry 5 --location "${url}" --output "${fname}" || true
|
||||
fi
|
||||
}
|
||||
|
||||
check_source_line() {
|
||||
url="${1}"
|
||||
checksum="${2}"
|
||||
fname="${3}"
|
||||
# Default to basename of url if not given
|
||||
fname="${fname:-$(basename "${url}")}"
|
||||
if ! [ -e "${fname}" ]; then
|
||||
false
|
||||
fi
|
||||
echo "${checksum} ${fname}" > "${fname}.sum"
|
||||
sha256sum -c "${fname}.sum"
|
||||
|
@ -279,7 +290,13 @@ default_src_get() {
|
|||
while read line; do
|
||||
# This is intentional - we want to split out ${line} into separate arguments.
|
||||
# shellcheck disable=SC2086
|
||||
interpret_source_line ${line}
|
||||
download_source_line ${line}
|
||||
done < "${base_dir}/sources"
|
||||
# shellcheck disable=SC2162
|
||||
while read line; do
|
||||
# This is intentional - we want to split out ${line} into separate arguments.
|
||||
# shellcheck disable=SC2086
|
||||
check_source_line ${line}
|
||||
done < "${base_dir}/sources"
|
||||
cd -
|
||||
}
|
||||
|
|
|
@ -9,6 +9,10 @@
|
|||
. /steps/bootstrap.cfg
|
||||
. /steps/env
|
||||
|
||||
if [ -d /steps/after ]; then
|
||||
find /steps/after -maxdepth 1 -name '*.sh' -exec bash {} \;
|
||||
fi
|
||||
|
||||
if [ "${INTERACTIVE}" = True ]; then
|
||||
env - PATH=${PREFIX}/bin PS1="\w # " setsid openvt -fec1 -- bash -i
|
||||
fi
|
||||
|
|
|
@ -1 +1 @@
|
|||
70dc5c96cf3103ce199b7bf225a1dc04d4a25122af13f9840c6865d2c862a881 /usr/bin/kexec-fiwix
|
||||
4c9812c04d3bf98b62a628a17378a36b2a9534eee7b8b0af9d07b087275253a0 /usr/bin/kexec-fiwix
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
http://mirrors.kernel.org/gnu/libtool/libtool-2.4.7.tar.xz 4f7f217f057ce655ff22559ad221a0fd8ef84ad1fc5fcb6990cecc333aa1635d
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-a521820.tar.gz 719b399fe09a8f6ca14ba8c4a9a60ce9f93f4892effb50961ef3d8cd1a33ff65
|
||||
https://files.bootstrapping.world/gnulib-a521820.tar.gz 719b399fe09a8f6ca14ba8c4a9a60ce9f93f4892effb50961ef3d8cd1a33ff65
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
https://mirrors.kernel.org/gnu/libunistring/libunistring-0.9.10.tar.xz eb8fb2c3e4b6e2d336608377050892b54c3c983b646c561836550863003c05d7
|
||||
https://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-52a06cb3.tar.gz 009989b81c0bebc5f6550636ed653fbcb237dafc2af5c706f3522087ca571e4d
|
||||
https://files.bootstrapping.world/gnulib-52a06cb3.tar.gz 009989b81c0bebc5f6550636ed653fbcb237dafc2af5c706f3522087ca571e4d
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
|
||||
|
||||
SPDX-License-Identifier: GPL-2.0-only
|
||||
|
||||
Remove the 68() which I'm not really sure what it does but still works and
|
||||
breaks our version of binutils.
|
||||
|
||||
--- arch/x86/boot/bioscall.S 2021-07-31 17:50:09.519480274 +1000
|
||||
+++ arch/x86/boot/bioscall.S 2021-07-31 18:21:32.086972277 +1000
|
||||
@@ -65,7 +65,7 @@
|
||||
movw %ax, %es
|
||||
|
||||
/* Copy output state from stack frame */
|
||||
- movw 68(%esp), %di /* Original %cx == 3rd argument */
|
||||
+ movw %sp, %di /* Original %cx == 3rd argument */
|
||||
andw %di, %di
|
||||
jz 4f
|
||||
movw %sp, %si
|
|
@ -68,7 +68,7 @@ CONFIG_KERNEL_GZIP=y
|
|||
# CONFIG_KERNEL_XZ is not set
|
||||
# CONFIG_KERNEL_LZO is not set
|
||||
# CONFIG_KERNEL_LZ4 is not set
|
||||
CONFIG_DEFAULT_HOSTNAME="(none)"
|
||||
CONFIG_DEFAULT_HOSTNAME="live-bootstrap"
|
||||
CONFIG_SWAP=y
|
||||
CONFIG_SYSVIPC=y
|
||||
CONFIG_SYSVIPC_SYSCTL=y
|
||||
|
@ -392,7 +392,6 @@ CONFIG_DEFAULT_IOSCHED="cfq"
|
|||
CONFIG_MQ_IOSCHED_DEADLINE=y
|
||||
CONFIG_MQ_IOSCHED_KYBER=y
|
||||
# CONFIG_IOSCHED_BFQ is not set
|
||||
# CONFIG_BFQ_GROUP_IOSCHED is not set
|
||||
CONFIG_ASN1=y
|
||||
CONFIG_UNINLINE_SPIN_UNLOCK=y
|
||||
CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
|
||||
|
@ -413,7 +412,7 @@ CONFIG_SMP=y
|
|||
CONFIG_X86_FEATURE_NAMES=y
|
||||
CONFIG_X86_FAST_FEATURE_TESTS=y
|
||||
CONFIG_X86_MPPARSE=y
|
||||
# CONFIG_X86_BIGSMP is not set
|
||||
CONFIG_X86_BIGSMP=y
|
||||
# CONFIG_GOLDFISH is not set
|
||||
# CONFIG_RETPOLINE is not set
|
||||
# CONFIG_INTEL_RDT is not set
|
||||
|
@ -480,7 +479,7 @@ CONFIG_HPET_EMULATE_RTC=y
|
|||
CONFIG_DMI=y
|
||||
CONFIG_SWIOTLB=y
|
||||
CONFIG_IOMMU_HELPER=y
|
||||
CONFIG_NR_CPUS=8
|
||||
CONFIG_NR_CPUS=64
|
||||
CONFIG_SCHED_SMT=y
|
||||
CONFIG_SCHED_MC=y
|
||||
CONFIG_SCHED_MC_PRIO=y
|
||||
|
@ -529,15 +528,20 @@ CONFIG_X86_PAE=y
|
|||
CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
|
||||
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
|
||||
CONFIG_ARCH_HAS_MEM_ENCRYPT=y
|
||||
CONFIG_NUMA=y
|
||||
# CONFIG_NUMA_EMU is not set
|
||||
CONFIG_NODES_SHIFT=3
|
||||
CONFIG_NEED_NODE_MEMMAP_SIZE=y
|
||||
CONFIG_ARCH_FLATMEM_ENABLE=y
|
||||
CONFIG_ARCH_DISCONTIGMEM_ENABLE=y
|
||||
CONFIG_ARCH_DISCONTIGMEM_DEFAULT=y
|
||||
CONFIG_ARCH_SPARSEMEM_ENABLE=y
|
||||
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
|
||||
CONFIG_ILLEGAL_POINTER_VALUE=0
|
||||
CONFIG_SELECT_MEMORY_MODEL=y
|
||||
# CONFIG_FLATMEM_MANUAL is not set
|
||||
# CONFIG_DISCONTIGMEM_MANUAL is not set
|
||||
CONFIG_SPARSEMEM_MANUAL=y
|
||||
CONFIG_SPARSEMEM=y
|
||||
CONFIG_NEED_MULTIPLE_NODES=y
|
||||
CONFIG_HAVE_MEMORY_PRESENT=y
|
||||
CONFIG_SPARSEMEM_STATIC=y
|
||||
CONFIG_HAVE_MEMBLOCK=y
|
||||
|
@ -622,6 +626,7 @@ CONFIG_HOTPLUG_CPU=y
|
|||
CONFIG_MODIFY_LDT_SYSCALL=y
|
||||
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
|
||||
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
|
||||
CONFIG_USE_PERCPU_NUMA_NODE_ID=y
|
||||
# CONFIG_GDS_FORCE_MITIGATION is not set
|
||||
|
||||
#
|
||||
|
@ -664,6 +669,7 @@ CONFIG_ACPI_PROCESSOR=y
|
|||
CONFIG_ACPI_HOTPLUG_CPU=y
|
||||
# CONFIG_ACPI_PROCESSOR_AGGREGATOR is not set
|
||||
# CONFIG_ACPI_THERMAL is not set
|
||||
# CONFIG_ACPI_NUMA is not set
|
||||
# CONFIG_ACPI_CUSTOM_DSDT is not set
|
||||
CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y
|
||||
CONFIG_ACPI_TABLE_UPGRADE=y
|
||||
|
@ -840,7 +846,6 @@ CONFIG_COREDUMP=y
|
|||
CONFIG_COMPAT_32=y
|
||||
CONFIG_HAVE_ATOMIC_IOMAP=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_NET_INGRESS=y
|
||||
|
||||
#
|
||||
# Networking options
|
||||
|
@ -864,10 +869,7 @@ CONFIG_IP_ROUTE_VERBOSE=y
|
|||
# CONFIG_NET_IPIP is not set
|
||||
# CONFIG_NET_IPGRE_DEMUX is not set
|
||||
# CONFIG_NET_IP_TUNNEL is not set
|
||||
CONFIG_IP_MROUTE=y
|
||||
CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
|
||||
CONFIG_IP_PIMSM_V1=y
|
||||
CONFIG_IP_PIMSM_V2=y
|
||||
# CONFIG_IP_MROUTE is not set
|
||||
CONFIG_SYN_COOKIES=y
|
||||
# CONFIG_NET_UDP_TUNNEL is not set
|
||||
# CONFIG_NET_FOU is not set
|
||||
|
@ -913,7 +915,6 @@ CONFIG_IPV6_OPTIMISTIC_DAD=y
|
|||
# CONFIG_INET6_ESP is not set
|
||||
# CONFIG_INET6_IPCOMP is not set
|
||||
# CONFIG_IPV6_MIP6 is not set
|
||||
# CONFIG_IPV6_ILA is not set
|
||||
# CONFIG_INET6_XFRM_TUNNEL is not set
|
||||
# CONFIG_INET6_TUNNEL is not set
|
||||
# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set
|
||||
|
@ -933,44 +934,7 @@ CONFIG_IPV6_SUBTREES=y
|
|||
CONFIG_NETWORK_SECMARK=y
|
||||
CONFIG_NET_PTP_CLASSIFY=y
|
||||
# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
|
||||
CONFIG_NETFILTER=y
|
||||
CONFIG_NETFILTER_ADVANCED=y
|
||||
|
||||
#
|
||||
# Core Netfilter Configuration
|
||||
#
|
||||
CONFIG_NETFILTER_INGRESS=y
|
||||
# CONFIG_NETFILTER_NETLINK_ACCT is not set
|
||||
# CONFIG_NETFILTER_NETLINK_QUEUE is not set
|
||||
# CONFIG_NETFILTER_NETLINK_LOG is not set
|
||||
# CONFIG_NF_CONNTRACK is not set
|
||||
# CONFIG_NF_LOG_NETDEV is not set
|
||||
# CONFIG_NF_TABLES is not set
|
||||
# CONFIG_NETFILTER_XTABLES is not set
|
||||
# CONFIG_IP_SET is not set
|
||||
# CONFIG_IP_VS is not set
|
||||
|
||||
#
|
||||
# IP: Netfilter Configuration
|
||||
#
|
||||
# CONFIG_NF_DEFRAG_IPV4 is not set
|
||||
# CONFIG_NF_SOCKET_IPV4 is not set
|
||||
# CONFIG_NF_DUP_IPV4 is not set
|
||||
# CONFIG_NF_LOG_ARP is not set
|
||||
# CONFIG_NF_LOG_IPV4 is not set
|
||||
# CONFIG_NF_REJECT_IPV4 is not set
|
||||
# CONFIG_IP_NF_IPTABLES is not set
|
||||
# CONFIG_IP_NF_ARPTABLES is not set
|
||||
|
||||
#
|
||||
# IPv6: Netfilter Configuration
|
||||
#
|
||||
# CONFIG_NF_DEFRAG_IPV6 is not set
|
||||
# CONFIG_NF_SOCKET_IPV6 is not set
|
||||
# CONFIG_NF_DUP_IPV6 is not set
|
||||
# CONFIG_NF_REJECT_IPV6 is not set
|
||||
# CONFIG_NF_LOG_IPV6 is not set
|
||||
# CONFIG_IP6_NF_IPTABLES is not set
|
||||
# CONFIG_NETFILTER is not set
|
||||
# CONFIG_IP_DCCP is not set
|
||||
# CONFIG_IP_SCTP is not set
|
||||
# CONFIG_RDS is not set
|
||||
|
@ -989,80 +953,18 @@ CONFIG_HAVE_NET_DSA=y
|
|||
# CONFIG_PHONET is not set
|
||||
# CONFIG_6LOWPAN is not set
|
||||
# CONFIG_IEEE802154 is not set
|
||||
CONFIG_NET_SCHED=y
|
||||
|
||||
#
|
||||
# Queueing/Scheduling
|
||||
#
|
||||
# CONFIG_NET_SCH_CBQ is not set
|
||||
# CONFIG_NET_SCH_HTB is not set
|
||||
# CONFIG_NET_SCH_HFSC is not set
|
||||
# CONFIG_NET_SCH_PRIO is not set
|
||||
# CONFIG_NET_SCH_MULTIQ is not set
|
||||
# CONFIG_NET_SCH_RED is not set
|
||||
# CONFIG_NET_SCH_SFB is not set
|
||||
# CONFIG_NET_SCH_SFQ is not set
|
||||
# CONFIG_NET_SCH_TEQL is not set
|
||||
# CONFIG_NET_SCH_TBF is not set
|
||||
# CONFIG_NET_SCH_GRED is not set
|
||||
# CONFIG_NET_SCH_DSMARK is not set
|
||||
# CONFIG_NET_SCH_NETEM is not set
|
||||
# CONFIG_NET_SCH_DRR is not set
|
||||
# CONFIG_NET_SCH_MQPRIO is not set
|
||||
# CONFIG_NET_SCH_CHOKE is not set
|
||||
# CONFIG_NET_SCH_QFQ is not set
|
||||
# CONFIG_NET_SCH_CODEL is not set
|
||||
# CONFIG_NET_SCH_FQ_CODEL is not set
|
||||
# CONFIG_NET_SCH_FQ is not set
|
||||
# CONFIG_NET_SCH_HHF is not set
|
||||
# CONFIG_NET_SCH_PIE is not set
|
||||
# CONFIG_NET_SCH_INGRESS is not set
|
||||
# CONFIG_NET_SCH_PLUG is not set
|
||||
# CONFIG_NET_SCH_DEFAULT is not set
|
||||
|
||||
#
|
||||
# Classification
|
||||
#
|
||||
CONFIG_NET_CLS=y
|
||||
# CONFIG_NET_CLS_BASIC is not set
|
||||
# CONFIG_NET_CLS_ROUTE4 is not set
|
||||
# CONFIG_NET_CLS_FW is not set
|
||||
# CONFIG_NET_CLS_U32 is not set
|
||||
# CONFIG_NET_CLS_FLOW is not set
|
||||
# CONFIG_NET_CLS_CGROUP is not set
|
||||
# CONFIG_NET_CLS_BPF is not set
|
||||
# CONFIG_NET_CLS_FLOWER is not set
|
||||
# CONFIG_NET_CLS_MATCHALL is not set
|
||||
# CONFIG_NET_EMATCH is not set
|
||||
CONFIG_NET_CLS_ACT=y
|
||||
# CONFIG_NET_ACT_POLICE is not set
|
||||
# CONFIG_NET_ACT_GACT is not set
|
||||
# CONFIG_NET_ACT_MIRRED is not set
|
||||
# CONFIG_NET_ACT_SAMPLE is not set
|
||||
# CONFIG_NET_ACT_NAT is not set
|
||||
# CONFIG_NET_ACT_PEDIT is not set
|
||||
# CONFIG_NET_ACT_SIMP is not set
|
||||
# CONFIG_NET_ACT_SKBEDIT is not set
|
||||
# CONFIG_NET_ACT_CSUM is not set
|
||||
# CONFIG_NET_ACT_VLAN is not set
|
||||
# CONFIG_NET_ACT_BPF is not set
|
||||
# CONFIG_NET_ACT_SKBMOD is not set
|
||||
# CONFIG_NET_ACT_IFE is not set
|
||||
# CONFIG_NET_ACT_TUNNEL_KEY is not set
|
||||
CONFIG_NET_SCH_FIFO=y
|
||||
CONFIG_DCB=y
|
||||
# CONFIG_NET_SCHED is not set
|
||||
# CONFIG_DCB is not set
|
||||
CONFIG_DNS_RESOLVER=y
|
||||
# CONFIG_BATMAN_ADV is not set
|
||||
# CONFIG_OPENVSWITCH is not set
|
||||
# CONFIG_VSOCKETS is not set
|
||||
# CONFIG_NETLINK_DIAG is not set
|
||||
CONFIG_MPLS=y
|
||||
# CONFIG_NET_MPLS_GSO is not set
|
||||
# CONFIG_MPLS_ROUTING is not set
|
||||
# CONFIG_MPLS is not set
|
||||
# CONFIG_NET_NSH is not set
|
||||
# CONFIG_HSR is not set
|
||||
CONFIG_NET_SWITCHDEV=y
|
||||
CONFIG_NET_L3_MASTER_DEV=y
|
||||
# CONFIG_NET_SWITCHDEV is not set
|
||||
# CONFIG_NET_L3_MASTER_DEV is not set
|
||||
# CONFIG_NET_NCSI is not set
|
||||
CONFIG_RPS=y
|
||||
CONFIG_RFS_ACCEL=y
|
||||
|
@ -1101,8 +1003,7 @@ CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
|
|||
# CONFIG_NFC is not set
|
||||
# CONFIG_PSAMPLE is not set
|
||||
# CONFIG_NET_IFE is not set
|
||||
CONFIG_LWTUNNEL=y
|
||||
CONFIG_LWTUNNEL_BPF=y
|
||||
# CONFIG_LWTUNNEL is not set
|
||||
# CONFIG_DST_CACHE is not set
|
||||
# CONFIG_GRO_CELLS is not set
|
||||
# CONFIG_NET_DEVLINK is not set
|
||||
|
@ -1415,10 +1316,7 @@ CONFIG_PATA_MPIIX=y
|
|||
CONFIG_PATA_ACPI=y
|
||||
CONFIG_ATA_GENERIC=y
|
||||
CONFIG_PATA_LEGACY=y
|
||||
CONFIG_MD=y
|
||||
# CONFIG_BLK_DEV_MD is not set
|
||||
# CONFIG_BCACHE is not set
|
||||
# CONFIG_BLK_DEV_DM is not set
|
||||
# CONFIG_MD is not set
|
||||
# CONFIG_TARGET_CORE is not set
|
||||
CONFIG_FUSION=y
|
||||
# CONFIG_FUSION_SPI is not set
|
||||
|
@ -1440,10 +1338,8 @@ CONFIG_NET_CORE=y
|
|||
# CONFIG_DUMMY is not set
|
||||
# CONFIG_EQUALIZER is not set
|
||||
# CONFIG_NET_FC is not set
|
||||
# CONFIG_IFB is not set
|
||||
# CONFIG_NET_TEAM is not set
|
||||
# CONFIG_MACVLAN is not set
|
||||
# CONFIG_IPVLAN is not set
|
||||
# CONFIG_VXLAN is not set
|
||||
# CONFIG_GTP is not set
|
||||
# CONFIG_MACSEC is not set
|
||||
|
@ -1454,7 +1350,6 @@ CONFIG_NET_CORE=y
|
|||
CONFIG_TUN_VNET_CROSS_LE=y
|
||||
# CONFIG_VETH is not set
|
||||
# CONFIG_NLMON is not set
|
||||
# CONFIG_NET_VRF is not set
|
||||
CONFIG_SUNGEM_PHY=y
|
||||
# CONFIG_ARCNET is not set
|
||||
|
||||
|
@ -1486,7 +1381,6 @@ CONFIG_NET_VENDOR_AMD=y
|
|||
CONFIG_AMD8111_ETH=y
|
||||
CONFIG_PCNET32=y
|
||||
CONFIG_AMD_XGBE=y
|
||||
# CONFIG_AMD_XGBE_DCB is not set
|
||||
CONFIG_AMD_XGBE_HAVE_ECC=y
|
||||
CONFIG_NET_VENDOR_AQUANTIA=y
|
||||
CONFIG_NET_VENDOR_ARC=y
|
||||
|
@ -1514,7 +1408,6 @@ CONFIG_BNX2X_SRIOV=y
|
|||
CONFIG_BNXT=y
|
||||
# CONFIG_BNXT_SRIOV is not set
|
||||
CONFIG_BNXT_FLOWER_OFFLOAD=y
|
||||
# CONFIG_BNXT_DCB is not set
|
||||
CONFIG_NET_VENDOR_BROCADE=y
|
||||
CONFIG_BNA=y
|
||||
CONFIG_NET_VENDOR_CAVIUM=y
|
||||
|
@ -1567,10 +1460,8 @@ CONFIG_IGBVF=y
|
|||
CONFIG_IXGB=y
|
||||
CONFIG_IXGBE=y
|
||||
CONFIG_IXGBE_HWMON=y
|
||||
# CONFIG_IXGBE_DCB is not set
|
||||
CONFIG_IXGBEVF=y
|
||||
CONFIG_I40E=y
|
||||
# CONFIG_I40E_DCB is not set
|
||||
CONFIG_I40EVF=y
|
||||
CONFIG_FM10K=y
|
||||
CONFIG_NET_VENDOR_I825XX=y
|
||||
|
@ -1585,15 +1476,12 @@ CONFIG_SKY2=y
|
|||
# CONFIG_SKY2_DEBUG is not set
|
||||
CONFIG_NET_VENDOR_MELLANOX=y
|
||||
CONFIG_MLX4_EN=y
|
||||
# CONFIG_MLX4_EN_DCB is not set
|
||||
CONFIG_MLX4_CORE=y
|
||||
CONFIG_MLX4_DEBUG=y
|
||||
CONFIG_MLX5_CORE=y
|
||||
# CONFIG_MLX5_FPGA is not set
|
||||
CONFIG_MLX5_CORE_EN=y
|
||||
CONFIG_MLX5_MPFS=y
|
||||
CONFIG_MLX5_ESWITCH=y
|
||||
# CONFIG_MLX5_CORE_EN_DCB is not set
|
||||
# CONFIG_MLX5_CORE_IPOIB is not set
|
||||
# CONFIG_MLXSW_CORE is not set
|
||||
# CONFIG_MLXFW is not set
|
||||
|
@ -1613,7 +1501,6 @@ CONFIG_NATSEMI=y
|
|||
CONFIG_NS83820=y
|
||||
CONFIG_NET_VENDOR_NETRONOME=y
|
||||
CONFIG_NFP=y
|
||||
CONFIG_NFP_APP_FLOWER=y
|
||||
# CONFIG_NFP_DEBUG is not set
|
||||
CONFIG_NET_VENDOR_8390=y
|
||||
CONFIG_NE2K_PCI=y
|
||||
|
@ -1629,7 +1516,6 @@ CONFIG_NET_VENDOR_QLOGIC=y
|
|||
CONFIG_QLA3XXX=y
|
||||
CONFIG_QLCNIC=y
|
||||
CONFIG_QLCNIC_SRIOV=y
|
||||
# CONFIG_QLCNIC_DCB is not set
|
||||
CONFIG_QLCNIC_HWMON=y
|
||||
CONFIG_QLGE=y
|
||||
CONFIG_NETXEN_NIC=y
|
||||
|
@ -1785,28 +1671,7 @@ CONFIG_USB_IPHETH=y
|
|||
# CONFIG_USB_SIERRA_NET is not set
|
||||
# CONFIG_USB_VL600 is not set
|
||||
CONFIG_USB_NET_CH9200=y
|
||||
CONFIG_WLAN=y
|
||||
# CONFIG_WIRELESS_WDS is not set
|
||||
CONFIG_WLAN_VENDOR_ADMTEK=y
|
||||
CONFIG_WLAN_VENDOR_ATH=y
|
||||
# CONFIG_ATH_DEBUG is not set
|
||||
CONFIG_ATH5K_PCI=y
|
||||
CONFIG_WLAN_VENDOR_ATMEL=y
|
||||
CONFIG_WLAN_VENDOR_BROADCOM=y
|
||||
CONFIG_WLAN_VENDOR_CISCO=y
|
||||
CONFIG_WLAN_VENDOR_INTEL=y
|
||||
CONFIG_WLAN_VENDOR_INTERSIL=y
|
||||
# CONFIG_HOSTAP is not set
|
||||
# CONFIG_PRISM54 is not set
|
||||
CONFIG_WLAN_VENDOR_MARVELL=y
|
||||
CONFIG_WLAN_VENDOR_MEDIATEK=y
|
||||
CONFIG_WLAN_VENDOR_RALINK=y
|
||||
CONFIG_WLAN_VENDOR_REALTEK=y
|
||||
CONFIG_WLAN_VENDOR_RSI=y
|
||||
CONFIG_WLAN_VENDOR_ST=y
|
||||
CONFIG_WLAN_VENDOR_TI=y
|
||||
CONFIG_WLAN_VENDOR_ZYDAS=y
|
||||
CONFIG_WLAN_VENDOR_QUANTENNA=y
|
||||
# CONFIG_WLAN is not set
|
||||
|
||||
#
|
||||
# Enable WiMAX (Networking options) to see the WiMAX drivers
|
||||
|
@ -2806,13 +2671,23 @@ CONFIG_DRM_TTM=y
|
|||
CONFIG_DRM_I2C_CH7006=y
|
||||
CONFIG_DRM_I2C_SIL164=y
|
||||
CONFIG_DRM_I2C_NXP_TDA998X=y
|
||||
# CONFIG_DRM_RADEON is not set
|
||||
# CONFIG_DRM_AMDGPU is not set
|
||||
CONFIG_DRM_RADEON=y
|
||||
# CONFIG_DRM_RADEON_USERPTR is not set
|
||||
CONFIG_DRM_AMDGPU=y
|
||||
# CONFIG_DRM_AMDGPU_SI is not set
|
||||
# CONFIG_DRM_AMDGPU_CIK is not set
|
||||
# CONFIG_DRM_AMDGPU_USERPTR is not set
|
||||
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
|
||||
|
||||
#
|
||||
# ACP (Audio CoProcessor) Configuration
|
||||
#
|
||||
# CONFIG_DRM_NOUVEAU is not set
|
||||
# CONFIG_DRM_AMD_ACP is not set
|
||||
CONFIG_DRM_NOUVEAU=y
|
||||
# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
|
||||
CONFIG_NOUVEAU_DEBUG=5
|
||||
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
|
||||
# CONFIG_DRM_NOUVEAU_BACKLIGHT is not set
|
||||
CONFIG_DRM_I915=y
|
||||
# CONFIG_DRM_I915_ALPHA_SUPPORT is not set
|
||||
# CONFIG_DRM_I915_CAPTURE_ERROR is not set
|
||||
|
@ -2900,10 +2775,7 @@ CONFIG_FB_EFI=y
|
|||
# CONFIG_FB_HGA is not set
|
||||
# CONFIG_FB_OPENCORES is not set
|
||||
# CONFIG_FB_S1D13XXX is not set
|
||||
CONFIG_FB_NVIDIA=y
|
||||
CONFIG_FB_NVIDIA_I2C=y
|
||||
# CONFIG_FB_NVIDIA_DEBUG is not set
|
||||
CONFIG_FB_NVIDIA_BACKLIGHT=y
|
||||
# CONFIG_FB_NVIDIA is not set
|
||||
CONFIG_FB_RIVA=y
|
||||
CONFIG_FB_RIVA_I2C=y
|
||||
# CONFIG_FB_RIVA_DEBUG is not set
|
||||
|
@ -2914,10 +2786,7 @@ CONFIG_FB_I810=y
|
|||
CONFIG_FB_LE80578=y
|
||||
CONFIG_FB_CARILLO_RANCH=y
|
||||
# CONFIG_FB_MATROX is not set
|
||||
CONFIG_FB_RADEON=y
|
||||
CONFIG_FB_RADEON_I2C=y
|
||||
CONFIG_FB_RADEON_BACKLIGHT=y
|
||||
# CONFIG_FB_RADEON_DEBUG is not set
|
||||
# CONFIG_FB_RADEON is not set
|
||||
CONFIG_FB_ATY128=y
|
||||
CONFIG_FB_ATY128_BACKLIGHT=y
|
||||
CONFIG_FB_ATY=y
|
||||
|
@ -3499,7 +3368,6 @@ CONFIG_VIRT_DRIVERS=y
|
|||
CONFIG_STAGING=y
|
||||
# CONFIG_IRDA is not set
|
||||
# CONFIG_COMEDI is not set
|
||||
# CONFIG_R8712U is not set
|
||||
# CONFIG_RTS5208 is not set
|
||||
# CONFIG_FB_SM750 is not set
|
||||
# CONFIG_FB_XGI is not set
|
||||
|
@ -3529,23 +3397,36 @@ CONFIG_TYPEC_FUSB302=y
|
|||
# CONFIG_DRM_VBOXVIDEO is not set
|
||||
# CONFIG_PI433 is not set
|
||||
CONFIG_X86_PLATFORM_DEVICES=y
|
||||
# CONFIG_ACER_WMI is not set
|
||||
# CONFIG_ACERHDF is not set
|
||||
# CONFIG_ALIENWARE_WMI is not set
|
||||
# CONFIG_ASUS_LAPTOP is not set
|
||||
# CONFIG_DELL_LAPTOP is not set
|
||||
# CONFIG_DELL_WMI is not set
|
||||
# CONFIG_DELL_WMI_AIO is not set
|
||||
# CONFIG_DELL_WMI_LED is not set
|
||||
# CONFIG_DELL_SMO8800 is not set
|
||||
# CONFIG_FUJITSU_LAPTOP is not set
|
||||
# CONFIG_FUJITSU_TABLET is not set
|
||||
# CONFIG_TC1100_WMI is not set
|
||||
# CONFIG_HP_ACCEL is not set
|
||||
# CONFIG_HP_WIRELESS is not set
|
||||
# CONFIG_HP_WMI is not set
|
||||
# CONFIG_PANASONIC_LAPTOP is not set
|
||||
# CONFIG_SURFACE3_WMI is not set
|
||||
# CONFIG_THINKPAD_ACPI is not set
|
||||
# CONFIG_SENSORS_HDAPS is not set
|
||||
# CONFIG_EEEPC_LAPTOP is not set
|
||||
# CONFIG_ASUS_WMI is not set
|
||||
# CONFIG_ASUS_WIRELESS is not set
|
||||
# CONFIG_ACPI_WMI is not set
|
||||
CONFIG_ACPI_WMI=y
|
||||
CONFIG_WMI_BMOF=y
|
||||
# CONFIG_MSI_WMI is not set
|
||||
# CONFIG_PEAQ_WMI is not set
|
||||
# CONFIG_TOPSTAR_LAPTOP is not set
|
||||
# CONFIG_TOSHIBA_BT_RFKILL is not set
|
||||
# CONFIG_TOSHIBA_HAPS is not set
|
||||
# CONFIG_TOSHIBA_WMI is not set
|
||||
# CONFIG_ACPI_CMPC is not set
|
||||
# CONFIG_INTEL_CHT_INT33FE is not set
|
||||
# CONFIG_INTEL_INT0002_VGPIO is not set
|
||||
|
@ -3555,6 +3436,7 @@ CONFIG_X86_PLATFORM_DEVICES=y
|
|||
CONFIG_INTEL_PMC_CORE=y
|
||||
# CONFIG_IBM_RTL is not set
|
||||
# CONFIG_SAMSUNG_LAPTOP is not set
|
||||
CONFIG_MXM_WMI=y
|
||||
# CONFIG_SAMSUNG_Q10 is not set
|
||||
# CONFIG_APPLE_GMUX is not set
|
||||
# CONFIG_INTEL_RST is not set
|
||||
|
@ -4350,10 +4232,7 @@ CONFIG_PKCS7_MESSAGE_PARSER=y
|
|||
# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
|
||||
# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
|
||||
CONFIG_HAVE_KVM=y
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
# CONFIG_KVM is not set
|
||||
# CONFIG_VHOST_NET is not set
|
||||
CONFIG_VHOST_CROSS_ENDIAN_LEGACY=y
|
||||
# CONFIG_VIRTUALIZATION is not set
|
||||
# CONFIG_BINARY_PRINTF is not set
|
||||
|
||||
#
|
|
@ -1,12 +1,15 @@
|
|||
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
|
||||
# SPDX-FileCopyrightText: 2022 Andrius Štikonas <andrius@stikonas.eu>
|
||||
# SPDX-FileCopyrightText: 2024 Gábor Stefanik <netrolller.3d@gmail.com>
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
dirname=linux-4.14.336
|
||||
|
||||
src_unpack() {
|
||||
mkdir "${pkg}"
|
||||
mkdir "linux-4.14.336"
|
||||
default || true # Predictable link errors - not a problem
|
||||
rm "${DISTFILES}/${pkg}.tar.xz"
|
||||
rm "${DISTFILES}/linux-4.14.336.tar.xz"
|
||||
}
|
||||
|
||||
generate_autoconf_h() {
|
||||
|
@ -43,10 +46,19 @@ src_compile() {
|
|||
|
||||
# Allow use of patched initramfs_list.sh (which is required anyway)
|
||||
make "${MAKEJOBS}" ARCH=i386 prepare
|
||||
PATH="${PWD}/usr:${PATH}" make "${MAKEJOBS}" ARCH=i386
|
||||
|
||||
# Build just the vmlinux, because a full build will not fit our ramdisk
|
||||
PATH="${PWD}/usr:${PATH}" make "${MAKEJOBS}" ARCH=i386 vmlinux
|
||||
|
||||
# Clear up more space
|
||||
find . -name '*.o' -not -path './drivers/firmware/efi/libstub/*' -delete
|
||||
|
||||
# Now that we have space, build bzImage, taking care not to rebuild what we've just deleted
|
||||
PATH="${PWD}/usr:${PATH}" make "${MAKEJOBS}" ARCH=i386 -o vmlinux bzImage
|
||||
|
||||
# Clear up one more time
|
||||
find . -name '*.o' -delete
|
||||
rm vmlinux
|
||||
}
|
||||
|
||||
src_install() {
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,447 @@
|
|||
SPDX-FileCopyrightText: 1991-2024 kernel.org contributors
|
||||
SPDX-FileCopyrightText: 2023-2024 Open Enterprise Linux Association <kernel-lts@openela.org>
|
||||
|
||||
SPDX-License-Identifier: GPL-2.0-only
|
||||
|
||||
Patch kernel headers up to 4.14.341-openela
|
||||
|
||||
diff --git include/crypto/if_alg.h include/crypto/if_alg.h
|
||||
index 2ea6a95ca825..f803dc8c45ad 100644
|
||||
--- include/crypto/if_alg.h
|
||||
+++ include/crypto/if_alg.h
|
||||
@@ -146,6 +146,7 @@ struct af_alg_async_req {
|
||||
* @enc: Cryptographic operation to be performed when
|
||||
* recvmsg is invoked.
|
||||
* @len: Length of memory allocated for this data structure.
|
||||
+ * @inflight: Non-zero when AIO requests are in flight.
|
||||
*/
|
||||
struct af_alg_ctx {
|
||||
struct list_head tsgl_list;
|
||||
@@ -163,6 +164,8 @@ struct af_alg_ctx {
|
||||
bool enc;
|
||||
|
||||
unsigned int len;
|
||||
+
|
||||
+ unsigned int inflight;
|
||||
};
|
||||
|
||||
int af_alg_register_type(const struct af_alg_type *type);
|
||||
diff --git include/drm/drm_bridge.h include/drm/drm_bridge.h
|
||||
index 6522d4cbc9d9..bfbd38c0b609 100644
|
||||
--- include/drm/drm_bridge.h
|
||||
+++ include/drm/drm_bridge.h
|
||||
@@ -161,7 +161,7 @@ struct drm_bridge_funcs {
|
||||
* or &drm_encoder_helper_funcs.dpms hook.
|
||||
*
|
||||
* The bridge must assume that the display pipe (i.e. clocks and timing
|
||||
- * singals) feeding it is no longer running when this callback is
|
||||
+ * signals) feeding it is no longer running when this callback is
|
||||
* called.
|
||||
*
|
||||
* The post_disable callback is optional.
|
||||
diff --git include/drm/drm_mipi_dsi.h include/drm/drm_mipi_dsi.h
|
||||
index 689f615471ab..a059f1d968b7 100644
|
||||
--- include/drm/drm_mipi_dsi.h
|
||||
+++ include/drm/drm_mipi_dsi.h
|
||||
@@ -163,6 +163,7 @@ struct mipi_dsi_device_info {
|
||||
* struct mipi_dsi_device - DSI peripheral device
|
||||
* @host: DSI host for this peripheral
|
||||
* @dev: driver model device node for this peripheral
|
||||
+ * @attached: the DSI device has been successfully attached
|
||||
* @name: DSI peripheral chip type
|
||||
* @channel: virtual channel assigned to the peripheral
|
||||
* @format: pixel format for video mode
|
||||
@@ -172,6 +173,7 @@ struct mipi_dsi_device_info {
|
||||
struct mipi_dsi_device {
|
||||
struct mipi_dsi_host *host;
|
||||
struct device dev;
|
||||
+ bool attached;
|
||||
|
||||
char name[DSI_DEV_NAME_SIZE];
|
||||
unsigned int channel;
|
||||
diff --git include/linux/bpf.h include/linux/bpf.h
|
||||
index 3aa05ea79ba1..0d7a61df056b 100644
|
||||
--- include/linux/bpf.h
|
||||
+++ include/linux/bpf.h
|
||||
@@ -38,7 +38,11 @@ struct bpf_map_ops {
|
||||
/* funcs called by prog_array and perf_event_array map */
|
||||
void *(*map_fd_get_ptr)(struct bpf_map *map, struct file *map_file,
|
||||
int fd);
|
||||
- void (*map_fd_put_ptr)(void *ptr);
|
||||
+ /* If need_defer is true, the implementation should guarantee that
|
||||
+ * the to-be-put element is still alive before the bpf program, which
|
||||
+ * may manipulate it, exists.
|
||||
+ */
|
||||
+ void (*map_fd_put_ptr)(struct bpf_map *map, void *ptr, bool need_defer);
|
||||
u32 (*map_gen_lookup)(struct bpf_map *map, struct bpf_insn *insn_buf);
|
||||
u32 (*map_fd_sys_lookup_elem)(void *ptr);
|
||||
};
|
||||
diff --git include/linux/device.h include/linux/device.h
|
||||
index 65e06a066b67..27b70b810463 100644
|
||||
--- include/linux/device.h
|
||||
+++ include/linux/device.h
|
||||
@@ -1474,6 +1474,9 @@ do { \
|
||||
WARN_ONCE(condition, "%s %s: " format, \
|
||||
dev_driver_string(dev), dev_name(dev), ## arg)
|
||||
|
||||
+extern __printf(3, 4)
|
||||
+int dev_err_probe(const struct device *dev, int err, const char *fmt, ...);
|
||||
+
|
||||
/* Create alias, so I can be autoloaded. */
|
||||
#define MODULE_ALIAS_CHARDEV(major,minor) \
|
||||
MODULE_ALIAS("char-major-" __stringify(major) "-" __stringify(minor))
|
||||
diff --git include/linux/dmaengine.h include/linux/dmaengine.h
|
||||
index 8089e28539f1..d5a7d320e05c 100644
|
||||
--- include/linux/dmaengine.h
|
||||
+++ include/linux/dmaengine.h
|
||||
@@ -816,7 +816,8 @@ static inline int dmaengine_slave_config(struct dma_chan *chan,
|
||||
|
||||
static inline bool is_slave_direction(enum dma_transfer_direction direction)
|
||||
{
|
||||
- return (direction == DMA_MEM_TO_DEV) || (direction == DMA_DEV_TO_MEM);
|
||||
+ return (direction == DMA_MEM_TO_DEV) || (direction == DMA_DEV_TO_MEM) ||
|
||||
+ (direction == DMA_DEV_TO_DEV);
|
||||
}
|
||||
|
||||
static inline struct dma_async_tx_descriptor *dmaengine_prep_slave_single(
|
||||
diff --git include/linux/fs.h include/linux/fs.h
|
||||
index ff0a992846a3..bd6072556269 100644
|
||||
--- include/linux/fs.h
|
||||
+++ include/linux/fs.h
|
||||
@@ -296,6 +296,8 @@ enum rw_hint {
|
||||
#define IOCB_SYNC (1 << 5)
|
||||
#define IOCB_WRITE (1 << 6)
|
||||
#define IOCB_NOWAIT (1 << 7)
|
||||
+/* kiocb is a read or write operation submitted by fs/aio.c. */
|
||||
+#define IOCB_AIO_RW (1 << 23)
|
||||
|
||||
struct kiocb {
|
||||
struct file *ki_filp;
|
||||
diff --git include/linux/lsm_hooks.h include/linux/lsm_hooks.h
|
||||
index 569debc49f3d..28ff40daccff 100644
|
||||
--- include/linux/lsm_hooks.h
|
||||
+++ include/linux/lsm_hooks.h
|
||||
@@ -466,6 +466,12 @@
|
||||
* simple integer value. When @arg represents a user space pointer, it
|
||||
* should never be used by the security module.
|
||||
* Return 0 if permission is granted.
|
||||
+ * @file_ioctl_compat:
|
||||
+ * @file contains the file structure.
|
||||
+ * @cmd contains the operation to perform.
|
||||
+ * @arg contains the operational arguments.
|
||||
+ * Check permission for a compat ioctl operation on @file.
|
||||
+ * Return 0 if permission is granted.
|
||||
* @mmap_addr :
|
||||
* Check permissions for a mmap operation at @addr.
|
||||
* @addr contains virtual address that will be used for the operation.
|
||||
@@ -1486,6 +1492,8 @@ union security_list_options {
|
||||
void (*file_free_security)(struct file *file);
|
||||
int (*file_ioctl)(struct file *file, unsigned int cmd,
|
||||
unsigned long arg);
|
||||
+ int (*file_ioctl_compat)(struct file *file, unsigned int cmd,
|
||||
+ unsigned long arg);
|
||||
int (*mmap_addr)(unsigned long addr);
|
||||
int (*mmap_file)(struct file *file, unsigned long reqprot,
|
||||
unsigned long prot, unsigned long flags);
|
||||
@@ -1764,6 +1772,7 @@ struct security_hook_heads {
|
||||
struct list_head file_alloc_security;
|
||||
struct list_head file_free_security;
|
||||
struct list_head file_ioctl;
|
||||
+ struct list_head file_ioctl_compat;
|
||||
struct list_head mmap_addr;
|
||||
struct list_head mmap_file;
|
||||
struct list_head file_mprotect;
|
||||
diff --git include/linux/pci_ids.h include/linux/pci_ids.h
|
||||
index 83f576d45d78..c977e636a1dd 100644
|
||||
--- include/linux/pci_ids.h
|
||||
+++ include/linux/pci_ids.h
|
||||
@@ -2953,6 +2953,7 @@
|
||||
#define PCI_DEVICE_ID_INTEL_82443GX_0 0x71a0
|
||||
#define PCI_DEVICE_ID_INTEL_82443GX_2 0x71a2
|
||||
#define PCI_DEVICE_ID_INTEL_82372FB_1 0x7601
|
||||
+#define PCI_DEVICE_ID_INTEL_HDA_ARL 0x7728
|
||||
#define PCI_DEVICE_ID_INTEL_SCH_LPC 0x8119
|
||||
#define PCI_DEVICE_ID_INTEL_SCH_IDE 0x811a
|
||||
#define PCI_DEVICE_ID_INTEL_E6XX_CU 0x8183
|
||||
diff --git include/linux/security.h include/linux/security.h
|
||||
index 1c8968a267c2..cf77cd971795 100644
|
||||
--- include/linux/security.h
|
||||
+++ include/linux/security.h
|
||||
@@ -306,6 +306,8 @@ int security_file_permission(struct file *file, int mask);
|
||||
int security_file_alloc(struct file *file);
|
||||
void security_file_free(struct file *file);
|
||||
int security_file_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
|
||||
+int security_file_ioctl_compat(struct file *file, unsigned int cmd,
|
||||
+ unsigned long arg);
|
||||
int security_mmap_file(struct file *file, unsigned long prot,
|
||||
unsigned long flags);
|
||||
int security_mmap_addr(unsigned long addr);
|
||||
@@ -827,6 +829,13 @@ static inline int security_file_ioctl(struct file *file, unsigned int cmd,
|
||||
return 0;
|
||||
}
|
||||
|
||||
+static inline int security_file_ioctl_compat(struct file *file,
|
||||
+ unsigned int cmd,
|
||||
+ unsigned long arg)
|
||||
+{
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static inline int security_mmap_file(struct file *file, unsigned long prot,
|
||||
unsigned long flags)
|
||||
{
|
||||
diff --git include/linux/spi/spi.h include/linux/spi/spi.h
|
||||
index a8f6606dd498..5c7741ca3b99 100644
|
||||
--- include/linux/spi/spi.h
|
||||
+++ include/linux/spi/spi.h
|
||||
@@ -153,6 +153,7 @@ struct spi_device {
|
||||
#define SPI_MODE_1 (0|SPI_CPHA)
|
||||
#define SPI_MODE_2 (SPI_CPOL|0)
|
||||
#define SPI_MODE_3 (SPI_CPOL|SPI_CPHA)
|
||||
+#define SPI_MODE_X_MASK (SPI_CPOL|SPI_CPHA)
|
||||
#define SPI_CS_HIGH 0x04 /* chipselect active high? */
|
||||
#define SPI_LSB_FIRST 0x08 /* per-word bits-on-wire */
|
||||
#define SPI_3WIRE 0x10 /* SI/SO signals shared */
|
||||
diff --git include/linux/units.h include/linux/units.h
|
||||
new file mode 100644
|
||||
index 000000000000..a0af6d2ef4e5
|
||||
--- /dev/null
|
||||
+++ include/linux/units.h
|
||||
@@ -0,0 +1,92 @@
|
||||
+/* SPDX-License-Identifier: GPL-2.0 */
|
||||
+#ifndef _LINUX_UNITS_H
|
||||
+#define _LINUX_UNITS_H
|
||||
+
|
||||
+#include <linux/kernel.h>
|
||||
+
|
||||
+#define HZ_PER_KHZ 1000UL
|
||||
+#define KHZ_PER_MHZ 1000UL
|
||||
+#define HZ_PER_MHZ 1000000UL
|
||||
+
|
||||
+#define MILLIWATT_PER_WATT 1000UL
|
||||
+#define MICROWATT_PER_MILLIWATT 1000UL
|
||||
+#define MICROWATT_PER_WATT 1000000UL
|
||||
+
|
||||
+#define ABSOLUTE_ZERO_MILLICELSIUS -273150
|
||||
+
|
||||
+static inline long milli_kelvin_to_millicelsius(long t)
|
||||
+{
|
||||
+ return t + ABSOLUTE_ZERO_MILLICELSIUS;
|
||||
+}
|
||||
+
|
||||
+static inline long millicelsius_to_milli_kelvin(long t)
|
||||
+{
|
||||
+ return t - ABSOLUTE_ZERO_MILLICELSIUS;
|
||||
+}
|
||||
+
|
||||
+#define MILLIDEGREE_PER_DEGREE 1000
|
||||
+#define MILLIDEGREE_PER_DECIDEGREE 100
|
||||
+
|
||||
+static inline long kelvin_to_millicelsius(long t)
|
||||
+{
|
||||
+ return milli_kelvin_to_millicelsius(t * MILLIDEGREE_PER_DEGREE);
|
||||
+}
|
||||
+
|
||||
+static inline long millicelsius_to_kelvin(long t)
|
||||
+{
|
||||
+ t = millicelsius_to_milli_kelvin(t);
|
||||
+
|
||||
+ return DIV_ROUND_CLOSEST(t, MILLIDEGREE_PER_DEGREE);
|
||||
+}
|
||||
+
|
||||
+static inline long deci_kelvin_to_celsius(long t)
|
||||
+{
|
||||
+ t = milli_kelvin_to_millicelsius(t * MILLIDEGREE_PER_DECIDEGREE);
|
||||
+
|
||||
+ return DIV_ROUND_CLOSEST(t, MILLIDEGREE_PER_DEGREE);
|
||||
+}
|
||||
+
|
||||
+static inline long celsius_to_deci_kelvin(long t)
|
||||
+{
|
||||
+ t = millicelsius_to_milli_kelvin(t * MILLIDEGREE_PER_DEGREE);
|
||||
+
|
||||
+ return DIV_ROUND_CLOSEST(t, MILLIDEGREE_PER_DECIDEGREE);
|
||||
+}
|
||||
+
|
||||
+/**
|
||||
+ * deci_kelvin_to_millicelsius_with_offset - convert Kelvin to Celsius
|
||||
+ * @t: temperature value in decidegrees Kelvin
|
||||
+ * @offset: difference between Kelvin and Celsius in millidegrees
|
||||
+ *
|
||||
+ * Return: temperature value in millidegrees Celsius
|
||||
+ */
|
||||
+static inline long deci_kelvin_to_millicelsius_with_offset(long t, long offset)
|
||||
+{
|
||||
+ return t * MILLIDEGREE_PER_DECIDEGREE - offset;
|
||||
+}
|
||||
+
|
||||
+static inline long deci_kelvin_to_millicelsius(long t)
|
||||
+{
|
||||
+ return milli_kelvin_to_millicelsius(t * MILLIDEGREE_PER_DECIDEGREE);
|
||||
+}
|
||||
+
|
||||
+static inline long millicelsius_to_deci_kelvin(long t)
|
||||
+{
|
||||
+ t = millicelsius_to_milli_kelvin(t);
|
||||
+
|
||||
+ return DIV_ROUND_CLOSEST(t, MILLIDEGREE_PER_DECIDEGREE);
|
||||
+}
|
||||
+
|
||||
+static inline long kelvin_to_celsius(long t)
|
||||
+{
|
||||
+ return t + DIV_ROUND_CLOSEST(ABSOLUTE_ZERO_MILLICELSIUS,
|
||||
+ MILLIDEGREE_PER_DEGREE);
|
||||
+}
|
||||
+
|
||||
+static inline long celsius_to_kelvin(long t)
|
||||
+{
|
||||
+ return t - DIV_ROUND_CLOSEST(ABSOLUTE_ZERO_MILLICELSIUS,
|
||||
+ MILLIDEGREE_PER_DEGREE);
|
||||
+}
|
||||
+
|
||||
+#endif /* _LINUX_UNITS_H */
|
||||
diff --git include/net/af_unix.h include/net/af_unix.h
|
||||
index 7ec1cdb66be8..e514508bdc92 100644
|
||||
--- include/net/af_unix.h
|
||||
+++ include/net/af_unix.h
|
||||
@@ -43,12 +43,6 @@ struct unix_skb_parms {
|
||||
|
||||
#define UNIXCB(skb) (*(struct unix_skb_parms *)&((skb)->cb))
|
||||
|
||||
-#define unix_state_lock(s) spin_lock(&unix_sk(s)->lock)
|
||||
-#define unix_state_unlock(s) spin_unlock(&unix_sk(s)->lock)
|
||||
-#define unix_state_lock_nested(s) \
|
||||
- spin_lock_nested(&unix_sk(s)->lock, \
|
||||
- SINGLE_DEPTH_NESTING)
|
||||
-
|
||||
/* The AF_UNIX socket */
|
||||
struct unix_sock {
|
||||
/* WARNING: sk has to be the first member */
|
||||
@@ -72,6 +66,20 @@ static inline struct unix_sock *unix_sk(const struct sock *sk)
|
||||
return (struct unix_sock *)sk;
|
||||
}
|
||||
|
||||
+#define unix_state_lock(s) spin_lock(&unix_sk(s)->lock)
|
||||
+#define unix_state_unlock(s) spin_unlock(&unix_sk(s)->lock)
|
||||
+enum unix_socket_lock_class {
|
||||
+ U_LOCK_NORMAL,
|
||||
+ U_LOCK_SECOND, /* for double locking, see unix_state_double_lock(). */
|
||||
+ U_LOCK_DIAG, /* used while dumping icons, see sk_diag_dump_icons(). */
|
||||
+};
|
||||
+
|
||||
+static inline void unix_state_lock_nested(struct sock *sk,
|
||||
+ enum unix_socket_lock_class subclass)
|
||||
+{
|
||||
+ spin_lock_nested(&unix_sk(sk)->lock, subclass);
|
||||
+}
|
||||
+
|
||||
#define peer_wait peer_wq.wait
|
||||
|
||||
long unix_inq_len(struct sock *sk);
|
||||
diff --git include/net/bluetooth/hci_core.h include/net/bluetooth/hci_core.h
|
||||
index 8f899ad4a754..bac3d79139b2 100644
|
||||
--- include/net/bluetooth/hci_core.h
|
||||
+++ include/net/bluetooth/hci_core.h
|
||||
@@ -647,7 +647,6 @@ void hci_inquiry_cache_flush(struct hci_dev *hdev);
|
||||
/* ----- HCI Connections ----- */
|
||||
enum {
|
||||
HCI_CONN_AUTH_PEND,
|
||||
- HCI_CONN_REAUTH_PEND,
|
||||
HCI_CONN_ENCRYPT_PEND,
|
||||
HCI_CONN_RSWITCH_PEND,
|
||||
HCI_CONN_MODE_CHANGE_PEND,
|
||||
diff --git include/net/dst_ops.h include/net/dst_ops.h
|
||||
index 443863c7b8da..632086b2f644 100644
|
||||
--- include/net/dst_ops.h
|
||||
+++ include/net/dst_ops.h
|
||||
@@ -16,7 +16,7 @@ struct dst_ops {
|
||||
unsigned short family;
|
||||
unsigned int gc_thresh;
|
||||
|
||||
- int (*gc)(struct dst_ops *ops);
|
||||
+ void (*gc)(struct dst_ops *ops);
|
||||
struct dst_entry * (*check)(struct dst_entry *, __u32 cookie);
|
||||
unsigned int (*default_advmss)(const struct dst_entry *);
|
||||
unsigned int (*mtu)(const struct dst_entry *);
|
||||
@@ -53,9 +53,11 @@ static inline int dst_entries_get_slow(struct dst_ops *dst)
|
||||
return percpu_counter_sum_positive(&dst->pcpuc_entries);
|
||||
}
|
||||
|
||||
+#define DST_PERCPU_COUNTER_BATCH 32
|
||||
static inline void dst_entries_add(struct dst_ops *dst, int val)
|
||||
{
|
||||
- percpu_counter_add(&dst->pcpuc_entries, val);
|
||||
+ percpu_counter_add_batch(&dst->pcpuc_entries, val,
|
||||
+ DST_PERCPU_COUNTER_BATCH);
|
||||
}
|
||||
|
||||
static inline int dst_entries_init(struct dst_ops *dst)
|
||||
diff --git include/net/llc_pdu.h include/net/llc_pdu.h
|
||||
index 49aa79c7b278..581cd37aa98b 100644
|
||||
--- include/net/llc_pdu.h
|
||||
+++ include/net/llc_pdu.h
|
||||
@@ -262,8 +262,7 @@ static inline void llc_pdu_header_init(struct sk_buff *skb, u8 type,
|
||||
*/
|
||||
static inline void llc_pdu_decode_sa(struct sk_buff *skb, u8 *sa)
|
||||
{
|
||||
- if (skb->protocol == htons(ETH_P_802_2))
|
||||
- memcpy(sa, eth_hdr(skb)->h_source, ETH_ALEN);
|
||||
+ memcpy(sa, eth_hdr(skb)->h_source, ETH_ALEN);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -275,8 +274,7 @@ static inline void llc_pdu_decode_sa(struct sk_buff *skb, u8 *sa)
|
||||
*/
|
||||
static inline void llc_pdu_decode_da(struct sk_buff *skb, u8 *da)
|
||||
{
|
||||
- if (skb->protocol == htons(ETH_P_802_2))
|
||||
- memcpy(da, eth_hdr(skb)->h_dest, ETH_ALEN);
|
||||
+ memcpy(da, eth_hdr(skb)->h_dest, ETH_ALEN);
|
||||
}
|
||||
|
||||
/**
|
||||
diff --git include/net/netns/ipv6.h include/net/netns/ipv6.h
|
||||
index c004d051c2d3..290ca18589ee 100644
|
||||
--- include/net/netns/ipv6.h
|
||||
+++ include/net/netns/ipv6.h
|
||||
@@ -64,8 +64,8 @@ struct netns_ipv6 {
|
||||
struct dst_ops ip6_dst_ops;
|
||||
rwlock_t fib6_walker_lock;
|
||||
spinlock_t fib6_gc_lock;
|
||||
- unsigned int ip6_rt_gc_expire;
|
||||
- unsigned long ip6_rt_last_gc;
|
||||
+ atomic_t ip6_rt_gc_expire;
|
||||
+ unsigned long ip6_rt_last_gc;
|
||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||
bool fib6_has_custom_rules;
|
||||
struct rt6_info *ip6_prohibit_entry;
|
||||
diff --git include/uapi/linux/btrfs.h include/uapi/linux/btrfs.h
|
||||
index 86d2a52b4665..ee7a34c237a5 100644
|
||||
--- include/uapi/linux/btrfs.h
|
||||
+++ include/uapi/linux/btrfs.h
|
||||
@@ -522,6 +522,9 @@ struct btrfs_ioctl_clone_range_args {
|
||||
*/
|
||||
#define BTRFS_DEFRAG_RANGE_COMPRESS 1
|
||||
#define BTRFS_DEFRAG_RANGE_START_IO 2
|
||||
+#define BTRFS_DEFRAG_RANGE_FLAGS_SUPP (BTRFS_DEFRAG_RANGE_COMPRESS | \
|
||||
+ BTRFS_DEFRAG_RANGE_START_IO)
|
||||
+
|
||||
struct btrfs_ioctl_defrag_range_args {
|
||||
/* start of the defrag operation */
|
||||
__u64 start;
|
||||
diff --git include/uapi/linux/netfilter/nf_tables.h include/uapi/linux/netfilter/nf_tables.h
|
||||
index c7bb18ea4962..835e9f345f35 100644
|
||||
--- include/uapi/linux/netfilter/nf_tables.h
|
||||
+++ include/uapi/linux/netfilter/nf_tables.h
|
||||
@@ -229,9 +229,11 @@ enum nft_rule_attributes {
|
||||
/**
|
||||
* enum nft_rule_compat_flags - nf_tables rule compat flags
|
||||
*
|
||||
+ * @NFT_RULE_COMPAT_F_UNUSED: unused
|
||||
* @NFT_RULE_COMPAT_F_INV: invert the check result
|
||||
*/
|
||||
enum nft_rule_compat_flags {
|
||||
+ NFT_RULE_COMPAT_F_UNUSED = (1 << 0),
|
||||
NFT_RULE_COMPAT_F_INV = (1 << 1),
|
||||
NFT_RULE_COMPAT_F_MASK = NFT_RULE_COMPAT_F_INV,
|
||||
};
|
|
@ -1 +1 @@
|
|||
5c750a976c8398092383783db26718002a67882bd8a7348a4d8f551cac02ee37 /usr/bin/make_fiwix_initrd
|
||||
16d10331b900481d027b69bbd95ea070fe48cb0e4c072a74b62f3d729ee718ab /usr/bin/make_fiwix_initrd
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
https://mirrors.kernel.org/gnu/m4/m4-1.4.19.tar.xz 63aede5c6d33b6d9b13511cd0be2cac046f2e70fd0a07aa9573a04a82783af96
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-3639c57.tar.gz 97dfbad67832641bc7f73437617b78abeafb9946723f19cf4c2ceecfc65fa48d
|
||||
https://files.bootstrapping.world/gnulib-3639c57.tar.gz 97dfbad67832641bc7f73437617b78abeafb9946723f19cf4c2ceecfc65fa48d
|
||||
|
|
|
@ -1 +1 @@
|
|||
b1345773131fa42c6b746482a0031037823fb772dd81b7b3771c51db9aeeb7f9 /usr/bin/make
|
||||
43ad49ef3345573286a93ce74c1c952edd600fb1335529d8394a53bc87189fd1 /usr/bin/make
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
|
||||
build: checksum-transcriber-1.0
|
||||
build: simple-patch-1.0
|
||||
build: mes-0.25
|
||||
build: mes-0.26
|
||||
build: tcc-0.9.26
|
||||
build: tcc-0.9.27
|
||||
define: BUILD_FIWIX = ( KERNEL_BOOTSTRAP == True || BUILD_KERNELS == True )
|
||||
|
@ -49,7 +49,7 @@ build: tar-1.12
|
|||
build: sed-4.0.9
|
||||
build: bzip2-1.0.8
|
||||
build: coreutils-5.0
|
||||
build: heirloom-devtools-070527
|
||||
build: byacc-20240109
|
||||
build: bash-2.05b
|
||||
improve: setup_repo
|
||||
improve: update_env
|
||||
|
@ -57,7 +57,6 @@ improve: merged_usr
|
|||
improve: populate_device_nodes
|
||||
define: CONSOLES = ( INTERACTIVE == True && CHROOT == False )
|
||||
improve: open_console ( CONSOLES == True )
|
||||
build: flex-2.5.11
|
||||
build: tcc-0.9.27
|
||||
improve: musl_libdir
|
||||
build: musl-1.1.24
|
||||
|
@ -67,8 +66,10 @@ build: tcc-0.9.27
|
|||
build: sed-4.0.9
|
||||
build: bzip2-1.0.8
|
||||
build: m4-1.4.7
|
||||
build: heirloom-devtools-070527
|
||||
build: flex-2.5.11
|
||||
build: flex-2.6.4
|
||||
uninstall: /usr/bin/yacc
|
||||
uninstall: heirloom-devtools-070527
|
||||
build: bison-3.4.1
|
||||
build: bison-3.4.1
|
||||
build: bison-3.4.1
|
||||
|
@ -110,7 +111,7 @@ improve: populate_device_nodes
|
|||
build: gcc-4.0.4
|
||||
build: findutils-4.2.33
|
||||
build: musl-1.2.4
|
||||
build: linux-headers-4.14.336
|
||||
build: linux-headers-4.14.341-openela
|
||||
build: gcc-4.0.4
|
||||
build: util-linux-2.19.1
|
||||
build: e2fsprogs-1.45.7
|
||||
|
@ -124,7 +125,7 @@ build: kexec-linux-1.0.0 ( BUILD_LINUX == True )
|
|||
build: kexec-tools-2.0.22 ( BUILD_LINUX == True )
|
||||
improve: clean_sources
|
||||
improve: clean_artifacts
|
||||
build: linux-4.14.336 ( BUILD_LINUX == True )
|
||||
build: linux-4.14.341-openela ( BUILD_LINUX == True )
|
||||
jump: break ( INTERNAL_CI == pass1 )
|
||||
improve: populate_device_nodes
|
||||
jump: linux ( CHROOT == False )
|
||||
|
@ -157,7 +158,7 @@ build: dist-3.5-236
|
|||
build: perl-5.32.1
|
||||
uninstall: perl-5.6.2 perl-5.10.1
|
||||
build: libarchive-3.5.2
|
||||
build: openssl-1.1.1l
|
||||
build: openssl-3.0.13
|
||||
build: ca-certificates-3.95
|
||||
build: curl-8.5.0
|
||||
build: zlib-1.2.13
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
https://mirrors.kernel.org/gnu/mes/mes-0.25.tar.gz 325250b3567ed9203ba70161c835af01079e73ebed97b4b5bb77ca500b828940
|
||||
https://download.savannah.gnu.org/releases/nyacc/nyacc-1.00.2.tar.gz f36e4fb7dd524dc3f4b354d3d5313f69e7ce5a6ae93711e8cf6d51eaa8d2b318
|
|
@ -4,4 +4,4 @@
|
|||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#undef SYSTEM_LIBC
|
||||
#define MES_VERSION "0.25"
|
||||
#define MES_VERSION "0.26"
|
|
@ -1,14 +1,14 @@
|
|||
4c722a7455db030122072f3bb7b2733a1b826460c1022308d314775685838447 /usr/bin/mes
|
||||
c149469a741b170bfe3da4e737b3d68490996cc957d593ea5555301de0329afc /usr/bin/mes-m2
|
||||
3296b313d02fe4a4f7ba37446b5cdf9e7c472426a942b7e7227fe7f9929ad97f /usr/bin/mescc.scm
|
||||
1e76db632c2d1929a20b09b248feab99c54278605a33816bcb5357da59fd110b /usr/bin/mes
|
||||
169f2b759248d2cdf3073ce3a7128857491eb0e26553b3a21d00d9d2c0fc6e55 /usr/bin/mes-m2
|
||||
a63a6613ecc8f38f00675ea227b2198fbdaf0599c56e6911518da05854d7fa33 /usr/bin/mescc.scm
|
||||
50441b03b915bd51fb811749901a56b3c42186b45f7f466dbf23337eafad520c /usr/lib/riscv64-mes/crt1.s
|
||||
a96a0a8f1b2dd1e5a7dad8264c92b5448be7d29aa7706d40d67be978d5ddc305 /usr/lib/riscv64-mes/crt1.o
|
||||
1511e99da81caa02490078c7a880ac97d439b6fec99cf846dc2044468e2444b8 /usr/lib/riscv64-mes/riscv64.M1
|
||||
8f7e94270c7cbb076ff5fe3cdd0d6c891537e7945e5aa4bdbf167867471bfbc2 /usr/lib/riscv64-mes/libmescc.s
|
||||
dc017df6d381bd13909f01eea43a9baf5210312715e1bb95c8d4df5f35566276 /usr/lib/riscv64-mes/libc+tcc.s
|
||||
409ef724a5f67bcfec1696e5f99d15b089e7e2b9d8c9a91134d6e2bcdb515d9c /usr/lib/riscv64-mes/libc.s
|
||||
24134e4f0b9b6f9f81b73cf473901847bc06f4ecb1071b8c7db52d20333432a0 /usr/lib/riscv64-mes/libc+tcc.s
|
||||
f98c4b82fa99a7b298653c534d2337a0cad94b879e280d5407adf7fa50f21c7e /usr/lib/riscv64-mes/libc.s
|
||||
5027a055f6c564417bf5194a9b43a8a93ae59d9a26ce75a55895f253a6aab2c2 /usr/lib/riscv64-mes/libmescc.a
|
||||
938cbb375ca287c3a3e19d3b86ccf1e805963f6b47c4f7fcf3c857edf77f19f3 /usr/lib/riscv64-mes/libc+tcc.a
|
||||
a994b9aeeff0b7a0cc36e0214848ede3b0dc9d11dd3986562713a672dcb6d3f6 /usr/lib/riscv64-mes/libc.a
|
||||
24c10f036d406d7703e1900ed6b6fbeef2173abba5c70bd170d1f0b3dc691156 /usr/lib/riscv64-mes/libc+tcc.a
|
||||
aeb8ba8c25a7edc6a3893049393fbf6695b7bdb6797d83d0f86c7a4fe1e4537b /usr/lib/riscv64-mes/libc.a
|
||||
22ad5f7b6e5ea07b275619956bddd913b061d6ad492a442e4b6b2f28898e50ae /usr/lib/linux/riscv64-mes/elf64-header.hex2
|
||||
94c796cb34a6e581491d0cf609e7fad01715c84a17b8b2017178a36568a80e48 /usr/lib/linux/riscv64-mes/elf64-footer-single-main.hex2
|
|
@ -1,14 +1,14 @@
|
|||
ab14556dd405debd1fc4aa18bffea9ee8c89bc8fa89f745e8fb20c9da83e5809 /usr/bin/mes
|
||||
ddaa6eaaedc5f20298474b4118f12ef86e9e9a5b681893fb138ade189e971caf /usr/bin/mes-m2
|
||||
834320264b245728c2270b2a60f1ceb5f63de8a79bcd99f5c6bba6be11ed7223 /usr/bin/mescc.scm
|
||||
26db12128c08a6c83b8a96277949a46c8887f4c597df622f89ab4a52366aed8e /usr/bin/mes
|
||||
d3e1278cac1d7d3d5fb82042d635a43300a576059496adf9ea71d8e978de2f73 /usr/bin/mes-m2
|
||||
84ac050c808a858cc58b17388a063d4a82a1bf975db4113202eb539c1eee84e1 /usr/bin/mescc.scm
|
||||
234c264965116a24583dd569050adc766d7cc2da83b1db38085210f26031b70c /usr/lib/x86-mes/crt1.s
|
||||
494f184a87175abc485a898c250c3831b2b5dcf5aead46591e00b39d1c5529fc /usr/lib/x86-mes/crt1.o
|
||||
8afe05c3e1e8848b6f3e8de751524de5f69818eb8524659827918e3fddde3e1e /usr/lib/x86-mes/x86.M1
|
||||
771988b1df0dfa04bf5f1ab72af18c32b1a8205a07f10e5235d79dac0a072b00 /usr/lib/x86-mes/libmescc.s
|
||||
d19d053950349296c7d33a6297831e0da12ff79c5b758187ce8b7759192f7d4a /usr/lib/x86-mes/libc+tcc.s
|
||||
5ea659501bda293f9297b599b1385ed4d54bab0e6daf3207fc61429adc9abc78 /usr/lib/x86-mes/libc.s
|
||||
aced8d8545f2274555c975e8db86e8804f3ba5a746e2a69bb02ca2905c257791 /usr/lib/x86-mes/libc+tcc.s
|
||||
40c22be10018eaf9425f6b1b45e6ad2e4e169f8df12c4f03f271c892fe3422cd /usr/lib/x86-mes/libc.s
|
||||
52f697278ccdff5e457f27e10f465a91ab9858f0c6cee0683831cadb3109bbb7 /usr/lib/x86-mes/libmescc.a
|
||||
90d3e29ecc5af3a94f6540deb6e6f7a713da1c921f7853867f4e4bcc861e4a56 /usr/lib/x86-mes/libc+tcc.a
|
||||
db62874a6cebeb0652945cb91cb91ade9783e631aaef5ec279e11aeca6adc421 /usr/lib/x86-mes/libc.a
|
||||
ccf0ed21e4a8b6ed970f60c7ee7b1eb4cdd136e6a717632c538053d42231e155 /usr/lib/x86-mes/libc+tcc.a
|
||||
c9c684c17a32b7adc1546a6ebba11a56ac88e6af2101f45cc0e8cd320555d735 /usr/lib/x86-mes/libc.a
|
||||
82cac4353375a52efecc6fda1f8b37373988fe41ed197b63d8e906321b105d77 /usr/lib/linux/x86-mes/elf32-header.hex2
|
||||
f9873d9aab12e70f24d97f8319e17a1e698ca60779ae9a6ab3ede648cd60fc61 /usr/lib/linux/x86-mes/elf32-footer-single-main.hex2
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,4 @@
|
|||
https://mirrors.kernel.org/gnu/mes/mes-0.26.tar.gz 0f2210ad5896249466a0fc9a509e86c9a16db2b722741c6dfb5e8f7b33e385d4
|
||||
https://github.com/Googulator/nyacc/releases/download/V1.00.2-lb1/nyacc-1.00.2-lb1.tar.gz 708c943f89c972910e9544ee077771acbd0a2c0fc6d33496fe158264ddb65327
|
||||
https://archive.org/download/live-bootstrap-sources/nyacc-1.00.2-lb1.tar.gz 708c943f89c972910e9544ee077771acbd0a2c0fc6d33496fe158264ddb65327
|
||||
https://files.bootstrapping.world/nyacc-1.00.2-lb1.tar.gz 708c943f89c972910e9544ee077771acbd0a2c0fc6d33496fe158264ddb65327
|
|
@ -1,64 +0,0 @@
|
|||
SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: MIT
|
||||
|
||||
Make sure real __stdio_exit() is called on exit and not the dummy
|
||||
noop versions. This fixes the issue of truncated output when redirecting
|
||||
output to a file or pipe. It also fixes truncated output on programs
|
||||
that forget to call fclose()
|
||||
diff --git a/src/exit/exit.c b/src/exit/exit.c
|
||||
index a6869b37..a4164682 100644
|
||||
--- src/exit/exit.c
|
||||
+++ src/exit/exit.c
|
||||
@@ -2,16 +2,6 @@
|
||||
#include <stdint.h>
|
||||
#include "libc.h"
|
||||
|
||||
-static void dummy()
|
||||
-{
|
||||
-}
|
||||
-
|
||||
-/* atexit.c and __stdio_exit.c override these. the latter is linked
|
||||
- * as a consequence of linking either __toread.c or __towrite.c. */
|
||||
-weak_alias(dummy, __funcs_on_exit);
|
||||
-weak_alias(dummy, __stdio_exit);
|
||||
-weak_alias(dummy, _fini);
|
||||
-
|
||||
extern weak hidden void (*const __fini_array_start)(void), (*const __fini_array_end)(void);
|
||||
|
||||
static void libc_exit_fini(void)
|
||||
diff --git a/src/internal/stdio_impl.h b/src/internal/stdio_impl.h
|
||||
index d7398f59..69141813 100644
|
||||
--- src/internal/stdio_impl.h
|
||||
+++ src/internal/stdio_impl.h
|
||||
@@ -47,9 +47,9 @@ struct _IO_FILE {
|
||||
struct __locale_struct *locale;
|
||||
};
|
||||
|
||||
-extern hidden FILE *volatile __stdin_used;
|
||||
-extern hidden FILE *volatile __stdout_used;
|
||||
-extern hidden FILE *volatile __stderr_used;
|
||||
+extern FILE *volatile __stdin_used;
|
||||
+extern FILE *volatile __stdout_used;
|
||||
+extern FILE *volatile __stderr_used;
|
||||
|
||||
hidden int __lockfile(FILE *);
|
||||
hidden void __unlockfile(FILE *);
|
||||
diff --git a/src/stdio/__stdio_exit.c b/src/stdio/__stdio_exit.c
|
||||
index a5e42c67..5947a141 100644
|
||||
--- src/stdio/__stdio_exit.c
|
||||
+++ src/stdio/__stdio_exit.c
|
||||
@@ -1,10 +1,5 @@
|
||||
#include "stdio_impl.h"
|
||||
|
||||
-static FILE *volatile dummy_file = 0;
|
||||
-weak_alias(dummy_file, __stdin_used);
|
||||
-weak_alias(dummy_file, __stdout_used);
|
||||
-weak_alias(dummy_file, __stderr_used);
|
||||
-
|
||||
static void close_file(FILE *f)
|
||||
{
|
||||
if (!f) return;
|
||||
--
|
||||
2.30.0
|
||||
|
|
@ -1 +0,0 @@
|
|||
http://mirror.math.princeton.edu/pub/openssl/source/old/1.1.1/openssl-1.1.1l.tar.gz 0b7a3e5e59c34827fe0c3a74b7ec8baef302b98fa80088d7f9153aa16fa76bd1
|
|
@ -8,18 +8,15 @@
|
|||
src_prepare() {
|
||||
default
|
||||
|
||||
# Remove two useless manpages that code in hostname
|
||||
rm doc/man5/x509v3_config.pod doc/man5/config.pod
|
||||
|
||||
# Remove a bunch of pregenerated files
|
||||
# thanks for making these easy to find :)
|
||||
find . -name build.info -exec grep 'GENERATE\[' {} \; | sed 's/.*\[//' | sed 's/\].*$//' | xargs -I{} find . -name {} -delete
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
MACHINE=i386 ./config --prefix="${PREFIX}" \
|
||||
./config --prefix="${PREFIX}" \
|
||||
--libdir="${LIBDIR}" \
|
||||
no-shared
|
||||
no-shared linux-generic32
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
|
@ -30,7 +27,7 @@ src_compile() {
|
|||
src_install() {
|
||||
default
|
||||
|
||||
rm -r "${DESTDIR}${PREFIX}/share/doc/openssl/html/man"{1,3,7}
|
||||
rm -r "${DESTDIR}${PREFIX}/share/man/man"{1,3,7}
|
||||
rm -r "${DESTDIR}${PREFIX}/share/doc/openssl/html/man"{1,3,5,7}
|
||||
rm -r "${DESTDIR}${PREFIX}/share/man/man"{1,3,5,7}
|
||||
rm -r "${DESTDIR}${PREFIX}/ssl/misc"
|
||||
}
|
|
@ -0,0 +1,2 @@
|
|||
http://ftp.openssl.org/source/openssl-3.0.13.tar.gz 88525753f79d3bec27d2fa7c66aa0b92b3aa9498dafd93d7cfa4b3780cdae313
|
||||
http://ftp.openssl.org/source/old/3.0/openssl-3.0.13.tar.gz 88525753f79d3bec27d2fa7c66aa0b92b3aa9498dafd93d7cfa4b3780cdae313
|
|
@ -1 +1 @@
|
|||
cdb22238dfa7f659c3d7afae6e93f27b4c84a40e082b20bc78a8b19a0dc79536 /usr/bin/patch
|
||||
728596bca1f67ec8386f312d8738eeb398203505851faad91406c29a299bc748 /usr/bin/patch
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
https://mirrors.kernel.org/gnu/patch/patch-2.7.6.tar.xz ac610bda97abe0d9f6b7c963255a11dcb196c25e337c61f94e4778d632f1d8fd
|
||||
https://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-e017871.tar.gz a285dc300c3d9c25cc06e38827ef40f6073ec3b9b0fcb5bba433f943be92d8d4
|
||||
https://files.bootstrapping.world/gnulib-e017871.tar.gz a285dc300c3d9c25cc06e38827ef40f6073ec3b9b0fcb5bba433f943be92d8d4
|
||||
|
|
|
@ -34,7 +34,7 @@ NOTE: this patch CANNOT be applied to a non-live-bootstrap environment.
|
|||
# because the A-Z/a-z are not consecutive.
|
||||
-myuname=`echo $myuname | $sed -e "s,['/],,g" | \
|
||||
- ./tr '[A-Z]' '[a-z]' | $tr $trnl ' '`
|
||||
+myuname="linux (none) 4.14.336 #1 mon jan 1 00:00:01 1970 i686 gnulinux"
|
||||
+myuname="linux (none) 4.14.341-openela #1 mon jan 1 00:00:01 1970 i686 gnulinux"
|
||||
?X: Save the value we just computed to reset myuname after we get done here.
|
||||
newmyuname="$myuname"
|
||||
dflt=n
|
||||
|
@ -43,7 +43,7 @@ NOTE: this patch CANNOT be applied to a non-live-bootstrap environment.
|
|||
?X: into using the SysV case!
|
||||
gnu) osname=gnu
|
||||
- osvers="$3" ;;
|
||||
+ osvers="4.14.336" ;;
|
||||
+ osvers="4.14.341-openela" ;;
|
||||
?X: HP-UX uname -a gives something like
|
||||
?X: HP-UX foobar B.10.20 A 9000/735 2016483812 two-user license
|
||||
?X: Preserve the full 10.20 string instead of the previous plain '10'.
|
||||
|
|
|
@ -41,7 +41,7 @@ NOTE: this patch CANNOT be applied to a non-live-bootstrap environment.
|
|||
linux) osname=linux
|
||||
case "$3" in
|
||||
- *) osvers="$3" ;;
|
||||
+ *) osvers="4.14.336" ;;
|
||||
+ *) osvers="4.14.341-openela" ;;
|
||||
esac
|
||||
;;
|
||||
MiNT) osname=mint
|
||||
|
|
|
@ -10,10 +10,10 @@ src_prepare() {
|
|||
Misc/stable_abi.toml
|
||||
|
||||
# Regenerate ssl_data for ssl module
|
||||
rm Modules/_ssl_data_300.h Modules/_ssl_data.h
|
||||
python -B Tools/ssl/make_ssl_data.py ../openssl-1.1.1l Modules/_ssl_data_111.h
|
||||
rm Modules/_ssl_data_111.h Modules/_ssl_data.h
|
||||
python -B Tools/ssl/make_ssl_data.py ../openssl-3.0.13 Modules/_ssl_data_300.h
|
||||
sed -i 's#$(srcdir)/Modules/_ssl_data.h ##' Makefile.pre.in
|
||||
sed -i 's#$(srcdir)/Modules/_ssl_data_300.h ##' Makefile.pre.in
|
||||
sed -i 's#$(srcdir)/Modules/_ssl_data_111.h ##' Makefile.pre.in
|
||||
|
||||
# Regenerate encodings
|
||||
grep generated -r . -l | grep encodings | xargs rm
|
||||
|
|
|
@ -21,4 +21,5 @@ http://ftp.unicode.org/Public/14.0.0/ucd/CaseFolding.txt a566cd48687b2cd897e0250
|
|||
http://ftp.unicode.org/Public/14.0.0/ucd/Unihan.zip 2ae4519b2b82cd4d15379c17e57bfb12c33c0f54da4977de03b2b04bcf11852d Unihan-14.0.0.zip
|
||||
http://ftp.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/PC/CP437.TXT 6bad4dabcdf5940227c7d81fab130dcb18a77850b5d79de28b5dc4e047b0aaac
|
||||
https://www.ietf.org/rfc/rfc3454.txt eb722fa698fb7e8823b835d9fd263e4cdb8f1c7b0d234edf7f0e3bd2ccbb2c79
|
||||
http://mirror.math.princeton.edu/pub/openssl/source/old/1.1.1/openssl-1.1.1l.tar.gz 0b7a3e5e59c34827fe0c3a74b7ec8baef302b98fa80088d7f9153aa16fa76bd1
|
||||
http://ftp.openssl.org/source/openssl-3.0.13.tar.gz 88525753f79d3bec27d2fa7c66aa0b92b3aa9498dafd93d7cfa4b3780cdae313
|
||||
http://ftp.openssl.org/source/old/3.0/openssl-3.0.13.tar.gz 88525753f79d3bec27d2fa7c66aa0b92b3aa9498dafd93d7cfa4b3780cdae313
|
||||
|
|
|
@ -1 +1 @@
|
|||
27dbc29d04ad2a2905ab56c198660510010377062d716bc791a8d0e281fec4d4 /usr/bin/sed
|
||||
58d2dd86201ed5ed48f546876eae862f6749983354e0408234d0801796dc8c0c /usr/bin/sed
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
https://mirrors.kernel.org/gnu/sed/sed-4.8.tar.xz f79b0cfea71b37a8eeec8490db6c5f7ae7719c35587f21edb0617f370eeff633
|
||||
http://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-d279bc.tar.gz 12cfa21abf618a274017d6b18e95fc6582519d7c08e2403e5c5772ccdd5b85f4
|
||||
https://files.bootstrapping.world/gnulib-d279bc.tar.gz 12cfa21abf618a274017d6b18e95fc6582519d7c08e2403e5c5772ccdd5b85f4
|
||||
|
|
|
@ -11,10 +11,10 @@ M2-Mesoplanet --architecture ${ARCH} -f src/simple-patch.c -o ${BINDIR}/simple-p
|
|||
|
||||
# Checksums
|
||||
if match x${UPDATE_CHECKSUMS} xTrue; then
|
||||
sha256sum -o ${pkg}.checksums \
|
||||
sha256sum -o ${pkg}.${ARCH}.checksums \
|
||||
/usr/bin/simple-patch
|
||||
|
||||
cp ${pkg}.checksums ${SRCDIR}
|
||||
cp ${pkg}.${ARCH}.checksums ${SRCDIR}
|
||||
else
|
||||
sha256sum -c ${pkg}.${ARCH}.checksums
|
||||
fi
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
0afc8a60b8b9f2c52f7836c74136160c2c83d38afc0f2181bc24a38f88a6b3a0 /usr/bin/simple-patch
|
|
@ -0,0 +1 @@
|
|||
a06cbf887341ea5387e7947bc4e01a07349ad5b604b214e6b0dab4a6c3e0e30b /usr/bin/simple-patch
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue