[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT/ZLIB, v2, 1/1] Initial port of zlib to Unikraft
Hi Costin, On 13.08.19, 16:41, "Costin Lupu" <costin.lup@xxxxxxxxx> wrote: Hi Felipe, Please see inline just one comment. On 8/13/19 4:19 PM, Felipe Huici wrote: > This is a port of zlib to Unikraft as an external library. It requires > libc, so in your application Makefile the library dependency list > should read: > > LIBS := ...:$(UK_LIBS)/newlib:$(UK_LIBS)/zlib:... > > Signed-off-by: Felipe Huici <felipe.huici@xxxxxxxxx> > --- > CODING_STYLE.md | 4 +++ > CONTRIBUTING.md | 4 +++ > COPYING.md | 39 ++++++++++++++++++++++++++ > Config.uk | 7 +++++ > MAINTAINERS.md | 10 +++++++ > Makefile.uk | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++ > README.md | 9 ++++++ > exportsyms.uk | 85 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 8 files changed, 235 insertions(+) > create mode 100644 CODING_STYLE.md > create mode 100644 CONTRIBUTING.md > create mode 100644 COPYING.md > create mode 100644 Config.uk > create mode 100644 MAINTAINERS.md > create mode 100644 Makefile.uk > create mode 100644 README.md > create mode 100644 exportsyms.uk > > diff --git a/CODING_STYLE.md b/CODING_STYLE.md > new file mode 100644 > index 0000000..5730041 > --- /dev/null > +++ b/CODING_STYLE.md > @@ -0,0 +1,4 @@ > +Coding Style > +============ > + > +Please refer to the `CODING_STYLE.md` file in the main Unikraft repository. > diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md > new file mode 100644 > index 0000000..5f55eca > --- /dev/null > +++ b/CONTRIBUTING.md > @@ -0,0 +1,4 @@ > +Contributing to Unikraft > +======================= > + > +Please refer to the `CONTRIBUTING.md` file in the main Unikraft repository. > diff --git a/COPYING.md b/COPYING.md > new file mode 100644 > index 0000000..973051a > --- /dev/null > +++ b/COPYING.md > @@ -0,0 +1,39 @@ > +License > +======= > + > +Unikraft zlib wrappers > +------------------------ > + > +This repository contains wrapper code to build zlib with Unikraft. > +Each C code file in this repository should declare who is the > +copyright owner and under which terms and conditions the code is > +licensed. If such a licence note is missing, the following copyright > +notice will apply: > + > + Copyright (c) 2019, NEC Europe Ltd., NEC Corporation. All rights reserved. > + > + Redistribution and use in source and binary forms, with or without > + modification, are permitted provided that the following conditions > + are met: > + > + 1. Redistributions of source code must retain the above copyright > + notice, this list of conditions and the following disclaimer. > + 2. Redistributions in binary form must reproduce the above copyright > + notice, this list of conditions and the following disclaimer in the > + documentation and/or other materials provided with the distribution. > + 3. Neither the name of the copyright holder nor the names of its > + contributors may be used to endorse or promote products derived from > + this software without specific prior written permission. > + > + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" > + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE > + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE > + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE > + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR > + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF > + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS > + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN > + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) > + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE > + POSSIBILITY OF SUCH DAMAGE. > + > diff --git a/Config.uk b/Config.uk > new file mode 100644 > index 0000000..3734adb > --- /dev/null > +++ b/Config.uk > @@ -0,0 +1,7 @@ > +config LIBZLIB > + bool "zlib - a compression library" > + default y > + depends on HAVE_LIBC > + select LIBVFSCORE > + select LIBRAMFS > + select LIBDEVFS > \ No newline at end of file > diff --git a/MAINTAINERS.md b/MAINTAINERS.md > new file mode 100644 > index 0000000..5a4abc4 > --- /dev/null > +++ b/MAINTAINERS.md > @@ -0,0 +1,10 @@ > +Maintainers List > +================ > + > +For notes on how to read this information, please refer to `MAINTAINERS.md` in > +the main Unikraft repository. > + > + LIBUUID-UNIKRAFT > + M: Felipe Huici <felipe.huici@xxxxxxxxx> > + L: minios-devel@xxxxxxxxxxxxx > + F: * > diff --git a/Makefile.uk b/Makefile.uk > new file mode 100644 > index 0000000..d3b0d3e > --- /dev/null > +++ b/Makefile.uk > @@ -0,0 +1,77 @@ > +# libzlib Makefile.uk > +# > +# Authors: Felipe Huici <felipe.huici@xxxxxxxxx> > +# > +# > +# Copyright (c) 2019, NEC Europe Ltd., NEC Corporation. All rights reserved. > +# > +# Redistribution and use in source and binary forms, with or without > +# modification, are permitted provided that the following conditions > +# are met: > +# > +# 1. Redistributions of source code must retain the above copyright > +# notice, this list of conditions and the following disclaimer. > +# 2. Redistributions in binary form must reproduce the above copyright > +# notice, this list of conditions and the following disclaimer in the > +# documentation and/or other materials provided with the distribution. > +# 3. Neither the name of the copyright holder nor the names of its > +# contributors may be used to endorse or promote products derived from > +# this software without specific prior written permission. > +# > +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" > +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE > +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE > +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE > +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR > +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF > +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS > +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN > +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) > +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE > +# POSSIBILITY OF SUCH DAMAGE. > +# > +# THIS HEADER MAY NOT BE EXTRACTED OR MODIFIED IN ANY WAY. > +# > + > +################################################################################ > +# Library registration > +################################################################################ > +$(eval $(call addlib_s,libzlib,$(CONFIG_LIBZLIB))) > + > +################################################################################ > +# Sources > +################################################################################ > +LIBZLIB_VERSION=1.2.11 > +LIBZLIB_URL=http://www.zlib.net/zlib-$(LIBZLIB_VERSION).tar.gz > +LIBZLIB_DIR=zlib-$(LIBZLIB_VERSION) > + > +$(eval $(call fetch,libzlib,$(LIBZLIB_URL),$(LIBZLIB_VERSION).tar.gz)) > + > +################################################################################ > +# Helpers > +################################################################################ > +LIBZLIB=$(LIBZLIB_ORIGIN)/$(LIBZLIB_DIR) > + > +################################################################################ > +# Library includes > +################################################################################ > +CINCLUDES-$(CONFIG_LIBZLIB) += -I$(LIBZLIB) The zlib API may be used by C++ code as well. So because of that, please also add: CXXINCLUDES-$(CONFIG_LIBZLIB) += -I$(LIBZLIB) > Ok, I'll add this. Thanks, -- Felipe > + > +################################################################################ > +# Sources > +################################################################################ > +LIBZLIB_SRCS-y += $(LIBZLIB)/inflate.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/gzclose.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/zutil.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/crc32.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/uncompr.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/gzread.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/trees.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/gzlib.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/infback.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/gzwrite.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/compress.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/inftrees.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/deflate.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/adler32.c > +LIBZLIB_SRCS-y += $(LIBZLIB)/inffast.c > diff --git a/README.md b/README.md > new file mode 100644 > index 0000000..d1160cd > --- /dev/null > +++ b/README.md > @@ -0,0 +1,9 @@ > +libzlib for Unikraft > +=================== > +This is a port of zlib to Unikraft. It requires newlib, so in your > +application Makefile the library dependency list should read: > + > + LIBS := ...:$(UK_LIBS)/newlib:$(UK_LIBS)/zlib:... > + > +Please refer to the `README.md` as well as the documentation in the `doc/` > +subdirectory of the main unikraft repository for further information. > diff --git a/exportsyms.uk b/exportsyms.uk > new file mode 100644 > index 0000000..2f5aaef > --- /dev/null > +++ b/exportsyms.uk > @@ -0,0 +1,85 @@ > +adler32 > +adler32_combine > +adler32_combine64 > +adler32_z > +compress > +compress2 > +compressBound > +crc32 > +crc32_combine > +crc32_combine64 > +crc32_z > +deflate > +deflateBound > +deflateCopy > +deflateEnd > +deflateGetDictionary > +deflateInit > +deflateInit2 > +deflateParams > +deflatePending > +deflatePrime > +deflateReset > +deflateResetKeep > +deflateSetDictionary > +deflateSetHeader > +deflateTune > +get_crc_table > +gzbuffer > +gzclearerr > +gzclose > +gzclose_r > +gzclose_w > +gzdirect > +gzdopen > +gzeof > +gzerror > +gzflush > +gzfread > +gzfwrite > +gzgetc > +gzgets > +gzoffset > +gzoffset64 > +gzopen > +gzopen64 > +gzopen_w > +gzprintf > +gzputc > +gzputs > +gzread > +gzrewind > +gzseek > +gzseek64 > +gzsetparams > +gztell > +gztell64 > +gzungetc > +gzvprintf > +gzwrite > +inflate > +inflateBack > +inflateBackEnd > +inflateBackInit > +inflateCodesUsed > +inflateCopy > +inflateEnd > +inflateGetDictionary > +inflateGetHeader > +inflateInit > +inflateInit2 > +inflateMark > +inflatePrime > +inflateReset > +inflateReset2 > +inflateResetKeep > +inflateSetDictionary > +inflateSync > +inflateSyncPoint > +inflateUndermine > +inflateValidate > +uncompress > +uncompress2 > +zError > +zlibCompileFlags > +zlibVersion > _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |