aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile.in
AgeCommit message (Collapse)Author
2013-02-12Fix link() to work when chrootedpseudo-1.4.4PSEUDO_1_4_4Peter Seebach
The automatic path fixups invoked for names which end in the string "path" was still applying to link(), which then called linkat(), which would do the same path fixups; if you were chrooted, this would produce bogus paths. On systems which actually have linkat(), this would produce the even more mysterious behavior that the link would succeed, but the following stat would fail. Solution: Change the wrapfuncs prototypes for link() so it doesn't invoke automatic path name fixups.
2013-01-31Tag: 1.4.3.pseudo-1.4.3PSEUDO_1_4_3Peter Seebach
Fixed up the libdir stuff in a saner way, fixed the @GLIBC_2.7 thing, want to avoid any risk of someone having a stale archive.
2013-01-30Add sqlite-lib setting.pseudo-1.4.2PSEUDO_1_4_2Peter Seebach
There's a few circumstances where sqlite's libdir isn't the same as the directory name we want to use for libpseudo.so, so make it a separate setting. This may obviate the need for --with-static-sqlite. Signed-off-by: seebs <peter.seebach@windriver.com>
2012-12-13tag (and makefile.in) 1.4.2Peter Seebach
2012-11-02Makefile.in/configure: Use $(LIB), not hardcoded lib, for sqlitePeter Seebach
It turns out that the -L usage mostly doesn't matter (usually something else has requested the right directory, or it's the default), but the explicit path to libsqlite3.a hardcoded "lib", and on some systems it should be something else, such as "lib64". Solution: Use $(LIB) for that directory. Note that this may not resolve things if, say, you're doing MIPS n32 on a target where that lives in /usr/lib32, but I think in that case you'd be specifying $libdir, so it should still work out. Also added --with-static-sqlite=/path as an option in case people need to further outsmart this. Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
2012-08-02Remove the _plain thing, use PSEUDO_STATBUF everywhere.Peter Seebach
The _plain thing was added because of clashes between Linux ("struct stat64 for 64-bit file sizes") and Darwin ("struct stat is already 64 bits"). But it turns out not to be enough, because stat will *fail* if it cannot represent a file size, so when something like unlinkat() calls a non-64-bit stat in order to determine whether a file exists, it gets the wrong answer if the file is over 2GB in size. Solution: Continue using PSEUDO_STATBUF, and also provide defines for base_stat() which can be either real_stat() or real_stat64(), etcetera. This eliminates any reason to need the _plain functions. It also suggests that the other real___fxstatat() calls should someday go away because that is an ugly, ugly, implementation detail. As part of testing this, fix up some bitrot which affected Darwin (such as the continue outside of a loop, but inside an #ifdef; that was left over from the conversion of init_one_wrapper to a separate function).
2012-07-27Use .tar.bz2 tarballpseudo-1.4PSEUDO_1_4Peter Seebach
Instead of using .tgz, use .tar.bz2 (and change czf to cjf). This makes life easier for Yocto.
2012-07-20tag 1.4Peter Seebach
2012-07-20Don't try to learn all the architecture-specific flagsPeter Seebach
Pseudo should never have been the one picking -m32/-m64. That should be coming from the build system in some way. Deprecate --arch, add --cflags.
2012-06-281.3.1 tagPeter Seebach
Enough changes to justify a tag.
2012-04-10First pass at smarter handling of multilib compile optionsPeter Seebach
Long story short: ARM doesn't use -m32 and -m64, so make those a little more dependent. We'll probably rework this completely "soon" as we mess with more targets and x32 becomes an issue.
2012-03-27call this 1.3pseudo-1.3PSEUDO_1_3Peter Seebach
2012-03-27Allow static sqlitePeter Seebach
Some systems prefer to avoid messing with LD_LIBRARY_PATH as much, and instead link sqlite statically.
2012-03-27Configuration cleanup for OE-core:Peter Seebach
In OE-Core we need to be able to configure for both 32-bit and 64-bit libpseudo libraries. In order to avoid some complex manipulations, we adjust the configure and Makefile to facilitate this. Upstream-Status: Submitted Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-11-02Name this 1.2pseudo-1.2PSEUDO_1_2Peter Seebach
2011-06-061.1.1 releasePeter Seebach
2011-06-02Call this "version 1.1".Peter Seebach
2011-05-02Accept --libdirColin Walters
The way multilib works on at least Fedora is that --libdir=$prefix/lib64 is passed to configure. The source build system should not attempt to guess at architecture or take other configure flags (like --bits); instead it should default to whatever the given $(CC) does. This patch preserves the ability to specify --bits however.
2011-03-25Merge in ports workPeter Seebach
This is a spiffied-up rebase of a bunch of intermediate changes, presented as a whole because it is, surprisingly, less confusing that way. The basic idea is to separate the guts code into categories ranging from generic stuff that can be the same everywhere and specific variants. The big scary one is the Darwin support, which actually seems to run okay on 64-bit OS X 10.6. (No other variants were tested.) The other example given is support for the old clone() syscall on RHEL 4, which affects some wrlinux use cases. There's a few minor cleanup bits here, such as a function with inconsistent calling conventions, but nothing really exciting.
2011-02-01... and pseudodb needs -ldlpseudo-1.0PSEUDO_1_0Peter Seebach
2011-02-01Oh, sqlite needs -lpthread sometimesPeter Seebach
2011-02-01Fix linkage issues due to missing -ldlPeter Seebach
2010-12-16The maketables thing made it possible for some modules to get builtPeter Seebach
before pseudo_tables.h existed. Fixed.
2010-11-30Major shift: All the id_t types have been reworked so that theyPeter Seebach
are generated from text files and templates, making it now (we hope) impossible for the list of strings to get out of sync with the enum.
2010-11-18Messing with makewrappers: Move templating code out (for planned usePeter Seebach
in an incoming "maketables".)
2010-10-11Major change: Replace the shell-based makewrappers with a PythonPeter Seebach
one. There's a long story here, but to abbreviate it: The shell script was annoying at best to maintain and starting to show signs of not really being the right tool for the job. For various reasons, we have some other Python stuff in our build system, so we picked Python as the language we were already using for other stuff. We think this works with anything reasonably recent (around Python 2.4 through 2.6). There's a little bit of cleanup, also, of the wrapper templates.
2010-09-15In the WR Linux build system, we build host tools (including pseudo)Peter Seebach
in one place, but then often reuse them in other project directories. As a result, the --with-sqlite path is no longer the right path to use for RPATH later in the program's life. In the past, we were using chrpath to change the path to something more suitable, but this doesn't work if the new path is longer. Instead, allow an explicit --with-rpath setting which our build system can use. The logic is: * If you don't specify --with-sqlite or --with-rpath, you get no -Wl,-R * If you specify an empty path in --with-rpath, or --without-rpath, you get no -Wl,-R * If you specify --with-rpath with a non-empty path, you get -Wl,-R<path> * If you specify --with-sqlite, but not --with-rpath, you get -Wl,-R$(SQLITE)/lib
2010-09-02Add -Wl,-R$(SQLITE)/lib so we can find libsqlite3 if it wasn'tPeter Seebach
in the default location.
2010-08-12Fix for libpseudo.so when using $(SUFFIX), correct a note in guts/README.seebs
2010-08-11Enable local variable cacheMark Hatle
Add local variable cache via get_value and set_value. The local cache is setup at constructor time (or soon after). Rewrite the pseudo_setupenv and pseudo_dropenv routines, add a new pseudo_setupenvp and pseudo_dropenvp as well to handle the execve cases. We can now successfully use /usr/bin/env -i env and get pseudo values back!
2010-08-11Add convenience rules for building individual pseudo components.Mark Hatle
Add rules for 'pseudo', 'pseudodb', 'pseudolog' and 'libpseudo'.
2010-08-04Add new environment values to allow easy override of default locationsMark Hatle
Add PSEUDO_BINDIR, PSEUDO_LIBDIR, and PSEUDO_LOCALSTATEDIR to allow for more easy customization of PSEUDO components at run-time. If these are not set they will be automatically generated based on the existing PSEUDO_PREFIX path. PSEUDO_BINDIR = PSEUDO_PREFIX /bin PSEUDO_LIBDIR = PSEUDO_PREFIX /lib PSEUDO_LOCALSTATEDIR = PSEUDO_PREFIX /var/pseudo Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2010-08-04Allow CFLAGS to be set in the environment.Mark Hatle
CFLAGS is set by many autobuilder systems. In these environments we may need both the internal flags pseudo expects and the autobuilder flags. Adjust the Makefile accordingly. Based on code from Richard Purdie 2010-03-18 in Poky Linux. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2010-08-04Fix parallel buildsMark Hatle
Add a missing dependency from pseudo_wrapfuncs.h to wrappers. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2010-08-04Fix the MakefileMark Hatle
When generating binaries for the bin directory, they were not properly configured to generate the bin dir. Also sync up and generate the lib dir and localstatedir as well... Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2010-07-30Add basic test harness to test pseudoKonrad Scherer
CQ: WIND00225366 A simple test harness that runs all the scripts in the test directory. Each test script is run inside pseudo and uses exit status to report back whether the test was successful. The script uses the build executables, not the installed ones and each test run starts with an empty database.
2010-06-28Remove PSEUDO_SUFFIX from sourcePeter Seebach
The PSEUDO_SUFFIX thing is an installation quirk to allow our build system to tag libpseudo.so with a checksum of the host libc. However, we reuse a prebuilt pseudo server with the new pseudo libraries; this means that encoding the suffix in the environment hackery is a Bad Idea. Update version number to 0.3, since this seems to wrap up a hunk of development effort.
2010-04-27Fix -P in pseudolog.Peter Seebach
2010-04-26Add sanity checkPeter Seebach
It is possible for the database to get out of sync with the filesystem. Detecting this after the fact can be hard. Provide a hook for requesting a check. Also merge in some LD_LIBRARY_PATH fixes.
2010-04-05Shuffle some code around.Peter Seebach
Migrate the stable part of the wrapper code (not machine-generated) out of makewrappers, to make it easier to maintain.
2010-03-26Updates: Enable additional warnings, fix a number of things.Peter Seebach
None of them seem to have been genuine problems, but it's prettier now, and some were questionable.
2010-03-24Prep for chroot handling:Peter Seebach
* Improve makewrappers handling of function pointer arguments. * Regenerate wrappers when makewrappers is touched. * Move path resolution from pseudo_client_op into wrapper functions. * Eliminate dependency on PATH_MAX. * Related cleanup, such as tracking CWD better, and using the tracked value for getcwd().
2010-03-16initial public releasePeter Seebach