Go to file
lexborisov ca51a60b2a We put in order CSS properties. Fixed memory collision bug 2016-10-23 16:09:32 +03:00
devel/osx We put in order CSS properties. Fixed memory collision bug 2016-10-23 16:09:32 +03:00
examples We put in order CSS properties. Fixed memory collision bug 2016-10-23 16:09:32 +03:00
include We put in order CSS properties. Fixed memory collision bug 2016-10-23 16:09:32 +03:00
projects First commit 2016-08-29 01:20:40 +04:00
source We put in order CSS properties. Fixed memory collision bug 2016-10-23 16:09:32 +03:00
third_party/font Added MyFONT 2016-08-30 13:07:41 +04:00
.gitignore Redesigned MyFONT and included to compilation 2016-09-07 16:29:32 +04:00
.travis.yml added .travis.yml 2016-08-29 01:29:33 +04:00
CHANGELOG.md First commit 2016-08-29 01:20:40 +04:00
LICENSE First commit 2016-08-29 01:20:40 +04:00
Makefile We put in order CSS properties. Fixed memory collision bug 2016-10-23 16:09:32 +03:00
README.md added .travis.yml 2016-08-29 01:29:33 +04:00

README.md

Modest C/C++ HTML Render

Build Status

Modest is a fast HTML Render implemented as a pure C99 library with no outside dependencies.

Now

The current version is 0.0.1 - devel

Changes

Please, see CHANGELOG.md file

Features

Render is in development. Now available:

  • Search nodes by Selectors
  • See Features of MyHTML
  • See Features of MyCSS

The Story of Creation

The Story of Creation

Build and Installation

Make

make

If successful copy lib/* and include/* at the right place for you

Flags that can be passed to make:

  • MODEST_OPTIMIZATION_LEVEL=-O2 set compiler optimization level. Default: -O2
  • MODEST_BUILD_WITHOUT_THREADS=YES build without POSIX Threads. Default: NO

for example

make MODEST_BUILD_WITHOUT_THREADS=NO
cp lib/* /usr/local/lib
cp -r include/* /usr/local/include

CMake

In modest/project directory:

cmake .
make
sudo make install

Flags that can be passed to CMake:

  • MODEST_OPTIMIZATION_LEVEL=-O2 set compiler optimization level. Default: -O2
  • CMAKE_INSTALL_LIBDIR=lib set path to install created library. Default: lib
  • MODEST_BUILD_SHARED=ON build shared library. Default: ON
  • MODEST_BUILD_STATIC=ON build static library. Default: ON
  • MODEST_INSTALL_HEADER=OFF install header files. Default OFF
  • MODEST_BUILD_WITHOUT_THREADS=YES build without POSIX Threads. Default: NO
  • MODEST_EXTERN_MALLOC=my_malloc_func set extern malloc function. Default: UNDEFINED
  • MODEST_EXTERN_REALLOC=my_realloc_func set extern realloc function. Default: UNDEFINED
  • MODEST_EXTERN_CALLOC=my_calloc_func set extern calloc function. Default: UNDEFINED
  • MODEST_EXTERN_FREE=my_free_func set extern free function. Default: UNDEFINED

for example

cmake . -DCMAKE_INSTALL_LIBDIR=lib64 -DMODEST_INSTALL_HEADER=ON

Build with your program

I advise to build using clang, but decided to show examples of gcc

for example

build with shared library

gcc -Wall -Werror -O2 -lmodest your_program.c -o your_program

build with static library

gcc -Wall -Werror -O2 your_program.c /path/to/libmodest_static.a -o your_program

Dependencies

None

In other languages, external bindings

Send pull request if you create any bindings

Examples

See examples directory

AUTHOR

Alexander Borisov lex.borisov@gmail.com

Copyright (C) 2015-2016 Alexander Borisov

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

See the LICENSE file.