Modify

Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#17877 closed defect (wontfix)

readline + lvm2: 'CPPFunction' undeclared

Reported by: Jenda Owned by: developers
Priority: normal Milestone:
Component: packages Version: Trunk
Keywords: Cc:

Description

Hello,
compilation of current git version 2388b5ac08fc362edea865ade45e5313e00c71bf with CONFIG_PACKAGE_lvm2=y fails.

make[5]: Entering directory '/home/jenda/tmp/openwrt/build_dir/target-mips_34kc_uClibc-0.9.33.2/LVM2.2.02.105/tools'
mips-openwrt-linux-uclibc-gcc -c -I. -I../include -DLVM_SHARED_PATH=\"/usr/sbin/lvm\" -DHAVE_CONFIG_H -DDM_IOCTLS -Wall -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn -Wformat-security -Wredundant-decls -Wpointer-arith -Wuninitialized -Wmissing-include-dirs -Wfloat-equal -Wstrict-prototypes -Wold-style-definition -Wmissing-format-attribute -Wjump-misses-init -Wclobbered -Wempty-body -Wignored-qualifiers -Wmissing-parameter-type -Wold-style-declaration -Woverride-init -Wtype-limits -Wsync-nand -Wlogical-op -Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -mips16 -minterlink-mips16 -I/home/jenda/tmp/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/include -I/home/jenda/tmp/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/include -I/home/jenda/tmp/openwrt/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/usr/include -I/home/jenda/tmp/openwrt/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/include -fpic -fPIE -DPIE lvm.c -o lvm.o
lvm.c: In function 'lvm_shell':
lvm.c:188:38: error: 'CPPFunction' undeclared (first use in this function)
  rl_attempted_completion_function = (CPPFunction *) _completion;

grep -r on CPPFunction reveals build_dir/target-mips_34kc_uClibc-0.9.33.2/readline-6.3/ipkg-install/usr/share/doc/readline/CHANGES reading

k.  The Function, CPFunction, CPPFunction, and VFunction typedefs have been
    replaced with a set of specific prototyped typedefs, though they are
    still in the readline header files for backwards compatibility.
The typedef is in build_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/gdb-linaro-7.6-2013.05/readline/rltypedefs.h, however I don't know how to correctly include it ("#include <readline/rltypedefs.h>" includes different one from staging_dir). Just pasting "typedef char **CPPFunction ();" into lvm.c seems to solve the problem :-)

I'm compiling for TP-Link TL-WDR3500. I can post .config and other info if that matters.

Attachments (1)

100-lvm_fix.patch (1.4 KB) - added by anonymous 3 years ago.

Download all attachments as: .zip

Change History (4)

comment:1 Changed 3 years ago by cyrus

  • Resolution set to wontfix
  • Status changed from new to closed

LVM2 is currently not in any maintained feed. Someone needs to step up and volunteer as maintainer. I suppose just updating it to the latest version would fix it.

Changed 3 years ago by anonymous

comment:2 Changed 3 years ago by anonymous

The above patch worked for me

comment:3 Changed 3 years ago by daniel@…

I added the lvm2 package including the patch to the packages feed and as I'm also using it will do my best to maintain the package.
https://github.com/openwrt/packages/commit/1a911c1fe5d663e612b9659a85770dbd7388b24d

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.