Modified release scripts
authorTomas Mlcoch <tmlcoch@redhat.com>
Thu, 15 Mar 2012 13:03:42 +0000 (14:03 +0100)
committerTomas Mlcoch <tmlcoch@redhat.com>
Thu, 15 Mar 2012 13:03:42 +0000 (14:03 +0100)
CMakeLists.txt
README
doc/createrepo_c.8.gz
src/CMakeLists.txt
utils/gen_rst.py
utils/make_rpm.sh [new file with mode: 0755]
utils/make_tarball.sh [new file with mode: 0755]

index 69b19cf..b92b337 100644 (file)
@@ -53,4 +53,50 @@ IF (RPMIO_LIBRARY)
     SET(RPMDB_LIBRARY ${RPMIO_LIBRARY} ${RPMDB_LIBRARY})
 ENDIF (RPMIO_LIBRARY)
 
+
+# CPack stuff
+
+INCLUDE(InstallRequiredSystemLibraries)
+
+SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "C implementation of createrepo")
+SET(CPACK_PACKAGE_VENDOR "Fedora Project")
+SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
+SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
+SET(CPACK_RESOURCE_FILE_README "${CMAKE_CURRENT_SOURCE_DIR}/README")
+SET(CPACK_PACKAGE_VERSION_MAJOR "0")
+SET(CPACK_PACKAGE_VERSION_MINOR "1")
+SET(CPACK_PACKAGE_VERSION_PATCH "0")
+SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CMake ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}")
+SET(CPACK_STRIP_FILES "usr/bin/createrepo_c")
+SET(CPACK_SOURCE_STRIP_FILES "")
+SET(CPACK_PACKAGE_EXECUTABLES "createrepo_c" "createrepo_c")
+
+SET(CPACK_GENERATOR "TGZ")
+
+# Not useful now because cpack doesn't support generate SRPM packages
+#SET(CPACK_GENERATOR "TGZ;RPM")
+#SET(CPACK_RPM_PACKAGE_RELEASE "1")
+#SET(CPACK_RPM_PACKAGE_LICENSE "GPLv2")
+#SET(CPACK_RPM_PACKAGE_GROUP "System Environment/Base")
+#SET(CPACK_RPM_PACKAGE_REQUIRES "glib2 >= 2.26.0, file-libs, zlib, bzip2, rpm-libs >= 4.8.1, libxml2")
+
+INCLUDE(CPack)
+
+
+# Other files
+
+SET(CMAKE_INSTALL_PREFIX "/")
+
+INSTALL_FILES(/usr/share/doc/createrepo_c-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} FILES README COPYING COPYING.lib)
+
+
+# Gen manpage
+
+message("Gen manpage")
+execute_process(COMMAND bash gen_manpage.sh src/cmd_parser.c ../doc/ WORKING_DIRECTORY utils/)
+
+
+# Subdirs
+
 ADD_SUBDIRECTORY (src)
+ADD_SUBDIRECTORY (doc)
diff --git a/README b/README
index 665163b..ae9baf7 100644 (file)
--- a/README
+++ b/README
@@ -1,10 +1,4 @@
 C implementation of createrepo.
 This program generates a repodata dir and xml files for a repository of 
 rpm packages.
-
 run createrepo -h for usage syntax
-
-Compilation:
-------------
-$ cmake .
-$ make
\ No newline at end of file
index 0d5a121..e2a652d 100644 (file)
Binary files a/doc/createrepo_c.8.gz and b/doc/createrepo_c.8.gz differ
index 1524103..ece5e4c 100644 (file)
@@ -14,3 +14,5 @@ SET_TARGET_PROPERTIES(libcreaterepo_c PROPERTIES OUTPUT_NAME "libcreaterepo_c")
 
 ADD_EXECUTABLE(../createrepo_c createrepo_c.c cmd_parser.c)
 TARGET_LINK_LIBRARIES(../createrepo_c libcreaterepo_c ${GLIB2_LIBRARIES} ${GTHREAD2_LIBRARIES})
+
+INSTALL_PROGRAMS(/usr/bin/ FILES createrepo_c)
\ No newline at end of file
index ee710c6..aa2f9a7 100755 (executable)
@@ -62,7 +62,7 @@ def parse_arguments_from_c_file(filename):
 
     try:
         content = open(filename, "r").read()
-    except IOException:
+    except IOError:
         print "Error: Cannot open file %s" % filename
         return args
 
