i3/libi3
hwangcc 42515308e7 Add a safe wrapper for write and fix some warnings
1. Add a function writeall and make swrite wrap that function. Use either writeall or swrite, depending on whether we want to exit on errors or not.
2. Fix warnings when compiling with a higher optimisation level.
(CFLAGS ?= -pipe -O3 -march=native -mtune=native -freorder-blocks-and-partition)

Signed-off-by: hwangcc <hwangcc@csie.nctu.edu.tw>
2015-03-29 10:22:34 +08:00
..
dpi.c Bugfix: validation segfault 2015-03-22 05:46:52 -04:00
fake_configure_notify.c format **/*.c with clang-format-3.5 2014-06-15 19:07:02 +02:00
font.c Merge pull request #1549 from shdown/y-offset-fix 2015-03-21 16:32:19 +01:00
get_colorpixel.c Implement support for chosing a 32 bit visual (necessary for pseudo-transparency) (Thanks darkraven) 2012-02-15 18:56:07 +00:00
get_exe_path.c format **/*.c with clang-format-3.5 2014-06-15 19:07:02 +02:00
get_mod_mask.c format **/*.c with clang-format-3.5 2014-06-15 19:07:02 +02:00
get_process_filename.c Improve error message when $XDG_RUNTIME_DIR is not writable 2013-09-25 19:33:28 +02:00
get_visualtype.c libi3: Introduce get_visualtype 2012-08-13 11:37:34 +02:00
ipc_connect.c format **/*.c with clang-format-3.5 2014-06-15 19:07:02 +02:00
ipc_recv_message.c Don't ELOG ipc EOF 2014-06-08 13:54:55 +02:00
ipc_send_message.c Add a safe wrapper for write and fix some warnings 2015-03-29 10:22:34 +08:00
is_debug_build.c Move is_debug_build() to libi3/ 2012-05-09 19:12:20 +02:00
libi3.mk Repect AR environment variable 2012-12-17 10:24:42 +01:00
Makefile Add stub Makefiles to allow subdir make calls 2012-07-22 19:57:48 +02:00
README Introduce libi3, an *internal* library to eliminate code duplication 2011-10-02 16:11:30 +01:00
root_atom_contents.c format **/*.c with clang-format-3.5 2014-06-15 19:07:02 +02:00
safewrappers.c Add a safe wrapper for write and fix some warnings 2015-03-29 10:22:34 +08:00
string.c i3bar: set markup per block 2015-03-24 02:27:38 -04:00
strndup.c normalize file headers across **/*.{h,c} 2011-10-25 21:19:38 +01:00
ucs2_conversion.c format **/*.c with clang-format-3.5 2014-06-15 19:07:02 +02:00

Introduction
============

libi3 is an *INTERNAL* library which contains functions that i3 and related
tools (i3-msg, i3-input, i3-nagbar, i3-config-wizard, i3bar) use.

It is NOT to be used by other programs.

Structure
=========

Every function gets its own .c file, which in turn gets compiled into an .o
object file. Afterwards, all .o files are archived into one static library
(libi3.a). This library will be linked into all i3 binaries. The linker is able
to eliminate unused .o files when linking, so only the functions which you
actually use will be included in the corresponding binary.