Skip to content

Commit

Permalink
Change description
Browse files Browse the repository at this point in the history
  • Loading branch information
lexborisov committed Mar 19, 2017
1 parent 5f5e571 commit 5bf64d3
Show file tree
Hide file tree
Showing 7 changed files with 57 additions and 12 deletions.
24 changes: 22 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,28 @@
0.0.6
===========
* Completely redesigned engine. Now base module for all it is MyCORE
* Now Modest engine split by modules: mycore, modest, mycss, myencoding, myfont, myhtml, myport, myunicode, myurl
Now Modest engine split by modules:

* MyCORE — base module, it is used by all other modules
* MyHTML — HTML parser by [specification](https://html.spec.whatwg.org/multipage/)
* MyCSS —  CSS parserand modules by [specification](https://drafts.csswg.org/)
* MyENCODING — work with character encodings, detecting encoding, convert encodings by [specification](https://encoding.spec.whatwg.org/)
* MyFONT — work with font, metrics, calculating size and more by [specification](https://www.microsoft.com/en-us/Typography/SpecificationsOverview.aspx)
* MyURL — URL parser by [specification](https://url.spec.whatwg.org/)
* MyUNICODE — normalization, change character register and more (in dev)
* MyPORT — system depended code: threads (if build with threads, default), work with memory, io, timers
* Modest — renderer

Each of the modules can build without other modules if he not dependent at it. It is good for those need only URL parse and not need other modules.
MyHTML split to MyHTML and MyCORE. MyCORE is a base module which include shared functions for all others modules.

* Removed all io print functions to file: ```myhtml_tree_print_by_node```, ```myhtml_tree_print_node_children```, ```myhtml_tree_print_node```; Use serializations instead of their
* If you use encoding enum, like ```MyHTML_ENCODING_UTF8```, now it ```MyENCODING_UTF_8```, i.e ```MyHTML_ENCODING_* => MyENCODING_*```
* Functions migrated to MyCORE from MyHTML: ```myhtml_incoming_buffer_*``` => ```mycore_incoming_buffer_*```, ```myhtml_string*``` => ```mycore_string*```, ```myhtml_utils*``` => ```mycore_utils*```
* Fully refactoring build system with GNU Make (Makefile), now it expects generally accepted parameters and rules, like ```test```, ```install```, ```clean```, ```library``` and other
* Tested create a DLL library for Windows OS
* Support [create ports](https://github.com/lexborisov/Modest/wiki/Add-new-port) for different OS or for simple change work with memory, io, threads (if build with threads, default)
* Support [add self modules](https://github.com/lexborisov/Modest/wiki/Add-new-module) for build library
* Now all return statuses, like a ```myhtml_status_t```, ```mycss_status_t``` changed to global mystatus_t (unsigned int)

0.0.5
===========
Expand Down
7 changes: 6 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,11 @@ MODEST_UTILS_HDRS_CLONE_GDIR = $(foreach dir,$2,$(INCLUDE_DIR_API)/$1/$(dir)/)
MODEST_UTILS_HDRS_CLONE_DIRS = $(foreach dir,$(strip $(patsubst %./,%,$(foreach path,$(call MODEST_UTILS_HDRS_CLONE_GDIR,$1,$2),$(dir $(path))))),mkdir -p $(dir) $(MODEST_UTILS_NEW_LINE))
MODEST_UTILS_HDRS_CLONE = $(info Clone for $1) $(call MODEST_UTILS_HDRS_CLONE_DIRS,$1,$2) $(MODEST_UTILS_NEW_LINE) $(call MODEST_UTILS_HDRS_CLONE_CMND,$1,$2)

#********************
# MyPORT
#***************
MyPORT_SELECTED_PORT = myport/$(strip $(MODEST_PORT_NAME))

#********************
# Include all modules Makefile.mk
#***************
Expand All @@ -76,7 +81,7 @@ include $(MODEST_BUILD_MODULES_MAKEFILES_LIST)
#***************
MODEST_CFLAGS += -DMODEST_BUILD_OS=$(MODEST_BUILD_OS)
MODEST_CFLAGS += -DMODEST_PORT_NAME=$(MODEST_PORT_NAME)
MODEST_CFLAGS += $(call MODEST_UTILS_TO_UPCASE,-DMyCORE_OS_$(MODEST_BUILD_OS))
MODEST_CFLAGS += $(patsubst -DMY%,-DMy%,$(call MODEST_UTILS_TO_UPCASE,-DMyCORE_OS_$(MODEST_BUILD_OS)))

override CFLAGS += $(MODEST_CFLAGS)
override LDFLAGS += $(MODEST_LDFLAGS)
Expand Down
9 changes: 7 additions & 2 deletions Makefile.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -115,8 +115,13 @@ MODEST_UTILS_TO_UPCASE = $(subst a,A,$(subst b,B,$(subst c,C,$(subst d,D,$(subst
# Load platform specific rules for build
# We try to include all Rules.mk file in /source/myport/*/Rules.mk
#*******************
MYPORT_BUILD_RULES := $(foreach path,$(wildcard $(MODEST_SOURCE)/myport/*/),$(dir $(path))Rules.mk)
-include $(MYPORT_BUILD_RULES)
ifndef MODEST_PORT_NAME
MYPORT_BUILD_RULES := $(foreach path,$(wildcard $(MODEST_SOURCE)/myport/*/),$(dir $(path))Rules.mk)
-include $(MYPORT_BUILD_RULES)
else
MYPORT_BUILD_RULES := $(MODEST_SOURCE)/myport/$(MODEST_PORT_NAME)/Rules.mk
-include $(MYPORT_BUILD_RULES)
endif # def MODEST_PORT_NAME

#*******************************
# POSIX
Expand Down
13 changes: 12 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,17 @@ Modest is a fast HTML renderer implemented as a pure C99 library with no outside
The current version is 0.0.6 - devel
```

## Features

* MyCORE — base module, it is used by all other modules
* MyHTML — HTML parser by [specification](https://html.spec.whatwg.org/multipage/)
* MyCSS —  CSS parserand modules by [specification](https://drafts.csswg.org/)
* MyENCODING — work with character encodings, detecting encoding, convert encodings by [specification](https://encoding.spec.whatwg.org/)
* MyFONT — work with font, metrics, calculating size and more by [specification](https://www.microsoft.com/en-us/Typography/SpecificationsOverview.aspx)
* MyURL — URL parser by [specification](https://url.spec.whatwg.org/)
* MyPORT — system depended code: threads (if build with threads, default), work with memory, io, timers
* Modest — renderer

## Introduction

[Introduction](https://lexborisov.github.io/Modest/)
Expand All @@ -41,7 +52,7 @@ Alexander Borisov <lex.borisov@gmail.com>

## COPYRIGHT AND LICENSE

Copyright (C) 2015-2016 Alexander Borisov
Copyright (C) 2015-2017 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.

Expand Down
8 changes: 8 additions & 0 deletions api_breaking_changes.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
0.0.5 => 0.0.6
===========
* MyHTML split to MyHTML and MyCORE
* Removed all io print functions to file: ```myhtml_tree_print_by_node```, ```myhtml_tree_print_node_children```, ```myhtml_tree_print_node```; Use serializations instead of their
* If you use encoding enum, like ```MyHTML_ENCODING_UTF8```, now it ```MyENCODING_UTF_8```, i.e ```MyHTML_ENCODING_* => MyENCODING_*```
* Functions migrated to MyCORE from MyHTML: ```myhtml_incoming_buffer_*``` => ```mycore_incoming_buffer_*```, ```myhtml_string*``` => ```mycore_string*```, ```myhtml_utils*``` => ```mycore_utils*```


0.0.1 => 0.0.4
===========
Removed all depending on the Tree. Now you can get a tree of nodes ```myhtml_node_tree```
Expand Down
4 changes: 1 addition & 3 deletions source/myport/posix/Makefile.mk
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
myport_selected_port := myport/$(strip $(MODEST_PORT_NAME))

myport_dirs := mycore/. mycore/utils
myport_objs := $(call MODEST_UTILS_OBJS,$(myport_selected_port),$(myport_dirs))
myport_objs := $(call MODEST_UTILS_OBJS,$(call MyPORT_SELECTED_PORT),$(myport_dirs))

myport_all: $(myport_objs)

Expand Down
4 changes: 1 addition & 3 deletions source/myport/windows_nt/Makefile.mk
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
myport_selected_port := myport/$(strip $(MODEST_PORT_NAME))

myport_dirs := mycore/. mycore/utils
myport_objs := $(call MODEST_UTILS_OBJS,$(myport_selected_port),$(myport_dirs))
myport_objs := $(call MODEST_UTILS_OBJS,$(call MyPORT_SELECTED_PORT),$(myport_dirs))

myport_all: $(myport_objs)

Expand Down

0 comments on commit 5bf64d3

Please sign in to comment.