1 DESCRIPTION = "Rpm correctness checker"
2 HOMEPAGE = "http://rpmlint.zarb.org/"
3 SECTION = "System/Packages"
12 #PROVIDES by rpmlint-mini
13 PROVIDES += "rpmlint-mini"
14 RPROVIDES_rpmlint-mini += "rpmlint-mini"
17 #RDEPENDS of rpmlint-mini (${PN})
18 RDEPENDS_${PN} += "cpio"
22 #DEPENDS of rpmlint-mini
24 DEPENDS += "python-rpm"
28 DEPENDS += "libtool-cross"
29 DEPENDS += "python-magic"
34 unp ${S}/packaging/desktop-file-utils-0.20.tar.xz
36 chmod -Rf a+rX,u+w,g-w,o-w ${S}
38 cp ${S}/packaging/rpmlint-mini.manifest .
39 cd ../desktop-file-utils-0.20
51 CFLAGS="-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables" ; export CFLAGS ;
52 CXXFLAGS="${CXXFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CXXFLAGS ;
53 FFLAGS="${FFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -I%_fmoddir}" ; export FFLAGS ;
54 LD_AS_NEEDED=1; export LD_AS_NEEDED ;
56 cd ../desktop-file-utils-0.20
58 CFLAGS="${CFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CFLAGS ;
59 CXXFLAGS="${CXXFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CXXFLAGS ;
60 FFLAGS="${FFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -I%_fmoddir}" ; export FFLAGS ;
61 autotools_do_configure --build=${TARGET_SYS} --host=${HOST_SYS} \
62 --target=x86_64-tizen-linux \
69 --datadir=/usr/share \
70 --includedir=/usr/include \
72 --libexecdir=/usr/libexec \
73 --localstatedir=/var \
74 --sharedstatedir=/usr/com \
75 --mandir=/usr/share/man \
76 --infodir=/usr/share/info
78 make desktop-file-validate V=1 DESKTOP_FILE_UTILS_LIBS="/usr/lib/libglib-2.0.a -lpthread -lrt"
86 echo export RPM_BUILD_ROOT=${D}
93 cd ../desktop-file-utils-0.20
95 # test if the rpmlint works at all
97 /usr/bin/rpmlint rpmlint
98 test $? -gt 0 -a $? -lt 60 && exit 1
100 # okay, lets put it together
101 mkdir -p $RPM_BUILD_ROOT/opt/testing/share/rpmlint
102 install -m 755 -D src/desktop-file-validate $RPM_BUILD_ROOT/opt/testing/bin/desktop-file-validate
103 cp -a /usr/share/rpmlint/*.py $RPM_BUILD_ROOT/opt/testing/share/rpmlint
104 # install config files
105 install -d -m 755 $RPM_BUILD_ROOT/opt/testing/share/rpmlint/mini
106 for i in /etc/rpmlint/{licenses,rpmgroups,pie}.config; do
107 cp $i $RPM_BUILD_ROOT/opt/testing/share/rpmlint/mini
109 install -m 644 -D /usr/share/rpmlint/config $RPM_BUILD_ROOT/opt/testing/share/rpmlint/config
110 install -m 644 "${S}/packaging/rpmlint-mini.config" $RPM_BUILD_ROOT/opt/testing/share/rpmlint
112 install -m 755 -d $RPM_BUILD_ROOT/opt/testing/share/rpmlint/data
113 #install -m 644 /etc/polkit-default-privs.standard $RPM_BUILD_ROOT/opt/testing/share/rpmlint/data
114 install -m 644 -D /usr/include/python2.7/pyconfig.h $RPM_BUILD_ROOT/opt/testing/include/python2.7/pyconfig.h
116 cd /usr/lib/python2.7
117 for f in $(<${S}/packaging/rpmlint-deps.txt); do
119 find -path "*/$f" -exec install -D {} $RPM_BUILD_ROOT/opt/testing/lib/python2.7/{} \;
121 install -m 644 /usr/lib/python2.7/site-packages/magic.py $RPM_BUILD_ROOT/opt/testing/lib/python2.7/site-packages/magic.py
122 install -D /usr/bin/python $RPM_BUILD_ROOT/opt/testing/bin/python
123 cp -a /usr/lib/libmagic.so.* $RPM_BUILD_ROOT/opt/testing/lib
124 cp -a /usr/lib/libpython2.7.so.* $RPM_BUILD_ROOT/opt/testing/lib
125 cp -a /usr/bin/rpmlint $RPM_BUILD_ROOT/opt/testing/share/rpmlint/rpmlint.py
126 pushd $RPM_BUILD_ROOT/opt/testing/share/rpmlint
127 PYTHONOPTIMIZE=1 python /usr/lib/python2.7/py_compile.py *.py
130 pushd $RPM_BUILD_ROOT/opt/testing/lib/python2.7/site-packages/
131 PYTHONOPTIMIZE=1 python /usr/lib/python2.7/py_compile.py *.py
134 rm -rf $RPM_BUILD_ROOT/{usr,etc}
135 rm -f $RPM_BUILD_ROOT/opt/testing/bin/rpmlint
136 install -m 755 -D ${S}/packaging/rpmlint.wrapper $RPM_BUILD_ROOT/opt/testing/bin/rpmlint
138 cat << EOF > ${WORKDIR}/git/rpmlint-mini-requires
140 /usr/share/spec2yocto/macro/find-requires rpmlint-mini < file.list > requires.list
141 /usr/share/spec2yocto/macro/find-provides rpmlint-mini < file.list > provides.list
143 grep -F -v "\$i" requires.list > requires.list.new
144 mv requires.list.new requires.list
147 rm -f requires.list provides.list file.list
149 chmod +x ${WORKDIR}/git/rpmlint-mini-requires
150 # final run check to detect python dep changes
151 LD_LIBRARY_PATH=$RPM_BUILD_ROOT/opt/testing/lib
152 PYTHONPATH=$RPM_BUILD_ROOT/opt/testing/share/rpmlint
153 export PYTHONPATH LD_LIBRARY_PATH
154 $RPM_BUILD_ROOT/opt/testing/bin/python -tt -u -O $RPM_BUILD_ROOT/opt/testing/share/rpmlint/rpmlint.pyo --help || exit 1
162 PACKAGES += "rpmlint-mini"
164 rpmlint-mini_files = ""
165 rpmlint-mini_files += "rpmlint-mini.manifest"
166 rpmlint-mini_files += "/opt/testing"
168 FILES_${PN} = "${rpmlint-mini_files}"
170 PKG_rpmlint-mini= "rpmlint-mini"
172 require rpmlint-mini-extraconf.inc