always include new global symbols

In the case that a new global symbol is defined in a file but not used
by a changed function, the symbol will currently not be included.

However, since it is global, another file in the patch my reference it,
but it will not be there.

This commit includes new global symbols so that they may be referenced
by changes in other files within the same patch.

Signed-off-by: Seth Jennings <sjenning@redhat.com>
add test case for new globals inclusion

Signed-off-by: Seth Jennings <sjenning@redhat.com>
Merge pull request #396 from spartacus06/include-new-symbols

Include new symbols
print new functions

Fixes #397.
Merge pull request #399 from jpoimboe/print-new-functions

print new functions
Always show the $LOGFILE on build failure
Call die() instead of exit on SIGSEGV
Use proper _usr macro on Makefile sed
April 10th was a Thursday
Merge pull request #401 from cormander/rpm-spec

Some minor updates to rpm spec file
Merge pull request #400 from cormander/die-changes

Always echo the $LOGFILE on kpatch-build failure
Give objname on build error
Send all error output to STDERR
just put objname inside of error for ERROR
Merge pull request #404 from cormander/error-objname

Give objname on build error
add support for shadow variables

This adds support for shadow variables, which allow you to add new
"shadow" fields to existing data structures.

To allow patches to call the shadow functions in the core module, I had
to add a funky hack to use --warn-unresolved-symbols when linking, which
allows the patched vmlinux to link with the missing symbols.  I also
added greps to the log file to ensure that only unresolved symbols to
kpatch_shadow_* are allowed.  We can remove this hack once the core
module gets moved into the kernel tree.

Fixes #314.
Merge pull request #380 from jpoimboe/shadow-variables

add support for shadow variables
Store small shadow fields in-place

Signed-off-by: Seth Jennings <sjenning@redhat.com>
Merge pull request #407 from spartacus06/shadow-inplace

Store small shadow fields in-place
die on create-diff-object when all objects have processed

When working on large patches that are bound to have lots of
errors, it can be frustrating to have to re-run the build and wait
after every error you fix. With this patch, you get a chance to see
most (if not all) of the errors you'll be facing, at least across
the different object files.