Daniel Scharrer
9b6502061a
Update copyright lines in files changed this year
13 years ago
Daniel Scharrer
1de0483405
Use C++11 alignof(type) if available
13 years ago
Daniel Scharrer
f5dd857634
Fix Doxygen references
13 years ago
Daniel Scharrer
1009417cc6
Silence style warnings
13 years ago
Daniel Scharrer
5a678b88f5
Add C++11 feature checks
13 years ago
Daniel Scharrer
ada1415927
Don't mix class and struct
13 years ago
Daniel Scharrer
aeefcd2880
cmake: Use pkgconfig values as hints in FindLMZA
13 years ago
Daniel Scharrer
8071f5135a
Improve input/output file error message
13 years ago
Daniel Scharrer
08f5036ec7
Cleanup loading functions
...
- Remove configure-time endianness check
(replaced by run-time check to be optimized out by the compiler)
- Move loading functions into the util namespace
- Only keep the setup header entries we actually need
13 years ago
Daniel Scharrer
9e4dc70333
man page: Only use --option=arg syntax if required
13 years ago
Daniel Scharrer
3b066e28aa
Improve wording in the man page
13 years ago
Daniel Scharrer
02c98718de
Remove unneeded <iostream> includes
...
In some implementations of the C++ standard library just including
<iostream> in a TU can add a runtime overhead to the program startup.
13 years ago
Daniel Scharrer
8c4ca231f5
README.md: Align the options table
13 years ago
Daniel Scharrer
8cd279941e
Cleanup static linking options
13 years ago
Daniel Scharrer
ac1f40344e
Fix debug build
13 years ago
Daniel Scharrer
9e14d05f76
Add large byte size units
13 years ago
Daniel Scharrer
29e409fd97
Skip encrypted chunks and print a warning
13 years ago
Daniel Scharrer
fbc214843d
Add a command-line option for the output directory
13 years ago
Daniel Scharrer
7c55c2ff7c
Fix C++11 build
13 years ago
Daniel Scharrer
09842bcd79
Improve file path conversions
...
Canonicalize paths and strip leading '..' segments so we don't write
anything outside the target directory.
13 years ago
Daniel Scharrer
b658e33b1b
Fix references in Doxygen documentation
13 years ago
Daniel Scharrer
ab0d0a89fa
Add more documentation to src/stream/checksum.hpp
13 years ago
Daniel Scharrer
2f8045127c
Add more documentation to src/stream/exefilter.hpp
13 years ago
Daniel Scharrer
c1a8afaef2
Add more documentation to src/stream/lzma.hpp
13 years ago
Daniel Scharrer
8761518b6f
Add more documentation to src/stream/slice.hpp
13 years ago
Daniel Scharrer
b7282978ea
Add more documentation to src/stream/block.hpp
13 years ago
Daniel Scharrer
6618f94a82
Avoid boost::shared_ptr
...
If possible, use std::unique_ptr instead (or std::auto_ptr for C++03)
13 years ago
Daniel Scharrer
176fbf0ac4
Add more documentation to src/stream/chunk.hpp
13 years ago
Daniel Scharrer
f6f8fe46e9
Fix extracting large installers with 32-bit builds
...
Or more precisely, installers with compressed chunks or output files
larger than std::streamsize.
13 years ago
Daniel Scharrer
41a61dc0fe
Add support for combining --version with -s and -q
13 years ago
Daniel Scharrer
a795d473db
Fix issues with Unicode filenames under Windows
...
Also, only open the main setup file once.
13 years ago
Daniel Scharrer
e29f09edde
Fix incorrect default for DATAROOTDIR in README.md
13 years ago
Daniel Scharrer
a8a228aac7
Improve SYNOPSYS in the man page
13 years ago
Daniel Scharrer
4d79aeee13
Add support for codepages without aliases in iconv
13 years ago
Daniel Scharrer
47a2b54f15
Allow --list to be combined with --test/--extract
...
Also, list the files on one line each if --list is combined with
--silent.
13 years ago
Daniel Scharrer
30cd67cca2
Improve options listing in the man page
...
- Separate alternative options with a comma.
- Only highlight the options, not their parameters.
13 years ago
Daniel Scharrer
e43155657c
Add support for overwriting argv0 with an env var
...
This is useful for wrapper scripts that want to hide the full path
to the program while only relying on POSIX scripting functionality.
(`exec -a` is a bashism)
13 years ago
Daniel Scharrer
cbea7f5a7a
README.md: fix spelling
13 years ago
Daniel Scharrer
4c7392bd6c
Remove redundant GNU/POSIX feature macros
13 years ago
Daniel Scharrer
3beaf72954
Fix Windows build (missing install paths)
13 years ago
Daniel Scharrer
44ba9605b0
Prevent sign change warning with gcc 4.3
13 years ago
Daniel Scharrer
6574198994
CMake: Allow for changing the bin install dir
...
Also, use the standard CMake option name for the man dir.
13 years ago
Daniel Scharrer
c350469aaf
Windows: buffer progress bar output, use dim white
...
... as the "default" color.
13 years ago
Daniel Scharrer
ebb2ec3ac8
Improve iconv error handling
...
- Change conversion errors to warnings
- Only print one warning if iconv_open() fails
- Add a fall-back converter
- Replace bad code sequences and try to resume on the next byte
13 years ago
Daniel Scharrer
869e6f8596
Fix conversion warnings in bswap_16()
13 years ago
Daniel Scharrer
5f6f07570b
Fix build on armv6j and with older glibc
...
- Be more careful about the distinction between CXX and linker flags.
- Define -D_GNU_SOURCE=1 for compatibility with older glibc versions.
13 years ago
Daniel Scharrer
7242478c1b
-static-* are linker flags, test them as such
...
Fixes ARM build where CMake passed -static-libgcc, but not
-static-libstdc++ to the linker, resulting in undefined references.
13 years ago
Daniel Scharrer
e3cb64c917
[style] Break up long line
13 years ago
Daniel Scharrer
88f2f463bc
Don't check for GCC flags with MSVC
...
It doesn't really hurt, but is a waste of time.
13 years ago
Daniel Scharrer
205d359346
Remove a few unneeded line breaks in version.cpp
13 years ago