Esta es una colección de fragmentos de código de dominio público (CC0) escritos en C para realizar diversas tareas comunes que generalmente dependen del sistema operativo, la arquitectura y/o el compilador. Básicamente, nuestro objetivo es mover esos molestos condicionales del preprocesador de su código al nuestro.
Los módulos no tienen un objetivo fijo (como el C89), ya que eso impediría algunas funciones; en cambio, simplemente intentamos brindar el mayor soporte posible para cada módulo. Si tiene una plataforma que no es compatible con una función en particular pero que podría serlo, háganoslo saber; Estaremos encantados de intentar encontrar una manera de apoyarlo.
Todo se prueba continuamente con varias versiones de GCC, Clang y PGI (en Travis CI), MSVC (en AppVeyor) y Emscripten (en Codefresh):
Los módulos actualmente listos para usar incluyen:
<stdint.h>
)También hay módulos que quizás aún no estén listos para su uso generalizado, pero que se beneficiarían enormemente si se probaran:
Los módulos se pueden usar de forma aislada, aunque algunos funcionan mejor juntos, por lo que si puede mantener todo el repositorio junto en lugar de simplemente copiar un solo archivo, le recomendamos que lo haga.
No dude en presentar problemas sobre cualquiera de estos; Si usted tiene problemas, es probable que otros también los tengan, por lo que nos gustaría solucionarlos.
Si tiene algo con lo que le gustaría contribuir, presente un problema o una solicitud de extracción. Si desea ayudar escribiendo algo nuevo, eche un vistazo a los problemas de "mejora" en nuestro rastreador de problemas para obtener ideas.
Algunas cosas realmente no encajan en este repositorio, así que aquí hay algunos proyectos pequeños para hacer cosas de forma portátil que pueden interesarle:
mman.h
( mmap()
, etc. ) para Windows.Si hay un proyecto que le gustaría que se agregue a la lista, presente una incidencia o una solicitud de extracción.