Closed fjtrujy closed 2 months ago
Another possibility is __has_include
checks and define own types if header non existent
Another possibility is
__has_include
checks and define own types if header non existent
But why is that going to be necessary if header for sure will exists?
With the new IOP GCC changes it generates it for mipsel-ps2-irx
on the same way that it is also generated for mipsel-none-elf
.
I think this is a good step for approaching to a more standard toolchain for IOP too.
Description
This PR requires first some changes on the GCC patches for IOP, as it must generate
stdint.h
instead of using a custom one inps2sdk
.IOP changes in GCC are now even smaller (almost everything vanilla): fjtrujy/gcc@1c9e538
I have checked OPL and it actually works fine (at least boot).
So in order to merge this PR we need first to apply the new GCC patch.
Cheers.
Could go this pr go to other custom headers as well?
Description
This PR requires first some changes on the GCC patches for IOP, as it must generate
stdint.h
instead of using a custom one inps2sdk
. IOP changes in GCC are now even smaller (almost everything vanilla): fjtrujy/gcc@1c9e538 I have checked OPL and it actually works fine (at least boot). So in order to merge this PR we need first to apply the new GCC patch. Cheers.Could go this pr go to other custom headers as well?
Just stdint.h
and limits.h
are the only headers that can be removed from ps2sdk/iop
as GCC just generates the next headers:
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/float.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/gcov.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/iso646.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/limits.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson-mmiintrin.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/msa.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdalign.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdarg.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdatomic.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdbool.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdckdint.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stddef.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdfix.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdint.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdnoreturn.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/syslimits.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/tgmath.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/unwind.h
/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/varargs.h
Description
This PR requires first some changes on the GCC patches for IOP, as it must generate
stdint.h
instead of using a custom one inps2sdk
. IOP changes in GCC are now even smaller (almost everything vanilla): fjtrujy/gcc@1c9e538 I have checked OPL and it actually works fine (at least boot). So in order to merge this PR we need first to apply the new GCC patch. Cheers.Could go this pr go to other custom headers as well?
Just
stdint.h
andlimits.h
are the only headers that can be removed fromps2sdk/iop
as GCC just generates the next headers:/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/float.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/gcov.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/iso646.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/limits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson-mmiintrin.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/msa.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdalign.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdarg.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdatomic.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdbool.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdckdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stddef.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdfix.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdnoreturn.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/syslimits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/tgmath.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/unwind.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/varargs.h
You could remove as well the limits.h
.
Description
This PR requires first some changes on the GCC patches for IOP, as it must generate
stdint.h
instead of using a custom one inps2sdk
. IOP changes in GCC are now even smaller (almost everything vanilla): fjtrujy/gcc@1c9e538 I have checked OPL and it actually works fine (at least boot). So in order to merge this PR we need first to apply the new GCC patch. Cheers.Could go this pr go to other custom headers as well?
Just
stdint.h
andlimits.h
are the only headers that can be removed fromps2sdk/iop
as GCC just generates the next headers:/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/float.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/gcov.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/iso646.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/limits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson-mmiintrin.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/msa.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdalign.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdarg.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdatomic.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdbool.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdckdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stddef.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdfix.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdnoreturn.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/syslimits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/tgmath.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/unwind.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/varargs.h
You could remove as well the
limits.h
.
It is removed already
Description
This PR requires first some changes on the GCC patches for IOP, as it must generate
stdint.h
instead of using a custom one inps2sdk
. IOP changes in GCC are now even smaller (almost everything vanilla): fjtrujy/gcc@1c9e538 I have checked OPL and it actually works fine (at least boot). So in order to merge this PR we need first to apply the new GCC patch. Cheers.Could go this pr go to other custom headers as well?
Just
stdint.h
andlimits.h
are the only headers that can be removed fromps2sdk/iop
as GCC just generates the next headers:/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/float.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/gcov.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/iso646.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/limits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson-mmiintrin.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/msa.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdalign.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdarg.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdatomic.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdbool.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdckdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stddef.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdfix.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdnoreturn.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/syslimits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/tgmath.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/unwind.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/varargs.h
You could remove as well the
limits.h
.It is removed already
Ok, now the pr should be name Remove custom stdint and limits
Description
This PR requires first some changes on the GCC patches for IOP, as it must generate
stdint.h
instead of using a custom one inps2sdk
. IOP changes in GCC are now even smaller (almost everything vanilla): fjtrujy/gcc@1c9e538 I have checked OPL and it actually works fine (at least boot). So in order to merge this PR we need first to apply the new GCC patch. Cheers.Could go this pr go to other custom headers as well?
Just
stdint.h
andlimits.h
are the only headers that can be removed fromps2sdk/iop
as GCC just generates the next headers:/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/float.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/gcov.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/iso646.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/limits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson-mmiintrin.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/msa.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdalign.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdarg.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdatomic.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdbool.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdckdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stddef.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdfix.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdnoreturn.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/syslimits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/tgmath.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/unwind.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/varargs.h
You could remove as well the
limits.h
.It is removed already
Ok, now the pr should be name Remove custom stdint and limits
Done already
Description
This PR requires first some changes on the GCC patches for IOP, as it must generate
stdint.h
instead of using a custom one inps2sdk
. IOP changes in GCC are now even smaller (almost everything vanilla): fjtrujy/gcc@1c9e538 I have checked OPL and it actually works fine (at least boot). So in order to merge this PR we need first to apply the new GCC patch. Cheers.Could go this pr go to other custom headers as well?
Just
stdint.h
andlimits.h
are the only headers that can be removed fromps2sdk/iop
as GCC just generates the next headers:/ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/float.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/gcov.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/iso646.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/limits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson-mmiintrin.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/loongson.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/msa.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdalign.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdarg.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdatomic.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdbool.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdckdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stddef.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdfix.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdint.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/stdnoreturn.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/syslimits.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/tgmath.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/unwind.h /ps2dev/iop/lib/gcc/mipsel-ps2-irx/14.1.0/include/varargs.h
You could remove as well the
limits.h
.It is removed already
Ok, now the pr should be name Remove custom stdint and limits
Done already
Ok, At least less gcc implementations to ps2sdk. Although it should be nice if there was a way to remove all gcc implementations.
Description
This PR requires first some changes on the GCC patches for IOP, as it must generate the headers instead of using a custom one from
ps2sdk
.IOP changes in GCC are now even smaller (almost everything vanilla): https://github.com/fjtrujy/gcc/commit/1c9e53872587b17ebbb9c8b62d68ebfa11caa149
I have checked OPL and it actually works fine (at least boot).
So in order to merge this PR we need first to apply the new GCC patch.
Cheers.