Comment 8 for bug 1752523

Revision history for this message
bugproxy (bugproxy) wrote : Comment bridged from LTC Bugzilla

------- Comment From <email address hidden> 2018-04-04 03:13 EDT-------
Hi Pavithra,

From Comment #11 and Comment #12, we see that the VERSION variable is getting the incorrect value...

... which is because one of the parent directories where I was building the backported lshw was a git repository (I didn't check that. I should have created a separate dir in home for the test build of lshw) and the build of lshw was pulling the "git describe" value of that existing dir.

I just built a new custom lshw from a dir which is not inside an existing git repo. and saw in the build that no value was getting pulled this time:

Applying patch Fix-unknown-version-issue.patch
patching file lshw-B.02.18/src/Makefile
Hunk #1 succeeded at 20 with fuzz 2.
patching file lshw-B.02.18/src/core/version.cc

Now at patch Fix-unknown-version-issue.patch
touch debian/stamp-patched
dh_testdir
# Add here commands to compile the package.
/usr/bin/make -C lshw-B.02.18/src core
make[1]: Entering directory '/home/ubuntu/chandni/lshw/lshw-02.18/lshw-B.02.18/src'
make -C core all
fatal: Not a git repository (or any of the parent directories): .git
make[2]: Entering directory '/home/ubuntu/chandni/lshw/lshw-02.18/lshw-B.02.18/src/core'
c++ -Wall -g -O2 -I./core/ -DPREFIX=\"/usr\" -DSBINDIR=\"/usr/bin\" -DMANDIR=\"/usr/share/man\" -DDATADIR=\"/usr/share\" -DVERSION=\"\" -c hw.cc -o hw.o
c++ -Wall -g -O2 -I./core/ -DPREFIX=\"/usr\" -DSBINDIR=\"/usr/bin\" -DMANDIR=\"/usr/share/man\" -DDATADIR=\"/usr/share\" -DVERSION=\"\" -c main.cc -o main.o
c++ -Wall -g -O2 -I./core/ -DPREFIX=\"/usr\" -DSBINDIR=\"/usr/bin\" -DMANDIR=\"/usr/share/man\" -DDATADIR=\"/usr/share\" -DVERSION=\"\" -c print.cc -o print.o
c++ -Wall -g -O2 -I./core/ -DPREFIX=\"/usr\" -DSBINDIR=\"/usr/bin\" -DMANDIR=\"/usr/share/man\" -DDATADIR=\"/usr/share\" -DVERSION=\"\" -c mem.cc -o mem.o
c++ -Wall -g -O2 -I./core/ -DPREFIX=\"/usr\" -DSBINDIR=\"/usr/bin\" -DMANDIR=\"/usr/share/man\" -DDATADIR=\"/usr/share\" -DVERSION=\"\" -c dmi.cc -o dmi.o
In file included from dmi.cc:78:0:

and on running this lshw, I see:

ubuntu@ubuntu:~/chandni/lshw$ lshw -version

ubuntu@ubuntu:~/chandni/lshw$ lshw -h
Hardware Lister (lshw) -
usage: lshw [-format] [-options ...]
lshw -version

-version print program version ()

format can be
-html output hardware tree as HTML
-xml output hardware tree as XML
-json output hardware tree as a JSON object
-short output hardware paths
-businfo output bus information

options can be
-class CLASS only show a certain class of hardware
-C CLASS same as '-class CLASS'
-c CLASS same as '-class CLASS'
-disable TEST disable a test (like pci, isapnp, cpuid, etc. )
-enable TEST enable a test (like pci, isapnp, cpuid, etc. )
-quiet don't display status
-sanitize sanitize output (remove sensitive information like serial numbers, etc.)
-numeric output numeric IDs (for PCI, USB, etc.)
-notime exclude volatile attributes (timestamps) from output

So actually this is not an error. Had we had run the lshw.deb build from an lshw directory, like the package maintainer would build, the correct "git describe" value will be pulled. But since I am not building from a lshw git repo, but from a debian source fetched from "apt-get source lshw" its not pulling the correct value.

Vasant, please confirm that this is fine and the patche as mentioned in Comment #10 is good to go!