diff --git a/utils/make_rpm.sh b/utils/make_rpm.sh
new file mode 100755 (executable)
index 0000000..189cfe7
--- /dev/null
@@ -0,0 +1,63 @@
+#!/bin/bash
+
+RPMBUILD_DIR="${HOME}/rpmbuild/"
+
+if [ $# -ne "1" ]
+then
+    echo "Usage: `basename $0` <root_project_dir>"
+    exit 1
+fi
+
+PREFIX="$1/"
+
+MY_DIR=`dirname $0`
+MY_DIR="$MY_DIR/"
+
+
+if [ ! -d "$RPMBUILD_DIR" ]; then
+    echo "rpmbuild dir $RPMBUILD_DIR doesn't exist!"
+    echo "init rpmbuild dir with command: rpmdev-setuptree"
+    echo "(Hint: Package group @development-tools and package fedora-packager)"
+    exit 1
+fi
+
+echo "> Making tarball .."
+$MY_DIR/make_tarball.sh $PREFIX > /dev/null
+if [ ! $? == "0" ]; then
+    echo "Error while making tarball"
+    exit 1
+fi
+echo "Tarball done"
+
+echo "> Copying tarball and .spec file into the $RPMBUILD_DIR .."
+cp $PREFIX/createrepo_c-*.tar.bz2 $RPMBUILD_DIR/SPECS/
+if [ ! $? == "0" ]; then
+    echo "Error while: cp $PREFIX/createrepo_c-*.tar.bz2 $RPMBUILD_DIR/SPECS/"
+    exit 1
+fi
+
+cp $PREFIX/createrepo_c.spec $RPMBUILD_DIR/SOURCES/
+if [ ! $? == "0" ]; then
+    echo "Error while: cp $PREFIX/createrepo_c.spec $RPMBUILD_DIR/SOURCES/"
+    exit 1
+fi
+echo "Copying done"
+
+echo "> Starting rpmbuild .."
+rpmbuild -ba $RPMBUILD_DIR/SPECS/createrepo_c.spec
+if [ ! $? == "0" ]; then
+    echo "Error while: rpmbuild -ba $RPMBUILD_DIR/SPECS/createrepo_c.spec"
+    exit 1
+fi
+echo "rpmbuild done"
+
+echo "> Cleanup .."
+rpmbuild --clean $RPMBUILD_DIR/SPECS/createrepo_c.spec
+echo "Cleanup done"
+
+echo "> Moving rpms and srpm .."
+mv --verbose $RPMBUILD_DIR/SRPMS/createrepo_c-*.src.rpm $PREFIX/.
+mv --verbose $RPMBUILD_DIR/RPMS/*/createrepo_c-*.rpm $PREFIX/.
+echo "Moving done"
+
+echo "All done!"
diff --git a/utils/make_tarball.sh b/utils/make_tarball.sh
new file mode 100755 (executable)
index 0000000..f08e700
--- /dev/null
@@ -0,0 +1,47 @@
+#!/bin/bash
+
+NAME="createrepo_c"
+VER="0.1.0"
+
+if [ $# -ne "1" ]
+then
+    echo "Usage: `basename $0` <root_project_dir>"
+    exit 1
+fi
+
+PREFIX="$1/"
+DIRECTORY="./$NAME-$VER"
+
+echo "Using root projekt dir: $PREFIX"
+
+(
+    echo "cd $PREFIX"
+    cd $PREFIX
+
+    if [ -d "$DIRECTORY" ]; then
+        echo "Removing old tarball directory: $DIRECTORY"
+        rm -rf $DIRECTORY
+    fi
+
+    make clean
+
+    mkdir $DIRECTORY
+
+    cp --verbose CMakeLists.txt $DIRECTORY
+    cp --verbose AUTHORS $DIRECTORY
+    cp --verbose README $DIRECTORY
+    cp --verbose COPYING $DIRECTORY
+    cp --verbose COPYING.lib $DIRECTORY
+
+    cp --verbose --parents cmake/Modules/* $DIRECTORY
+
+    cp --verbose --parents doc/CMakeLists.txt $DIRECTORY
+    cp --verbose --parents doc/createrepo_c.8.gz $DIRECTORY
+
+    cp --verbose --parents src/CMakeLists.txt $DIRECTORY
+    cp --verbose --parents src/*.c $DIRECTORY
+    cp --verbose --parents src/*.h $DIRECTORY
+
+    tar -cvjf "$DIRECTORY.tar.bz2" "$DIRECTORY"
+)
+